ホストネットワークの設定( Ubuntu または Debian )
ホストへの Linux のインストールの完了後、このあとに導入する StorageGRID ノードにマッピングする一連のネットワークインターフェイスを準備するために、各ホストでいくつかの追加の設定が必要になることがあります。
-
を確認しておきます StorageGRID ネットワークのガイドライン。
-
についての情報を確認しておきます ノードコンテナの移行要件。
-
仮想ホストを使用している場合は、を参照してください MAC アドレスのクローニングに関する考慮事項と推奨事項 ホストネットワークを設定する前に、
VM をホストとして使用する場合は、仮想ネットワークアダプタとして VMXNET 3 を選択する必要があります。VMware E1000 ネットワークアダプタは、特定の Linux のディストリビューションで導入された StorageGRID コンテナで接続の問題が発生しました。 |
グリッドノードは、グリッドネットワークにアクセスできる必要があります。また、管理ネットワークとクライアントネットワークにアクセスすることもできます。このアクセスを確立するには、ホストの物理インターフェイスを各グリッドノードの仮想インターフェイスに関連付けるマッピングを作成します。ホストインターフェイスを作成するときにわかりやすい名前を使用すると、すべてのホストへの導入が簡単になり、移行も可能になります。
ホストと 1 つ以上のノードで、同じインターフェイスを共有できます。たとえば、ホストアクセス用とノード管理ネットワークアクセス用のインターフェイスに同じものを使用すると、ホストとノードをメンテナンスしやすくなります。ホストと個々のノードで同じインターフェイスを共有できますが、 IP アドレスはすべて異なっている必要があります。IP アドレスはノード間やホストと任意のノード間で共有できません。
グリッドネットワークのインターフェイスについては、ホストのすべての StorageGRID ノードで同じホストネットワークインターフェイスを使用したり、ノードごとに異なるホストネットワークインターフェイスを使用したり、任意のインターフェイスを使用したりできます。ただし、通常は、単一のホストのグリッドネットワークと管理ネットワークの両方のインターフェイス、またはいずれかのノードのグリッドネットワークのインターフェイスと別のホストのクライアントネットワークのインターフェイスに同じホストネットワークインターフェイスを使用することはありません。
このタスクはさまざまな方法で実行できます。たとえば、仮想マシンをホストとする環境でホストごとに 1 つまたは 2 つの StorageGRID ノードを導入する場合は、ハイパーバイザーで正しい数のネットワークインターフェイスを作成し、 1 対 1 のマッピングを使用できます。本番環境用のベアメタルホストに複数のノードを導入する場合は、 Linux ネットワークスタックの VLAN と LACP のサポートを利用してフォールトトレランスと帯域幅の共有を実現できます。以降のセクションでは、これら両方の例について詳細なアプローチを紹介します。これらのいずれかを使用する必要はありません。それぞれのニーズに合わせてアプローチを選択できます。
ボンドデバイスやブリッジデバイスをコンテナネットワークインターフェイスとして直接使用しないでください。これにより、カーネル問題 が原因で発生するノードの起動が妨げられ、コンテナネームスペース内のボンドデバイスおよびブリッジデバイスで MACVLAN が使用される可能性があります。代わりに、 VLAN ペアや仮想イーサネット( veth )ペアなどの非ボンディングデバイスを使用してください。このデバイスをノード構成ファイルのネットワークインターフェイスとして指定してください。 |
MAC アドレスのクローニングに関する考慮事項と推奨事項
MAC アドレスのクローニングでは、コンテナでホストの MAC アドレスが使用され、ホストでは指定したアドレスまたはランダムに生成されたアドレスの MAC アドレスが使用されます。プロミスキャスモードのネットワーク設定を使用しないようにするには、 MAC アドレスのクローニングを使用します。
MAC クローニングのイネーブル化
環境によっては、管理ネットワーク、グリッドネットワーク、およびクライアントネットワークに専用の仮想 NIC を使用できるため、 MAC アドレスのクローニングによってセキュリティを強化できます。コンテナでホストの専用 NIC の MAC アドレスを使用すると、プロミスキャスモードのネットワーク設定を回避できます。
MAC アドレスクローニングは、仮想サーバ環境で使用するためのものであり、物理アプライアンスのすべての構成で正常に機能しない場合があります。 |
MAC クローニングのターゲットインターフェイスがビジー状態のためにノードを起動できない場合は、ノードを起動する前にリンクを「停止」に設定しなければならないことがあります。また、リンクが稼働しているときに仮想環境でネットワークインターフェイス上の MAC クローニングが実行されないことがあります。インターフェイスがビジーなためにノードで MAC アドレスの設定が失敗してノードが起動しなかった場合は、問題 を修正する前にリンクを「停止」に設定することがあります。 |
MAC アドレスクローニングは、デフォルトでは無効になっており、ノード設定キーで設定する必要があります。StorageGRID をインストールするときに有効にする必要があります。
ネットワークごとに 1 つのキーがあります。
-
'Admin_network_target_type_interface_clone_mac
-
'GRID_NETWORK_TARGET_TYPE_interface_clone_mac'
-
'client_network_target_type _interface_clone_mac
キーを「 true 」に設定すると、コンテナでホストの NIC の MAC アドレスが使用されます。さらに、ホストは指定されたコンテナネットワークの MAC アドレスを使用します。デフォルトでは ' コンテナアドレスはランダムに生成されたアドレスですが '_network_mac' ノード構成キーを使用して設定した場合は ' そのアドレスが代わりに使用されますホストとコンテナの MAC アドレスは常に異なります。
ハイパーバイザーでプロミスキャスモードも有効にせずに仮想ホストの MAC クローニングを有効にすると、ホストのインターフェイスを使用して原因 Linux ホストのネットワークが停止する可能性があります。 |
MAC クローン作成の使用例
MAC クローニングでは、次の 2 つのユースケースを検討します。
-
MAC クローン作成が無効:ノード構成ファイルの「 _CLOK_MAC 」キーが設定されていない場合、または「 false 」に設定されている場合、ホストはホスト NIC MAC を使用し、「 _network_mac' 」キーで MAC が指定されていないかぎりコンテナには StorageGRID によって生成された MAC があります。アドレスが '_network_mac' キーに設定されている場合 ' コンテナは '_network_mac' キーで指定されたアドレスを持ちますこのキーの設定では、プロミスキャスモードを使用する必要があります。
-
MAC クローン作成が有効:ノード構成ファイルの `_clone_mac' キーが「 true 」に設定されている場合、コンテナはホスト NIC MAC を使用し、ホストは `_network_mac' キーで MAC が指定されていない限り、 StorageGRID によって生成された MAC を使用します。アドレスが '_network_mac' キーに設定されている場合 ' ホストは生成されたアドレスではなく ' 指定されたアドレスを使用しますこのキーの設定では、プロミスキャスモードは使用しないでください。
MAC アドレスのクローニングを使用せずに、ハイパーバイザーによって割り当てられた MAC アドレス以外の MAC アドレスのデータをすべてのインターフェイスが送受信できるようにする場合は、次の手順を実行します。 仮想スイッチおよびポートグループレベルのセキュリティプロパティが、無差別モード、 MAC アドレスの変更、および Forged Transmits の Accept に設定されていることを確認します。仮想スイッチに設定された値は、ポートグループレベルの値によって上書きできるため、両方のレベルで設定が同じであることを確認してください。 |
MAC クローニングをイネーブルにするには、を参照してください ノード構成ファイルの作成手順。
MAC クローニングの例
MAC アドレスが 11 : 22 : 33 : 44 : 55 : 66 のホストでインターフェイス ens256 の MAC クローニングをイネーブルにし、ノード構成ファイルで次のキーを使用する例:
-
「 ADMIN_NETWORK_TARGET = ens256 」のように指定します
-
「 Admin_network_mac=B2:9C:02:C2:27:10 」
-
'Admin_network_target_type_interface_clone_mac=true
結果: ens256 のホスト MAC は b2 : 9C : 02 : c2 : 27 : 10 、管理ネットワーク MAC は 11 : 22 : 33 : 44 : 55 : 66 になります
例 1 :物理 NIC または仮想 NIC への 1 対 1 のマッピング
例 1 では、ホスト側の設定がほとんどまたはまったく必要ない単純な物理インターフェイスのマッピングについて説明します。
Linux オペレーティングシステムは、インストールまたはブート時、またはインターフェイスのホットアド時に ensXYZ インターフェイスを自動的に作成します。インターフェイスがブート後に自動的に起動するように設定されていることを確認する以外に必要な設定はありません。あとで設定プロセスでマッピングを正しく指定できるように、どの ensXYZ がどの StorageGRID ネットワーク(グリッド、管理、またはクライアント)に対応しているかを決定する必要があります。
この図は複数の StorageGRID ノードを示していますが、通常はこの構成をシングルノードの VM に使用します。
スイッチ 1 が物理スイッチの場合は、インターフェイス 10G110G 3 に接続されたポートをアクセスモードとして設定し、適切な VLAN に配置します。
例 2 : LACP ボンドを使用した VLAN の伝送
例 2 は、ネットワークインターフェイスのボンディングおよび使用している Linux ディストリビューションでの VLAN インターフェイスの作成に関する十分な知識があることを前提としています。
例 2 では、汎用の柔軟な VLAN ベースのスキームを使用して、使用可能なすべてのネットワーク帯域幅を単一のホスト上のすべてのノードで共有する方法について説明します。この例は、ベアメタルホストに特に該当します。
この例を理解するために、各データセンターにグリッドネットワーク、管理ネットワーク、クライアントネットワーク用に 3 つのサブネットがあるとします。サブネットは個別の VLAN ( 1001 、 1002 、 1003 )上にあり、 LACP ボンディングされたトランクポート( bond0 )でホストに提示されます。この場合、ボンドに bond0.1001 、 bond0.1002 、および bond0.1003 の 3 つの VLAN インターフェイスを設定します。
同じホスト上のノードネットワークに別々の VLAN とサブネットが必要な場合は、ボンドに VLAN インターフェイスを追加してホストにマッピングできます(図の bond0.1004 と表示)。
-
StorageGRID ネットワークの接続に使用するすべての物理ネットワークインターフェイスを単一の LACP ボンドとしてまとめます。
すべてのホストのボンドに同じ名前( bond0 など)を使用してください。
-
このボンドを関連する「物理デバイス」として使用する VLAN インターフェイスを作成します。これには、標準的な VLAN インターフェイス命名規則「 physicaldev-name.vlan ID 」を使用します。
手順 1 と 2 のそれぞれについて、ネットワークリンクの反対側の終端にあるエッジスイッチで適切な設定を行う必要があります。エッジスイッチのポートも LACP ポートチャネルに集約してトランクとして設定し、必要なすべての VLAN を許可する必要があります。
このホストごとのネットワーク構成スキームに使用できるサンプルのインターフェイス構成ファイルが提供されています。