自由気ままに書いちゃおう

好きなことをつらつらと・・・

【Azure】AzureLoadBalancer(内部)の負荷分散規則とインバウンドNAT規則について(続き)

前回からの続きです。

www.guri2o1667.work


今回は、負荷分散規則とインバウンドNAT規則を一緒に使ってみたいと思います。

■構成

以下の構成を想定しています。

f:id:guri2o1667:20210308143204p:plain


・サブネットにWEBサーバ(vm01,vm02)が存在する
・vm01のIPは10.2.1.4/24
・vm02のIPは10.2.1.5/24
・踏み台サーバ(vm03)のIPは10.2.1.6/24
・vm01,vm02は80番ポートで待ち受けている
・内部LBのフロントエンドIPは10.2.1.25/24のみ
・AzureLoadBalancer(内部)で負荷分散機能とインバウンドNAT機能を利用する
・負荷分散機能で、内部LBが8080番ポートで待ち受け、それをvm01,vm02に転送する。
・インバウンドNATで、内部LBが60021番ポートで待ち受け、vm01のSSHに転送する。
・インバウンドNATで、内部LBが60022番ポートで待ち受け、vm02のSSHに転送する。

■内部LBの設定(負荷分散機能)

前回の記事で記載しているため、詳細は割愛しますが、
負荷分散規則は以下の通りです。
バックエンドプールとして事前にvm01、vm02を登録しております。
f:id:guri2o1667:20210308143545p:plain

■内部LBの設定(インバウンドNAT機能)

今回は一例として、SSHポート転送みたいなことをしてみます。
冒頭で少し記載しておりますが、以下のような動きを想定しています。

【想定する動作】
踏み台サーバ(vm03)から、vm01,vm02にSSH接続をします。
ただし、踏み台サーバから各仮想マシンへの接続には内部LBを利用します。
そのため、内部LBのフロントエンドIPとポート番号の組み合わせによって、転送先にサーバを指定しています。

f:id:guri2o1667:20210308143912p:plain

■動作確認(負荷分散)

踏み台サーバから以下コマンドを実行しました。

f:id:guri2o1667:20210308144223p:plain


vm01への接続が続いていたため、vm01を停止してみました。
すると、vm01への接続がvm02に切り替わりました。

f:id:guri2o1667:20210308144151p:plain

■動作確認(インバウンドNAT)

踏み台サーバからvm01へのSSH通信を試してみます。
内部LBのフロントエンドIPを指定し、かつポート番号も60021を指定します。

f:id:guri2o1667:20210308144333p:plain


無事、vm01へ接続できました。
続いて、踏み台サーバからvm02へのSSH通信を試してみます。
内部LBのフロントエンドIPを指定し、かつポート番号も60022を指定します。

f:id:guri2o1667:20210308144433p:plain


今回はSSHで実施しましたが、RDP(3389番ポート)とか、色々と内部LBでNAT変換することも可能です。


以上です。