NTNX>日記

個人的な趣味による Nutanix Community Edition 日記。Japanese のみですみません。

Nutanix AHV での CVM 障害時のユーザ VM の様子を見る。(vDisk 編)

Nutanix CE / AHV で、ユーザ VM の vDisk は通常時はローカル CVM に iSCSI 接続されています。今回は、AHV でのローカル CVM 障害時に、iSCSI 接続が別の CVM に切り替わる様子を見てみます。

AHV 3ノードの Nutanix クラスタで 1台だけ CVM を停止して、ユーザ VM からの iSCSI 接続の様子を見てみます。 

今回の構成

クラスタは AHV 3ノード構成です。

f:id:gowatana:20181216152503p:plain

Nutanix クラスタに、ユーザ VM は 1台(vm01)だけで、
AHV(192.168.20.22)で起動されています。

f:id:gowatana:20181216151547p:plain

通常は AHV → ローカル CVM の iSCSI 接続

ユーザ VM が起動している AHV(192.168.20.22)に SSH して状況確認&操作をします。

AHV には CVM とユーザ VM 1台だけが起動しています。

CVM$ ssh root@192.168.20.22 virsh list
FIPS mode initialized
 Id    Name                           State
----------------------------------------------------
 2     NTNX-421ab4f5-A-CVM            running
 3     d30ac7f9-372e-4ef3-a3ab-1c90dc000f08 running

ユーザ VM はローカルの CVM である 192.168.5.254 に接続していて、iSCSI 接続は 3261 番ポートです。ちなみに 127.0.0.1:3261 は AHV ローカルで起動する iSCSI リダイレクタです。

CVM$ ssh root@192.168.20.22 netstat -na | grep 3261
FIPS mode initialized
tcp        0      0 127.0.0.1:3261          0.0.0.0:*               LISTEN
tcp        0      0 192.168.5.1:33490       192.168.5.254:3261      ESTABLISHED

CVM 障害発生

疑似障害として、CVM を停止してしまいます。CVM が停止したとしても、ユーザ VM はその AHV ホストで起動したままです。

今回は強制的に CVM を停止するので、この検証用にクラスタを作成しています。

CVM$ ssh root@192.168.20.22 virsh destroy NTNX-421ab4f5-A-CVM
FIPS mode initialized
Domain NTNX-421ab4f5-A-CVM destroyed
CVM$ ssh root@192.168.20.22 virsh list
FIPS mode initialized
 Id    Name                           State
----------------------------------------------------
 3     d30ac7f9-372e-4ef3-a3ab-1c90dc000f08 running

少し待つと、別の AHV ホストで起動する CVM に接続(ESTABLISHED)されます。ホストをまたぐので、AHV 外部のネットワークに接続するアドレス(今回の環境では 192.168.20.0/24)になっています。
また、別 CVM に行く前に AHV ローカルの iSCSI リダイレクタにいくので、127.0.0.1 への TIME_WAIT もあります。

CVM$ ssh root@192.168.20.22 netstat -na | grep 3261
FIPS mode initialized
tcp        0      0 127.0.0.1:3261          0.0.0.0:*               LISTEN
tcp        0      0 192.168.20.22:56454     192.168.20.33:3261      ESTABLISHED
tcp        0      1 192.168.5.1:33500       192.168.5.254:3261      SYN_SENT
tcp        0      0 127.0.0.1:3261          127.0.0.1:33374         TIME_WAIT
tcp        0    145 192.168.5.1:33490       192.168.5.254:3261      FIN_WAIT1

もう少し待つと、下記のように落ち着きます。

CVM$ ssh root@192.168.20.22 netstat -na | grep 3261
FIPS mode initialized
tcp        0      0 127.0.0.1:3261          0.0.0.0:*               LISTEN
tcp        0      0 192.168.20.22:56454     192.168.20.33:3261      ESTABLISHED

CVM 復旧後の、ローカル iSCSI 接続への戻り

CVM を復旧(起動)してみます。

CVM$ ssh root@192.168.20.22 virsh start NTNX-421ab4f5-A-CVM
FIPS mode initialized
Domain NTNX-421ab4f5-A-CVM started

CVM$ ssh root@192.168.20.22 virsh list
FIPS mode initialized
 Id    Name                           State
----------------------------------------------------
 3     d30ac7f9-372e-4ef3-a3ab-1c90dc000f08 running
 4     NTNX-421ab4f5-A-CVM            running
 

少し待つと、ローカル接続(192.168.5.254 宛)に戻ります。サービスが安定してからローカル接続に戻すので、CVM でサービス起動が完了してから 2分くらいは、別 CVM 接続のまま待ちます。

CVM$ ssh root@192.168.20.22 netstat -na | grep 3261
FIPS mode initialized
tcp        0      0 127.0.0.1:3261          0.0.0.0:*               LISTEN
tcp        0      0 192.168.20.22:56454     192.168.20.33:3261      ESTABLISHED
tcp        0      0 192.168.5.1:33786       192.168.5.254:3261      TIME_WAIT

もう少し待つと、下記のように落ち着きます。

CVM$ ssh root@192.168.20.22 netstat -na | grep 3261
FIPS mode initialized
tcp        0      0 127.0.0.1:3261          0.0.0.0:*               LISTEN
tcp        0      0 192.168.5.1:33792       192.168.5.254:3261      ESTABLISHED

つづく。