共用方式為


部署自訂Linux映像時布建錯誤

適用於:✔️ Linux VM

概觀

當您將一般化虛擬機 (VM) 映像上傳或擷取為專用 VM 映像時,會發生 布建逾時錯誤

當您將特製化 VM 映射上傳或擷取為一般化 VM 映射時,將會發生 布建逾時錯誤 和布建失敗。

若要部署自定義映像而不發生錯誤,您必須確定在上傳或擷取程式期間,映像的類型不會變更。

本文涵蓋一般化和特製化影像的可能組合、您將遇到的錯誤類型,以及如何修正錯誤。

注意

如需一般化和特製化影像的描述和比較,請參閱 一般化和特製化

這很重要

New! 試試 VM assist 來解決主要問題。 建議您執行 適用於 Windows 的 VM 協助適用於 Linux 的 VM 協助。 這些基於腳本的診斷工具能幫助你識別影響 Azure VM 訪客代理及整體虛擬機健康狀況的常見問題。

如果你在虛擬機上遇到效能問題,請先執行這些工具,再聯絡 Microsoft 支援。

上傳一般化和特製化影像的組合

  • 如果作業系統(OS)是使用一般化設定上傳的一般化 Linux 映像檔,則上傳並部署將會成功。
  • 如果 OS 是特製化的 Linux 映射,而且您使用特製化設定上傳它,上傳和部署將會成功。
  • 如果 OS 是上傳為特製化映射的一般化 Linux 映射,新的 VM 將無法繼續進行布建階段,並出現 布建逾時錯誤
  • 如果 OS 是 Linux 特製化且上傳為一般化映射,新的 VM 會以原始電腦名稱、使用者名稱和密碼執行,這會導致布建失敗錯誤。

下列矩陣顯示 Linux 通用及專用操作系統映像檔的可能上傳組合:

作業系統 上傳特製化影像 上傳一般化影像
一般化映像 VM 將無法繼續進行布建階段,並出現 布建逾時錯誤 上傳和部署將會成功。
專門圖像 上傳和部署將會成功。 VM 會以原始計算機名稱、使用者名稱和密碼執行,這會導致布建失敗錯誤。

上傳錯誤的解決方式

若要解決這些錯誤,請使用與OS相同的設定,從內部部署環境上傳原始 VHD(一般化或特製化)。 如果您將其上傳為一般化,請務必先執行 -deprovision 命令。

擷取通用與專門影像的組合

  • 如果 OS 是使用一般化設定擷取的一般化 Linux 映像,上傳和部署將會成功。
  • 如果 OS 是特製化的 Linux 映射,而且您使用特製化設定來擷取它,上傳和部署將會成功。
  • 如果 OS 是 Linux 系統且已一般化,但被擷取為特製化,您將會收到布建逾時錯誤,因為原始 VM 被標示為一般化而無法使用。
  • 如果 OS 是 Linux 特製化,但擷取為一般化,您將會收到布建失敗錯誤,因為新的 VM 會保留原始電腦名稱、使用者名稱和密碼。 此外,原始 VM 將會變成無法使用,因為它標示為特製化。

下列矩陣顯示Linux一般化和特製化OS映像的可能擷取組合:

作業系統 擷取專用圖像 擷取一般化映像
一般化映像 布建逾時錯誤,因為原始 VM 已被標示為一般化,因此無法使用。 上傳和部署將會成功。
專門圖像 上傳和部署將會成功。 布建失敗錯誤,因為新的 VM 會保留原始電腦名稱、使用者名稱和密碼。 此外,原始 VM 將會變成無法使用,因為它標示為特製化。

擷取錯誤的解決方案

若要解決這些錯誤,請從入口網站刪除目前的映像,然後 從目前的 VHD 中擷取該映射,其設定與 OS 的相同設定(一般化或特製化)。 如需詳細資訊,請參閱 如何擷取Linux VM映像以進行上傳準備

在上傳程式期間布建逾時錯誤

將 Linux 一般化 OS 上傳為特製化時,可能會導致布建逾時錯誤,導致 VM 在布建期間停滯。 此問題通常是因為一般化和特製化映像之間的組態基本差異所造成。 如需差異的詳細資訊,請參閱 一般化和特製化

以下是布建逾時錯誤的一些可能案例和說明:

案例 問題 原因 解決方法
持續性網路設定衝突 一般化映像的設計目的是要移除唯一標識符和特定組態,讓它們準備好進行新的部署。 將一般化映像上傳為特製化,可能會導致網路衝突,因為持續網路設定。 剩餘的網路設定或 DHCP 用戶端識別符會保留在映像中,這會導致系統在布建期間嘗試取得新的 IP 位址時停止回應。 上傳映像之前,請先確認並移除任何靜態網路組態或標識碼。
安全殼層 (SSH) 金鑰或密碼重設問題 一般化映像不會保留使用者特定的設定,例如 SSH 金鑰或密碼。 在布建期間,VM 可能會嘗試重設這些設定;不過,其不存在或設定錯誤可能會導致逾時。 如果沒有預先定義的 SSH 金鑰或密碼,布建服務就無法完成設定。 確定 VM 設定包含與 OS 狀態相容的 SSH 或密碼驗證方法。
遺漏 Cloud-Init 或 Waagent 組態 一般化映像需要在第一次開機期間佈建代理程式,例如 cloud-initwaagent 來設定 VM。 如果缺少這些設定或不相容,布建將會停滯不前。 特製化映像隨附預先設定的初始設定腳本,而一般化映像則取決於其設定的初始化工具。 在上傳之前,請先驗證 cloud-initwaagent 已在映射中正確設定。

詳細資訊

如需如何擷取Linux映像以準備上傳的詳細資訊,請參閱 如何擷取Linux映像以進行上傳準備

與我們連絡,以取得說明

如果您有疑問,可以詢問 Azure 社群支援。 您也可以向 Azure 意見反應社群提交產品意見反應。