NSX Advanced Load Balancer Controller は、NSX Advanced Load Balancer SE と情報を継続的に安全に交換します。同様に、クラスタの展開では、複数の NSX Advanced Load Balancer Controller が相互に安全に情報を交換し続けます。
SE は、ロード バランシングなどのデータ プレーン操作を実行し、関連情報を NSX Advanced Load Balancer Controller に報告します。この情報には、サーバの健全性、クライアント接続情報、および要求ログが含まれます。クラスタ展開では、複数のコントローラがログ処理と分析のワークロードを共有します。
また、NSX Advanced Load Balancer Controller は、構成を変更するなどのコマンドを SE に送信する場合もあります。通常の運用中、この管理トラフィックは、SE ごとに平均で数 Kb/秒になる場合があります。Controller が完全なクライアント ログを要求すると、通信の急増が発生する可能性があります。これは、サイズが数 GB になる可能性があります。
SE から Controller へのセッションの設定
NSX Advanced Load Balancer Controller と SE は、管理 IP アドレスを介して SSH ポート 22 を使用して通信します。新しい SE が展開され、ネットワークに接続されると、Controller に接続して安全な管理セッションを設定します(SE と Controller の管理 IP アドレスは、SE のメタ情報に含まれています)。
SE と Controller はキーを交換し、ポート 22 を介して暗号化された接続を確立します。接続が完全に確立されると、Controller は関連する構成を SE にプッシュします。Controller がこれらの接続を開始することはありません。これらは常に SE によって開始されます。
NSX Advanced Load Balancer Controller と NSX Advanced Load Balancer SE 間の RTT(往復時間)値は 70 ミリ秒未満にする必要があります。
信頼の確立
Controller クラスタの特定のインスタンスと、このクラスタによって作成された SE のセット内に信頼のドメインを作成します。
SSH ポート転送を使用した安全な転送による Controller 内のすべてのサービスを保護
内部ユーザー aviseuser および avictlruser とキー認証を使用して、トンネルを作成します。
ID のパブリック キーは、Controller および SE 内のこれらのユーザーに対して承認されたキーに保存されます。
キーは、HTTPS トンネルを介して署名付き REST API を使用して交換されます。
1:SE イメージの準備
Controller クラスタの自己署名ルート CA を生成します。これは、NSX Advanced Load Balancer Controller および SE のトラスト アンカーとして機能します。
クラスタ内の各 NSX Advanced Load Balancer Controller ノードは、ルート CA によって署名された一意のキー ペアによって識別されます。
SE イメージ キー ペアを生成して、必要に応じて SE の作成を自動化できるようにします。
Controller は、ルート CA 証明書と SE イメージ キー ペアを SE イメージにパッケージします。
2:イメージからの SE の作成
NSX Advanced Load Balancer Controller は、適切なクラウド インフラストラクチャ API を使用して SE を作成します。
3:SE の初期化
起動時に、SE は SSH トンネルを作成するための一意のキー ペアを生成します。SSH トンネルの作成には、内部 aviseuser ID が使用されます。
4:SE 認証情報の公開
8443
ポート上で、Controller への HTTPS セッションを確立します。NSX Advanced Load Balancer Controller が、ルート CA 証明書によって署名された証明書を提示することを確認します。REST API を使用して、SE 固有のパブリック キーを Controller に公開します。
API データの内容は、NSX Advanced Load Balancer Controller によって検証される SE イメージ認証情報によって署名されます。この手順は 1 回だけ実行されます。
NSX Advanced Load Balancer Controller は、この SE から aviseuser の認証済みキーに SE 固有のパブリック キーを保存します。
この時点以降、SE は SE 固有の認証情報を使用して SSH トンネルを確立できます。SE イメージ キーは、この SE からの
8443
の API 要求に対して許可されなくなります。
5:SSH トンネルの作成
セキュア チャネルは、クラスタ内の NSX Advanced Load Balancer Controller 間、および NSX Advanced Load Balancer Controller と SE 間の通信に使用される SSH 転送および SSH リバース トンネルです。
aviseuser と SE 固有のキー ペアを使用すると、ポート転送を使用する SSH トンネルが作成され、SE は NSX Advanced Load Balancer Controller と通信します。
Controller から SE への通信には、同じ SSH トンネルが逆方向に使用されます。
Controller はこれを使用してアップグレード スクリプトを実行します。これには、SSH キーベースの認証情報を持つ内部 aviseuser が使用されます。たとえば、1 つの SE の Controller では、次のようになります。
ssh -i /etc/ssh/id_se -p 5097 [email protected]
上記の例では、NSX Advanced Load Balancer Controller の 127.1.0.1:5097 が、SE の localhost:22 にマッピングされています。