今月は1日1回くらい、さまざまな ネステッド vSAN 6.7 U1 を構成してみています。
昨日はこちら。
ネステッド vSAN 6.7 U1 を楽しむ。2018-12-14
15日目は、2ノード vSAN を 2セット展開しています。
監視ホストを、疑似的に、vSAN から物理的に距離があるデータセンタに配置してみます。
- vSAN-Cluster-20181215 クラスタ: 2 ノード vSAN
- 監視ホストの vSAN Witness Appliance は、離れたデータセンタに配置
- 2ノード vSAN の Witness と、監視ホストの vSAN ネットワークは別セグメント。
- 監視ホストへのトラフィックは、ネットワーク遅延あり。
2ノード vSAN の ESXi ホストと、監視ホストを別ネットワークに配置しています。
- vCenter と vSAN の ESXi: 192.168.1.0/24 ネットワーク
- 監視ホスト: 192.168.10.0/24 ネットワーク
この2つのネットワークは、拠点間接続ルータ役の Linux VM で疑似的に構成しています。
拠点間接続ルータ役の Linux。
今回利用した Linux は、Oracle Linux 7.5 です。
ホスト名は、VM 名にあわせて「lab-gw-01」にしています。
[root@lab-gw-01 ~]# cat /etc/oracle-release
Oracle Linux Server release 7.5
vNIC を 2つ用意して、それぞれのセグメントの IP アドレスを付与しておきます。
vSAN ネットワーク側 vNIC のネットワーク設定。
[root@lab-gw-01 ~]# ip address show ens192
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:50:56:a0:d4:4a brd ff:ff:ff:ff:ff:ff
inet 192.168.1.25/24 brd 192.168.1.255 scope global noprefixroute ens192
valid_lft forever preferred_lft forever
inet6 2400:4070:1b32:6100:250:56ff:fea0:d44a/64 scope global mngtmpaddr dynamic
valid_lft 14381sec preferred_lft 14381sec
inet6 fe80::250:56ff:fea0:d44a/64 scope link
valid_lft forever preferred_lft forever
監視ホスト ネットワーク側 vNIC のネットワーク設定。
[root@lab-gw-01 ~]# ip address show ens224
3: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:50:56:a0:d3:9b brd ff:ff:ff:ff:ff:ff
inet 192.168.10.25/24 brd 192.168.10.255 scope global noprefixroute ens224
valid_lft forever preferred_lft forever
inet6 2400:4070:1b32:6100:250:56ff:fea0:d39b/64 scope global mngtmpaddr dynamic
valid_lft 14293sec preferred_lft 14293sec
inet6 fe80::250:56ff:fea0:d39b/64 scope link
valid_lft forever preferred_lft forever
簡易的なルータとして動作するように、
firewalld を停止して、net.ipv4.ip_forward を有効「1」にしておきます。
[root@lab-gw-01 ~]# systemctl stop firewalld
[root@lab-gw-01 ~]# systemctl disable firewalld
[root@lab-gw-01 ~]# sysctl -w net.ipv4.ip_forward=1
vCenter / ESXi と監視ホストとのネットワーク接続性。
vSAN クラスタの vCenter / ESXi と、監視ホストとで
デフォルト ゲートウェイ設定だけではネットワーク接続できない場合は、
スタティック ルートを設定する必要があります。
たとえば、ESXi では下記のように esxcli でルーティングを設定できます。
[root@esxi-01:~] esxcli network ip route ipv4 add --network 192.168.10.0/24 --gateway 192.168.1.25
[root@esxi-01:~] esxcli network ip route ipv4 list
Network Netmask Gateway Interface Source
------------ ------------- ------------ --------- ------
default 0.0.0.0 192.168.1.1 vmk0 MANUAL
192.168.1.0 255.255.255.0 0.0.0.0 vmk0 MANUAL
192.168.10.0 255.255.255.0 192.168.1.25 vmk0 MANUAL
また、vCenter Server Appliance では下記のように Appliance Shell(appliancesh)でルーティングを設定できます。
VMware vCenter Server Appliance 6.7.0.20000
Type: vCenter Server with an embedded Platform Services Controller
Last login: Sat Dec 15 13:19:46 2018 from 192.168.1.240
Connected to service
* List APIs: "help api list"
* List Plugins: "help pi list"
* Launch BASH: "shell"
Command> networking.routes.add --prefix 24 --interface nic0 --destination 192.168.10.0 --gateway 192.168.1.25
Command> networking.routes.list
Routes:
1:
Static: False
Destination: 0.0.0.0
Interface: nic0
Prefix: 0
Gateway: 192.168.1.1
2:
Static: False
Destination: 192.168.1.0
Interface: nic0
Prefix: 24
Gateway: 0.0.0.0
3:
Gateway: 192.168.1.25
Prefix: 24
Destination: 192.168.10.0
Interface: nic0
Static: True
疑似的なネットワーク遅延の構成。
まず、vSAN と監視ホストとの間でネットワーク遅延が特にない状態です。
lab-gw-01 のゲスト OS で、tc コマンドを利用してネットワーク遅延を発生させます。
設定変更まえの、Linux ルータでの vNIC の状態です。
まだネットワーク遅延(delay)をエミュレーションする設定はありません。
[root@lab-gw-01 ~]# tc qdisc show dev ens192
qdisc pfifo_fast 0: root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
vSAN の健全性チェックにある「サイト遅延の健全性」の閾値が 500ms なので、
あえて 550ms の遅延を発生させてみます。
[root@lab-gw-01 ~]# tc qdisc add dev ens192 root netem delay 550ms
[root@lab-gw-01 ~]# tc qdisc show dev ens192
qdisc netem 8001: root refcnt 2 limit 1000 delay 550.0ms
vSAN の ESXi から監視ホストへ ping を実行しておくと、
設定した瞬間に、遅延が発生したことがわかります。
ネットワーク遅延がある環境なので、健全性チェックでも「再テスト」で警告となりました。
遅延設定は、下記のようなコマンドラインで解除できます。
[root@lab-gw-01 ~]# tc qdisc del dev ens192 root
設定すると、ネットワーク遅延が解消されます。
このように、手軽にネットワーク遅延のテストができたりします。
ネスト環境で、物理マシン 1台でこのような検証をする場合は、
今回のように物理マシン内にルータ役の VM も置いたりすることがあります。
つづく。