前陣子在連 vSphere Web Client 時,注意到有個警告訊息,其中包含「Ldap backup task monitor」、「vCenter Database」的警告,在與廠商聯繫後,試著重啟 vCenter,沒想到就再也無法透過 vSphere Web Client 或 VMware vSphere Client 連進 vCenter 了。
查看 vCenter 的開機過程可以注意到有幾個服務啟動失敗,其中包含 database 及 vpxd 的 initialize,vpxd 的 initialize 更是要等個十分鐘才出現 failed。
開完機後,除了 vSphere Web Client 及 VMware vSphere Client 無法連線,VMware vCenter Server Appliance (https://ip:5480) 會出現無法登入(驗證失敗)的情形。另外若透過 SSH 連線,會要你更改密碼,但輸入完新密碼又出現無法寫入的訊息。
之後在廠商的指導下,確認是磁區被 log 塞爆,造成資料庫無法啟動,下方為解決過程。
◎從 Console 使用 root 登入,如果登入失敗,參考 這篇 重設 root 密碼,重點如下:
#在 VMware vCenter Server Appliance 按下 e,進入編輯模式。 #選擇第二項「kernel /vmlinuz-......」再按下 e,進入編輯模式。 #在「...usb audit=1」後面加上" init=/bin/bash",按下Enter。 #選擇第二項「kernel /vmlinuz-......」再按下 b,以此項目開機。 #輸入 passwd 以修改 root 密碼,完成後輸入 reboot 重開。
◎輸入 df -h,檢查各磁區的使用情形。以我來說 “/” 滿了。
◎輸入下列指令,檢查 audit 佔用情形。我的正常,如果過量,可參考 這篇 處理。
cd /var/log/audit ls -lh
◎輸入下列指令,檢查 log 佔用情形。可以看到 ./ldapmessage-20191205 佔用5.8G。
cd /var/log du -xah | sort -h | tail -n 50
◎參考 這篇 刪除檔案,並註解 /etc/hosts 的 IP6 設定,避免再次發生。
rm ./ldapmessage-20191205 vi /etc/hosts ----------------------- 127.0.0.1 <FQDN> <Hostname> #::1 <hostname> localhost ip6-localhost ip6-loopback -----------------------
◎完成後,reboot 即可恢復 vCenter 運作。
【參考連結】
- Unable to log in to the root account of vCenter Server Appliance 5.5 & 6.0 (2069041)
- The vCenter Server Appliance 5.5 fails to start with the console error: “waiting for the embedded database to start up failed” (2136833)
- vCenter Appliance root Partition 100% full due to Audit.log files not being rotated (2149278)
[…] 先前處理完「vCenter 資料庫無法啟動」的問題後,在「服務健全狀況」還有部份錯誤訊息,其中 Auto Deploy 會出現 “無法從 https://ip:6502/vmw/rbd/health-info 擷取健全狀況資料” 的警示訊息,這問題還蠻單純的,只是 vSphere Auto Deploy 這個服務沒有啟動,應該是因為先前空間爆滿問題,導致它無法啟動,現在問題解決了,只要將它 run 起來即可。 […]