TCP/IP は NDB Cluster 内のノード間のすべての接続のデフォルトのトランスポートメカニズムです。 通常、TCP/IP 接続を定義する必要はありません。NDB Cluster は、すべてのデータノード、管理ノード、および SQL または API ノードに対してこのような接続を自動的に設定します。
このルールの例外については、セクション23.3.3.11「直接接続を使用した NDB Cluster TCP/IP 接続」を参照してください。
デフォルトの接続パラメータをオーバーライドするには、config.ini
ファイルで 1 つ以上の [tcp]
セクションを使用して接続を定義する必要があります。
各[tcp]
セクションでは、2 つの NDB
Cluster ノード間の TCP/IP
接続を明示的に定義し、少なくともパラメータ
NodeId1
と
NodeId2
、およびオーバーライドする接続パラメータを含める必要があります。
これらのパラメータのデフォルト値を
[tcp default]
セクションに設定して変更することもできます。
config.ini
ファイル内の
[tcp]
セクションは、最後に
(ファイル内のほかのすべてのセクションのあとで)
指定するようにしてください。
ただし、[tcp default]
セクションについては、これは必須ではありません。
この要件は、NDB Cluster 管理サーバーが
config.ini
ファイルを読み取る方法に関する既知の問題です。
config.ini
ファイルの
[tcp]
および [tcp
default]
セクションに設定できる接続パラメータをここに示します。
-
バージョン (またはそれ以降) NDB 8.0.22 タイプまたは単位 boolean デフォルト false 範囲 true, false 追加 NDB 8.0.22 再起動タイプ N (NDB 8.0.13)
デフォルトでは、接続の試行中に管理ノードがホスト名の解決に失敗すると、致命的エラーが発生します。 この動作は、グローバル構成ファイル (通常は
config.ini
という名前) の[tcp default]
セクションでAllowUnresolvedHostNames
をtrue
に設定することでオーバーライドできます。この場合、ホスト名の解決の失敗は警告として扱われ、ndb_mgmd の起動は中断されずに続行されます。 -
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 boolean デフォルト false 範囲 true, false 再起動タイプ N (NDB 8.0.13)
このパラメータはブールパラメータです (
Y
または1
に設定すると有効になり、N
または0
に設定すると無効になります)。 デフォルトでは無効になっています。 有効にすると、送信バッファーに配置される前にすべてのメッセージのチェックサムが計算されます。 この機能によって、メッセージが送信バッファーでの待機中に (またはトランスポートメカニズムによって) 破損していないことが確認されます。 -
ndb_optimized_node_selection
が有効になっている場合、接続先のノードを選択するためにノードの近接性が使用されることがあります。 このパラメータは、「closer」 として解釈される下限値に設定することで、近接性に影響を与えるために使用できます。 詳細は、システム変数の説明を参照してください。 -
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 name or IP address デフォルト [...] 範囲 ... 再起動タイプ N (NDB 8.0.13)
HostName1
およびHostName2
パラメータを使用すると、2 つのノード間の特定の TCP 接続で使用する特定のネットワークインタフェースを指定できます。 これらのパラメータに使用する値は、ホスト名または IP アドレスです。 -
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 name or IP address デフォルト [...] 範囲 ... 再起動タイプ N (NDB 8.0.13)
HostName1
およびHostName2
パラメータを使用すると、2 つのノード間の特定の TCP 接続で使用する特定のネットワークインタフェースを指定できます。 これらのパラメータに使用する値は、ホスト名または IP アドレスです。 -
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 numeric デフォルト [none] 範囲 1 - 255 再起動タイプ N (NDB 8.0.13)
2 つのノード間の接続を識別するには、構成ファイルの
[tcp]
セクションにNodeId1
およびNodeId2
の値としてノード ID を指定する必要があります。 これらは、各ノードに対する一意のId
値であり、セクション23.3.3.7「NDB Cluster での SQL およびその他の API ノードの定義」で説明しているものと同じです。 -
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 numeric デフォルト [none] 範囲 1 - 255 再起動タイプ N (NDB 8.0.13)
2 つのノード間の接続を識別するには、構成ファイルの
[tcp]
セクションにNodeId1
およびNodeId2
の値としてノード ID を指定する必要があります。 これらは、各ノードに対する一意のId
値であり、セクション23.3.3.7「NDB Cluster での SQL およびその他の API ノードの定義」で説明しているものと同じです。 -
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 bytes デフォルト 0 範囲 0 - 4294967039 (0xFFFFFEFF) 再起動タイプ N (NDB 8.0.13)
送信バッファーにこれより多くの未送信バイトがあるときは、接続が過負荷状態であるとみなされます。
このパラメータを使用すると、接続を過負荷状態であるとみなす前に送信バッファーに存在する未送信データ量を決定できます。 詳細は、セクション23.3.3.14「NDB Cluster 送信バッファーパラメータの構成」を参照してください。
-
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 boolean デフォルト false 範囲 true, false 再起動タイプ このパラメータと
Checksum
の両方が有効になっている場合は、送信前チェックサムチェックを実行し、ノード間のすべての TCP シグナルでエラーをチェックします。Checksum
も有効になっていない場合は、何の効果もありません。 -
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 bytes デフォルト 2M 範囲 16K - 4294967039 (0xFFFFFEFF) 再起動タイプ N (NDB 8.0.13)
TCP/IP ソケットからデータを受信するときに使用するバッファーのサイズを指定します。
このパラメータのデフォルト値は 2M バイトです。 指定可能な最小値は 16K バイトです。理論的な最大は 4G バイトです。
-
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 unsigned デフォルト 2M 範囲 256K - 4294967039 (0xFFFFFEFF) 再起動タイプ N (NDB 8.0.13)
TCP トランスポータは、オペレーティングシステムに対する送信呼び出しを実行する前に、バッファーを使用してすべてのメッセージを格納します。 このバッファーが 64K バイトに達すると、その内容が送信されます。これは、一連のメッセージが実行されたときにも送信されます。 一時的な過負荷状態に対応するため、より大きな送信バッファーを定義することもできます。
このパラメータが明示的に設定されている場合は、メモリーが各トランスポータ専用でなくなります。代わりに、使用された値によって、(使用可能なメモリーの合計、つまり
TotalSendBufferMemory
のうち) 単一のトランスポータが使用できるメモリー量に関する厳密な制限が示されます。 NDB Cluster での動的トランスポータ送信バッファーメモリー割り当ての構成の詳細は、セクション23.3.3.14「NDB Cluster 送信バッファーパラメータの構成」 を参照してください。送信バッファーのデフォルトサイズは 2M バイトです。これは、ほとんどの状況で推奨されるサイズです。 最小サイズは 64K バイトです。理論的な最大は 4G バイトです。
-
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 boolean デフォルト false (debug builds: true) 範囲 true, false 再起動タイプ N (NDB 8.0.13)
配信されたメッセージデータグラムを再トレースできるようにするには、各メッセージを識別する必要があります。 このパラメータを
Y
に設定すると、メッセージ ID がネットワーク経由で転送されます。 この機能は、製品ビルドではデフォルトで無効になっており、-debug
ビルドで有効になります。 -
このパラメータを
TRUE
または1
に設定すると、IP_ADDR_ANY
がバインドされ、任意の場所から接続できるようになります (自動生成接続の場合)。 デフォルトはFALSE
(0
) です。 -
バージョン (またはそれ以降) NDB 8.0.20 タイプまたは単位 µsec デフォルト 0 範囲 0 - 2000 追加 NDB 8.0.20 再起動タイプ N (NDB 8.0.13)
TCP トランスポータのスピンを制御します。有効にしないで、ゼロ以外の値に設定します。 これは、接続のデータノード側と管理側または SQL ノード側の両方で機能します。
-
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 unsigned デフォルト 0 範囲 0 - 2G 再起動タイプ N (NDB 8.0.13)
TCP トランスポータの初期化時に設定されるメモリーのサイズを決定します。 ほとんどの一般的な使用ケースでは、デフォルトが推奨されます。
-
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 unsigned デフォルト 0 範囲 0 - 2G 再起動タイプ N (NDB 8.0.13)
TCP トランスポータの初期化時に設定される受信バッファーのサイズを指定します。 デフォルト値および最小値は 0 で、オペレーティングシステムまたはプラットフォームでこの値を設定できます。 ほとんどの一般的な使用ケースでは、デフォルトが推奨されます。
-
バージョン (またはそれ以降) NDB 8.0.13 タイプまたは単位 unsigned デフォルト 0 範囲 0 - 2G 再起動タイプ N (NDB 8.0.13)
TCP トランスポータの初期化時に設定される送信バッファーのサイズを指定します。 デフォルト値および最小値は 0 で、オペレーティングシステムまたはプラットフォームでこの値を設定できます。 ほとんどの一般的な使用ケースでは、デフォルトが推奨されます。
再起動のタイプ. このセクションのパラメータの説明で使用される再起動タイプに関する情報を次のテーブルに示します:
表 23.21 NDB Cluster の再起動タイプ
シンボル | 再起動タイプ | 説明 |
---|---|---|
N | ノード | パラメータはローリング再起動を使用して更新できます (セクション23.5.5「NDB Cluster のローリング再起動の実行」 を参照) |
S | システム | このパラメータの変更を有効にするには、すべてのクラスタノードを完全に停止してから再起動する必要があります |
I | Initial |
--initial
オプションを使用してデータノードを再起動する必要があります |