【ESXi6.5】 VMware Host Client および ssh接続でvmを複製する

vmOSが CentOS 7.6-1810 での例

ESXiは6.5

ESXiにsshログインする

cd /vmfs/volumes/datastore1
mkdir NEW_VM_NAME
cd NEW_VM_NAME
vmkfstools -i "/vmfs/volumes/datastore1/NAME_OF_VM_COPY_FROM/NAME_OF_VM_COPY_FROM_0.vmdk" -d thin "NEW_VM_NAME_0.vmdk"
cp ../NAME_OF_VM_COPY_FROM/NAME_OF_VM_COPY_FROM.vm* .
mv NAME_OF_VM_COPY_FROM.vmx NEW_VM_NAME.vmx
mv NAME_OF_VM_COPY_FROM.vmsd NEW_VM_NAME.vmsd
cp ../NAME_OF_VM_COPY_FROM/NAME_OF_VM_COPY_FROM.nvram NEW_VM_NAME.nvram
sed -i s/NAME_OF_VM_COPY_FROM/NEW_VM_NAME/g NEW_VM_NAME.vmx

データストアブラウザから新機材の.vmxファイルを右クリックし、仮想マシンの登録

ネットワークカードを削除し、また同一のものを作成する(macアドレスが”自動”になってれば不要)

vm起動時、コピーしたのか移動したのか聞かれるので、コピーと答える

vmを起動したら以下のコマンドでホスト名とipアドレスを変更する

vi /etc/hostname
vi /etc/sysconfig/network-scripts/ifcfg-ens192

以上

【iptables】 CentOS6でkeepalivedが両マスタ(スプリットブレイン)になってしまうのを解消する

CentOS6でkeepalivedを複数台にインストールして、起動して /var/log/messages を見てみたら、各サーバで Entering MASTER STATE になったまま、一向に Entering BACKUP STATE になる気配がない。
ip a コマンドを叩くと各サーバで仮想ipがバインドされてしまっている。

という問題の原因は、おそらく iptables の設定で、VRRPパケットが REJECT されてしまい、VRRPパケットがサーバ間で疏通してないからです。

iptables-save コマンドでiptablesの設定を確認し、 -A INPUT -p vrrp -j ACCEPT-A INPUT -j REJECT ...(--reject-with icmp-host-prohibited とか)より上に入っているようにします。
-A OUTPUT -p vrrp -j ACCEPT も必要です。

具体的には

iptables -D INPUT -j REJECT --reject-with icmp-host-prohibited
iptables -A INPUT -p vrrp -j ACCEPT
iptables -A OUTPUT -p vrrp -j ACCEPT
iptables -A INPUT -j REJECT --reject-with icmp-host-prohibited
iptables-save   (設定を表示して確認)

service iptables save   (設定をセーブ)

service iptables restart

という感じになるかと思います。

ちなみにVRRPはプロトコル番号112のIPプロトコルで、UDP(プロトコル番号17),TCP(プロトコル番号6),ICMP(プロトコル番号1) とは別のプロトコルですので、TCPやUDPなどは内部セグメントで全部通してるのになんで疏通しないのかな、と思いがちですね。