2019年12月11日水曜日

VMの強制停止(vim-cmd)

久しぶりに検証環境のloginsightをみたら、ディスクがいっぱいのアラートが発生してるじゃん!

ディスクを拡張しろよっ!ってメッセージが出ているのでVM停止しようにも、vsphere clientからもcliからも、シャットダウンも電源offも受け付けない状態に、、、

まぁ、検証環境で気を抜くとよくやってしまうんですよね。


ということで、esxiにログインしてvim-cliで強制停止します。



まずは、loginsightのvmidの確認。

[root@esx06:~] vim-cmd vmsvc/getallvms
Vmid        Name                                         File                                          Guest OS         Version                                                                                                          Annotation                                                                                                       
9      loginsight8      [vsanDatastore] c90ec45d-e494-fac1-cd8b-e4434b765fd4/loginsight8.vmx      other3xLinux64Guest   vmx-11    VMware vRealize Log Insight                                                                                                                                                                                             

該当のvmidは9なのを確認します。


ダメ元で通常のpower offをしてみるも、やっぱりダメでした。
まぁ、vsphere clientでダメでしたしね。
[root@esx06:~] vim-cmd vmsvc/power.off 9
Powering off VM:
Power off failed

[root@esx06:~] vim-cmd vmsvc/power.getstate 9
Retrieved runtime info
Powered on


もういいやってことと、おそらくできないだろうってことでdestroyもしてみましたが、
まぁだめですね。✳︎本番環境ではやらないでください。
[root@esx06:~] vim-cmd vmsvc/destroy 9
Destroy failed


ということで、esxiで該当プロセスを停止します。
まずは、該当プロセスの確認。
[root@esx06:~] esxcli vm prodccess list
loginsight8
   World ID: 2217787
   Process ID: 0
   VMX Cartel ID: 2217786
   UUID: 42 0f 3e 71 4c db c0 a8-f1 51 b2 87 e4 2d 49 86
   Display Name: loginsight8
   Config File: /vmfs/volumes/vsan:523fb3acb1d66ae8-2e6d54369e0422c5/c90ec45d-e494-fac1-cd8b-e4434b765fd4/loginsight8.vmx

World IDを確認して、killコマンドでプロセスをていしします。
[root@esx06:~] esxcli vm process kill --type=soft --world-id=2217787


プロセスが停止したのが確認できました。
[root@esx06:~] esxcli vm process list

仮想マシンも電源OFFになりました。
[root@esx06:~] vim-cmd vmsvc/power.getstate 9
Retrieved runtime info
Powered off



こんかいはkillコマンドのtypeがsoftで停止できましたが、softで停止で着ない場合は、hardやfoceのtypeを指定することもできます。

強さでいうと soft >hard>forceになるので、順番に試してみてください。