VxRail:升級失敗,錯誤訊息「主機 xxxxxxxx 上的 VxRail Platform Service 未安裝或未準備就緒」
摘要: 本文探討 Life-Cycle Manager (LCM) 升級失敗的症狀和原因,其中出現錯誤訊息,指出主機上 VxRail 平台服務未安裝或未準備就緒。
症狀
LCM 升級失敗,錯誤訊息「主機 xxxxxxxx 上的 VxRail Platform Service 未安裝或未準備就緒」
lcm-web.log:
2023-06-23 00:54:03,590 INFO [LCM] [lcm-node-0] c.v.c.c.v.PlatformServiceDOClient [PlatformServiceDOClient.java:224] Get DO platform service status for {NODE Service Tag}, try count is 60
2023-06-23 00:54:03,590 INFO [LCM] [lcm-node-0] c.d.v.l.d.p.r.d.HostDO [HostDO.java:240] Get platform status from configured host by sn via HostDO service
2023-06-23 00:54:04,250 INFO [LCM] [lcm-core-0] c.d.v.l.d.p.r.d.VxrailSystemDO [VxrailSystemDO.java:106] operation status info cache hit LcmNodeUpgrade-4d3137cb-3e9d-4b42-9a4e-b442ff3bde8b
2023-06-23 00:54:04,358 INFO [LCM] [lcm-node-0] c.d.v.l.d.p.r.d.HostDO [HostDO.java:251] Get platform status false
與 KB 不同的是 Dell VxRail:ESXi 主機上的升級失敗,出現錯誤「主機上的 VxRail Platform Service 未安裝/就緒」,當我們執行以下命令時, ServiceCacheReady 返回 “true”。
curl --capath /var/lib/vmware-marvin/trust/lin -u root https://<esxi-hostname>:9090/rest/ps/private/v1/status
{"ServiceCacheReady": true, "BMCConnected": true}
從 VxVerify 輸出來看,此節點沒有 iDRAC 或平台服務警示。
原因
有時,節點在升級期間重新開機後,iDRAC Service Module (ISM) 可能需要很長時間才能處於執行中狀態。
當客戶已將 DCISM 設為手動執行時,也可能發生此情況。
在節點連線至 vCenter 後,LCM 會嘗試檢查 ISM 和平台服務狀態。預設的最大嘗試次數計數為 60。這是每 10 秒一次。這可以在上面的lcm-web.log中看到。
如果服務啟動速度太慢,則可能會超時,並且無法檢測到服務已啟動。
解析度
若要解決此問題,請延長重試次數,並讓 LCM 等待稍長一點。
1.SSH 至 VxRail Manager 並編輯檔案 commons-application.properties)
vi /usr/lib/vmware-marvin/marvind/webapps/lcm/WEB-INF/classes/commons-application.properties
2.變更參數 lcmProperties.platformServiceClient.script.retry.times.get.status 從 60 增加到 150。
lcmProperties.platformServiceClient.script.retry.times.get.status=150
這可讓 LCM 及時偵測 ISM 是否正在執行中。
3.重新開機服務。
systemctl restart vmware-marvin systemctl restart runjars
4.驗證是否 sfcbd-watchdog 在每個節點上設定為自動執行 (使用主機啟動和停止) 或手動執行 (手動啟動和停止)。
chkconfig --list |grep sfcbd
如果輸出 「sfcbd-watchdog」 傳回「關閉」, 請在節點上啟用「使用主機開始和停止」。