关闭虚拟机提示“正在处理另一个任务”解决方法
一. 錯誤提示:ESXI關閉虛擬機時提示“正在處理另一個任務”,無法關閉
二. 出現情況:
虛擬機突然卡主,沒有任何反應,就準備重置虛擬機,結果當重置進行到95%的時候,也卡住了,整整30分鐘后提示操作超時,就打算關閉虛擬機,結果提示“正在處理另一個任務”,無法關閉,無奈,百度了一下,確實有個好方法,但是呢網上提供的方法還有點小錯誤,特此整理一下,分享給大家。
三. 解決方法:
前提是可以不用重啟ESXi Server,這樣影響范圍就小了。
補充
解決方案
警告: 請嚴格按照文章中的步驟操作。每一步操作對虛擬機都有一定的影響,所以請不要跳過其中任何一步!
用vSphere Client關閉虛擬機
用客戶端嘗試順利關閉虛擬機:
如果虛擬機使用客戶端不能正常關機,請選用以下任一種命令行模式。
安裝 vSphere Command-Line Interface 工具
vSphere Command-Line Interface (vCLI) 會在本文的某些步驟中用到,所以在使用前請確保你已經正確的安裝了它。
對于ESXi 3.5 主機, 請在 Remote Command-Line Interface Installation and Reference Guide中參考Remote CLI Installation and Execution 。
對于ESXi 4.0 主機, 請在 vSphere Command-Line Interface Installation and Reference Guide中參考vSphere CLI Installation, Execution, and Command Overviews 。
對于 ESXi 4.1主機,請參考 vSphere Command-Line Interface Installation and Scripting Guide。
對于ESXi 5.0 主機,請參考 vSphere Command-Line Interface Documentation。
注意: 對于ESXi 4.x 和 ESX 5.0主機,遠程命令行接口程序會通過vSphere Management Assistant (vMA) 訪問。 如果你偏愛這個工具,請在 vSphere Command-Line Interface Installation and Reference Guide中參考 Installing vMA and Running Commands from vMA 。
確認虛擬機的位置
請確認虛擬機是在哪個主機上運行。你可以通過vSphere Client中虛擬機的“摘要”選項卡來查看相關信息。隨后將在虛擬機所在的主機上運行相關命令來關閉虛擬機。
使用ESXi 5.0 主機的esxcli 命令來關閉虛擬機
esxcli 命令能夠在本地或遠程來關閉運行在ESXi 5.0主機上的虛擬機。要獲得更多信息,請參考 vSphere Command-Line Interface Reference中esxcli vm Commands 章節。
打開ESXi Shell、vSphere Management Assistant (vMA)或vSphere Command-Line Interface (vCLI) 客戶端,只要esxcli工具能夠運行即可。
esxcli vm process list
esxcli vm process kill --type=[soft,hard,force] --world-id=WorldNumber
注意: 有三種關閉虛擬機的方法,Soft 程度最低,hard 為立即執行,如果依然不能關閉,則可以使用force 模式。
使用 ESXi 命令行工具 vim-cmd 來關閉虛擬機
vim-cmd vmsvc/getallvms
vim-cmd vmsvc/power.getstate VMID
vim-cmd vmsvc/power.shutdown VMID
Note: 如果虛擬機還是不能關閉,請嘗試以下命令:
vim-cmd vmsvc/power.off VMID
在ESXi主機上發送信號來關閉虛擬機
虛擬機能夠在命令行模式下停止相關進程從而關閉。
警告:這個操作對ESXi 主機有潛在的危險。 如果你不能正確的辨別進程ID,而誤殺了其它進程,這極有可能引起不可預知的結果。如果你不能有把握的執行以下操作,請給VMware 技術支持部門發送支持請求,并在問題描述中說明本知識庫的文檔編號(1014165)。要獲取更多信息,請參考How to Submit a Support Request。
在 ESXi 3.5-5.0主機中, 你可以使用 kill 命令來中止一個虛擬機進程。
ps | grep vmx
輸出如下所示:
7662 7662 vmx /bin/vmx
7667 7662 vmx /bin/vmx
7668 7662 mks:VirtualMachineName /bin/vmx
7669 7662 vcpu-0:VirtualMachineName /bin/vmx
每一個vmx進程都會返回一行。 請仔細辨別目標虛擬機的vmx父進程。第一列為進程ID(PID),第二列即為父進程ID(parent's PID)。 請確保你只中止了父進程。 父進程ID (PID)在每一行的第二列, 在本例中都用粗體標識。請記住這個號碼,它將在下面的步驟中用到。
警告: 請確保你已經確認了要修復的虛擬機所在的行。如果你是對除了有問題的虛擬機以外的虛擬機進行這些操作,那么極有可能引起這些機器宕機。
kill ProcessID
kill -9 ProcessID
在ESXi 4.1-ESXi 5.0主機中,你可以使用 esxtop中的 k 命令來終止一個正在運行中的虛擬機進程。
esxtop
轉載于:https://blog.51cto.com/dhg666/2381116
總結
以上是生活随笔為你收集整理的关闭虚拟机提示“正在处理另一个任务”解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JDBC更新数据
- 下一篇: 深圳SEO外包公司×××,如何选择合适的