Vcenter版本:6.0
esxi版本:5.5
登錄工具:vsphere client 5.5
表現症狀:Vcenter直接登陸不上,用Client登陸的時候報錯,Ssh可以進去,但是用不了shell,也不能用命令shell.set --enabled true開啟shell
Vcenter的管理地址是ping通的,用Client登陸Vcenter所在的esxi主機也是可以的,Vcenter虛擬機是linux版本vcsa的,狀態看起來也正常。
嘗試登錄vc虛擬機所在esxi主機看到vc的狀態似乎是正常的,然后重啟vcenter,將近話了40分鍾,重啟極慢。最后起來以后還是一樣的問題,重啟解決不了問題。
ssh到vcenter上發現vmware-rbd-watchdog vmware-netdumper vmware-mbcs這幾個服務沒有啟動,而且手動啟動報錯。
故障原因:經過一些列的百度,最后定位故障原因就是日志文件過大,導致系統崩潰,關鍵服務沒有起來。
結局問題思路:想辦法進入shell,刪除過大的日志文件,擴充磁盤容量。
解決問題步驟:想辦法登錄GRUB界面,刪除超大日志文件,擴展日志盤容量。進grub界面可以詳細研究一下這個:https://kb.vmware.com/s/article/2069041
1.進入esxi主機管理界面,將vc虛擬機關機,右鍵編輯虛擬機設置,高級,開機延遲,將vc虛擬機開機延遲為10000毫秒,勾選開機強制進入bios設置,然后開機,進bios不進行任何操作,保存重啟,才能出來開機選項,用上下鍵快速選擇任意啟動項,不要回車,主要是為了保持窗口,不進入啟動。然后按p鍵,出來密碼輸入界面,輸入root密碼,進入到GRUB界面。
2.滾動到第二行以顯示內核參數,選擇kernel/vmlinuz-3.0.80-0.7這欄,按e鍵 編輯引導命令,將init=/bin/bash附加到核心引導選項。
3.按 Enter。將重新顯示 GRUB 菜單。
4.鍵入b啟動引導過程。系統引導到Shell。
5.輸入df -h發現確實是磁盤滿了。
6.通過find / -type f -size +100M命令,把大於100M的文件都找了出來,
7.發現大文件主要是audit.log這個文件,用cd /var/log/audit/ 導航到這個日志文件所在目錄,用ll顯示文件夾的文件,會發現audit.log這個文件特別大(此圖是已經調整后的,所以文件不大)
8.用rm -rf /var/log/audit/audit.log命令刪除,刪除后再次用df -h查看磁盤容量,會發現磁盤利用率明顯變小了。
注意:audit.log這個文件是可以再生的,刪除后系統開機就會再生,可以刪除。
9.然后將vc虛擬機關機,(可以直接esxi管理界面強制關機,也可以用命令shutdown -t secs 1 關機)調整虛擬機配置,磁盤配置,磁盤5是存放日志文件的,適當增大磁盤5的容量。
以下是vcsa6.0版本使用的11個VMDK,每個磁盤的用途,根據表格日志文件存在磁盤5,我們調整磁盤5的容量,擴大一些。
注意:如果運行reboot命令無法重新啟動設備,則運行以下命令:
mkfifo /dev/initctl
reboot -f
也可以直接在esxi主機管理界面強制關機或者用命令
mkfifo /dev/initctl
shutdown -t secs 1
10.確定后開機,開機速度正常,vc可以正常登錄,故障解決。
Shell也可以正常啟用
11.另外一種方案就是直接對vc的虛擬機磁盤5進行擴容,不刪除日志文件。
文章整合鏈接:
https://blog.csdn.net/zongzizz/article/details/108425714
https://blog.csdn.net/z136370204/article/details/104995333
https://www.jianshu.com/p/e2f1eccdf997
https://kb.vmware.com/s/article/2069041
感謝前輩的貢獻,幫我找到解決問題的方案,我也整合我的經驗在此分享給大家。