Azure Load Balancerでバックエンドプール内の特定のVMにアクセスさせたくない場合、これまではVMのNSGをいじるなどLoad Balancer外で制御する必要がありました。
Admin Stateを使うことで、Load Balancer側から簡単にアクセス制御をすることができるようになったため、この機能を実際に試してみます。
構成
Admin State
- Up,Down,Noneの3つの状態を指定できます。デフォルトはNoneです
- none:正常性プローブに従う
- Down:正常性プローブを無視して通信を拒否する
- Up:正常性プローブを無視して通信を許可する
プレビュー機能オプトイン
-
2024年6月時点ではプレビュー機能なのでオプトインします
down設定
-
down設定では 正常性プローブを無視してインスタンスへの接続を拒否 します
-
今回はバックエンドプールにVM3台を準備しました。一番右の列の[管理者の状態]に注目です
-
[なし]を選択すると、管理者状態を編集できる画面に遷移します。プルダウンで選択できるため、まずは[down]の挙動を試してみます
Up設定
-
次にUp設定を試してみます。Up設定では 正常性プローブを無視してインスタンスへの接続を許可 します
-
まずは、VM1がNone、VM2がNone、VM3がDownの状態から、VM2の正常性プローブを異常状態にしてみます
まとめ
- Admin Stateを用いることで、Load Balancer側から通信許可、拒否の制御をすることができました
Load Balancerだけで制御できるのはとても便利ですね
動作的には正常性プローブと同じ挙動を示すので、正常性プローブが失敗しているのか、Admin Stateが設定されているのかは見極める必要があるかなと思います