はじめに
VMware Cloud on AWS(VMC)では、SDDC バージョン 1.16 より NSX Manager の User Interface へのアクセスができるようになっています。
この NSX Manager UI から トレースフロー(Traceflow)という機能ができ、SDDC から、もしくは SDDC への通信のトラブルシューティングやネットワークトポロジーの確認が行えます。
今回は VMC から Traceflow を使ってみます。
目次
トレースフローとは
NSX-T には、仮想ネットワークの構築だけでなく、日々の運用を簡単にする様々な機能があります。その中の機能の一つとして、トレースフロー(Traceflow)があります。これを利用し、仮想ネットワーク上での疎通を確認することができます。
トレースフローを使用すると、ネットワークにパケットを挿入し、ネットワーク全体のフローを監視できます。このフローにより、ネットワークを監視し、ボトルネックや中断などの問題を特定できます。
トレースフローにより、パケットが宛先に到達するまでに経由する 1 つ以上のパスを特定できます。つまり、逆にパケットが途中でドロップされた場所を特定することができます。エンティティごとに入出力のパケット処理が報告されるため、パケットの受信時に問題が発生したのか、パケットの転送時に問題が発生したのかがわかります。
NSX Manager インターフェイスには、設定したパラメータ(IP アドレス タイプ、トラフィック タイプ、送信元、宛先)に基づいてトレース ルートが視覚的に表示されます。このページでは、パラメータの編集、トレースフローの再トレース、新規作成を行うこともできます。
From VMware NSX-T Data Center 製品のドキュメント
VMCでトレースフローが利用できるようになった
以前は VMC ではネットワーク関連の変更・操作は全て VMC コンソール(VMware クラウドサービスポータル / CSP)で行う形となっていましたが、2021年10月にリリースされた SDDC 1.16 より NSX Manager UI にもアクセスできるようになりました。
これに伴い、NSX Manager UI からトレースフローが利用できるようになりました!
(参考)VMware Cloud on AWS: What’s New in Oct 2021
トレースフローを利用してみる
では実際に VMC にてトレースフローを利用してみます。
まず VMC コンソールから OPEN NSX MANAGER をクリックします。
NSX Manager UI に遷移し、Overview の画面が表示されます。
ここで Plan & Troubleshoot タブをクリックします。
左側のペインから Traceflow をクリックするとトレースフローの画面が表示されます。
今回は VMC 上の Linux VM から Amazon FSx for NetApp ONTAP のファイルシステムを NFS マウントする際にネットワークタイムアウトになってしまった事を想定して、トレースフローを実施してみました。
Source については、Virtual Machine または Port/Interface をタイプとして選択でき、今回は Virtual Machineを選択しています。
VMC 上で稼働している VM の一覧から対象としたい VM がドロップダウンから選択できます。
仮想インターフェイスが複数ある場合は、対象のインターフェイスを指定します。
Destination については、Virtual Machine または Port/Interface、IP - Mac をタイプとして選択できます。今回は SDDC の外にある AWS サービスとの疎通を確認したいので、IP - Mac を選択しています。
IP - Mac を選択した場合、Layer 2 と Layer 3 から選択ができます。今回は Layer 3 を選択しています。
IP Address には FSx for NetApp ONTAP の NFS IP アドレスを指定しています。
Packet Information は今回はデフォルトで表示される ICMP を使用します。TCP、UDP なども指定可能で特定のポートに対する疎通を確認する事ができます。
まとめると、今回はこの設定でトレースフローを実施します。TRACE ボタンをクリックします。
そうすると以下のようにゲートウェイファイアウォールで Drop している事がわかります。
ゲートウェイファイアウォールにてルールを追加して RETRACE を実施すると、以下のようにトポロジが変わりました。
Linux VM -> CGW (Tier-1) -> Tier-0 -> Transit Gateway(今回の場合、VTGW) -> VPC という経路で疎通がされている事が簡単に確認できます。
同様に、例えば Google Public DNS への DNS クエリをトレースする場合は以下のようになります。
結果は以下の通りとなり、Linux VM -> CGW (Tier-1) -> Tier-0 -> Internet Gateway 経由で疎通がされている事が確認できます。
まとめ
NSX のトレースフローを使う事により簡単にトラブルシューティングの実施、ネットワークトポロジの確認ができます。
VMware Cloud on AWS でも NSX Manager UI にもアクセスできるようになり、トレースフローが利用できるようになっています!