為什麼 VMWare 會倒閉?如何從中恢復/預防?
我在帶有 Ubuntu Server 10.04 LTS 系統(核心)的雙核 Intel i5 上執行 VMWare Server 2.0.2(Build 203138
2.6.32-22-server #33-Ubuntu SMP
)。磁碟子系統是一個軟體 RAID5 陣列。該系統已經建立了一個多星期。在過去的 5 天裡,我一直在執行至少 3 個虛擬機(Linux 和各種 Windows 作業系統),沒有任何問題。但是當我將 Linux 安裝到一個新的虛擬機上時,突然間所有的虛擬機都沒有響應,包括我正在安裝的那個。我無法登錄到 VMWare 管理界面,並且系統通過 SSH 有點無響應。當我查看時
top
,我看到:top - 16:14:51 up 6 days, 1:49, 8 users, load average: 24.29, 24.33 17.54 Tasks: 203 total, 7 running, 195 sleeping, 0 stopped, 1 zombie Cpu(s): 0.2%us, 25.6%sy, 0.0%ni, 74.3%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 8056656k total, 5927580k used, 2129076k free, 20320k buffers Swap: 7811064k total, 240216k used, 7570848k free, 5045884k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 21549 root 39 19 0 0 0 Z 100 0.0 15:02.44 [vmware-vmx] <defunct> 2115 root 20 0 0 0 0 S 1 0.0 170:32.08 [vmware-rtc] 2231 root 21 1 1494m 126m 100m S 1 1.6 892:58.05 /usr/lib/vmware/bin/vmware-vmx -# product=2; 2280 jnet 20 0 19320 1164 800 R 0 0.0 30:04.55 top 12236 root 20 0 833m 41m 34m S 0 0.5 88:34.24 /usr/lib/vmware/bin/vmware-vmx -# product=2; 1 root 20 0 23704 1476 920 S 0 0.0 0:00.80 /sbin/init 2 root 20 0 0 0 0 S 0 0.0 0:00.01 [kthreadd] 3 root RT 0 0 0 0 S 0 0.0 0:00.00 [migration/0] 4 root 20 0 0 0 0 S 0 0.0 0:00.84 [ksoftirqd/0] 5 root RT 0 0 0 0 S 0 0.0 0:00.00 [watchdog/0] 6 root RT 0 0 0 0 S 0 0.0 0:00.00 [migration/1]
我正在安裝的虛擬機的 VMWare 程序變成了殭屍。然而,它仍然在其中一個核心上消耗 100% 的 CPU 時間,我無法訪問它或任何其他虛擬機。(我通過 SSH 登錄到一個虛擬機,另一個通過 X11 登錄,第三個通過 VNC 登錄。所有三個連接都斷開了)。當我執行
ps -ef
類似命令時,我發現已失效的vmware-vmx
程序將其父 PID 設置為init
(1)。我還使用lsof -p 21549
並發現已失效的程序沒有打開的文件。然而它正在使用 100% 的 CPU 時間……我無法殺死任何
vmware-vmx
程序,包括已失效的程序,即使使用kill -9
. 作為解決這種情況的最後手段,我嘗試重新啟動盒子,但是,即使給出了適當的設置,shutdown
所有這些都無法重新啟動/關閉halt
。在控制台上生成有關重新啟動的消息,但係統不會重新啟動。我不得不硬重啟盒子來解決這種情況。(請參閱我的另一個問題,在崩潰或核心崩潰後,我是否應該擔心我的 linux 軟體 RAID5 的完整性?)reboot``init 6``--force``Control``Alt``Del
什麼會導致這樣的場景?除了硬重啟,我還能做些什麼來解決它?我能做些什麼來防止將來發生這種情況?
不幸的是,我從來沒有找到解決這個問題的辦法。這似乎只是 VMware Server 固有的問題。
我們已經遷移到 VMWare ESXi。世界更好,沒有可比性!我從來沒有遇到過任何類似的 ESXi 問題。
查看此 VMWare 論壇文章,看看是否有幫助:http: //communities.vmware.com/message/531884#531884
如果您有 RAM,則禁用記憶體共享通常是一個好主意。
我在這裡編譯了一些用於 Ubuntu 上的 VMWare Server 2 的優化:http: //www.stress-free.co.nz/vmware_server_20_optimisations
我從未遇到過您描述的問題,我正在使用 Ubuntu Server 8.04LTS 和 10.04LTS(32 位和 64 位)執行生產伺服器。