共用方式為


針對常見的節點自動修復錯誤進行疑難解答

當 Azure Kubernetes Service (AKS) 偵測到狀態 NotReady 超過五分鐘的節點時,它會嘗試自動修復節點。 節點自動修復是最佳服務。 它不保證節點可以還原到狀況良好的狀態。 如需詳細資訊,請參閱 節點自動修復程式

在節點自動修復程序期間,AKS 會在 reboot狀況不良的節點上起始、 reimageredeploy 動作。 錯誤可能會因為各種原因而發生,而且會透過 Kubernetes 事件探索錯誤碼。 您可以使用 Kubernetes 事件來監視節點的狀態和自動修復動作。

本文提供常見節點自動修復錯誤的潛在原因和解決方案,並概述監視節點自動修復程式的最佳做法。

必要條件

檢查下列 Kubernetes 事件,以識別節點自動修復錯誤的類型:

原因 事件訊息 描述
NodeRebootError 節點自動修復重新啟動動作因作業失敗而失敗:[這裡的錯誤碼] 動作發生錯誤 reboot 時發出。
NodeReimageError 節點自動修復重新映像動作因作業失敗而失敗:[這裡的錯誤碼] 動作發生錯誤 reimage 時發出。
NodeRedeployError 節點自動修復重新部署動作因作業失敗而失敗:[此處的錯誤碼] 動作發生錯誤 redeploy 時發出。

注意

由於您的節點在自動修復程式之前已處於狀況不良狀態,因此在大部分情況下,節點自動修復錯誤不會影響您的叢集或應用程式。 當您遇到節點自動修復錯誤時,建議您遵循節點未就緒失敗基本疑難解答中的指示,嘗試修復節點。 如果您無法將它還原至Succeeded狀態,並看到節點自動修復所回報的持續性錯誤,請連絡 Azure 支援 以取得協助。

常見的錯誤碼

錯誤碼 原因和解決方案
VMExtensionProvisioningError VM 上無法布建一或多個虛擬機 (VM) 擴充功能。 如需可能錯誤類型和疑難解答步驟的詳細資訊,請參閱 疑難解答ERR_VHD_FILE_NOT_FOUND錯誤碼 (124) 。 若要判斷節點上的確切 VM 擴充功能佈建錯誤,請在 Azure 入口網站 中檢視錯誤詳細數據。
InvalidParameter 如果節點自動修復程式嘗試存取已不存在的節點,就會發生此錯誤。
scaleSetNameAndInstanceIDFromProviderID 失敗 當節點未正確布建時,就會發生此問題。
ManagedIdentityCredential 驗證失敗 當節點未正確初始化時,就會發生此問題。
VMRedeploymentFailed 當您嘗試重新部署節點時,就會發生此錯誤。 在此情況下,您的節點集區可能會進入失敗狀態。 如需潛在原因和疑難解答步驟的詳細資訊,請參閱 針對處於失敗狀態的 Azure Kubernetes Service 叢集或節點進行疑難解答。
TooManyVMRedeploymentRequests 當叢集超過 VM 重新部署要求的限制時,就會發生此錯誤。 Redeploy 是其中一個節點自動修復動作。 此錯誤表示 redeploy 動作無法修復您的節點。 若要針對節點未就緒問題進行疑難解答,請參閱 節點未就緒失敗的基本疑難解答。
OutboundConnectivityNotEnabledOnVMSS 當您的節點或整體虛擬機擴展集未啟用輸出存取權時,就會發生此錯誤。 若要解決此問題,請使用最適合您應用程式的方法,為您的擴展集啟用安全的輸出存取。 如需詳細資訊,請參閱 “OutboundConnectivityNotEnabledOnVM。未針對虛擬機設定輸出連線。」

監視節點自動修復的最佳做法

  • AKS 預設會儲存過去一小時內的 Kubernetes 事件。 建議您啟用 Container Insights ,讓您可以儲存最多 90 天的事件。 您也可以 查詢事件並設定警示 ,以快速偵測節點自動修復錯誤。

  • 節點自動修復是最佳服務。 它不保證您的節點可以還原至 Ready 狀態。 建議您主動監視並設定節點未就緒問題的警示,並自行針對這些問題進行疑難解答並加以解決。 如需詳細資訊,請參閱 節點未就緒問題的基本疑難解答。

與我們連絡,以取得說明

如果您有問題或需要相關協助,請建立支援要求,或詢問 Azure community 支援。 您也可以向 Azure 意見反應社群提交產品意見反應。