在客戶創建的客服案件中, HTTP://www.aliyun.com/zixun/aggregation/13357.html">Azure VM 意外重啟是一個常見的問題,客戶要求客服確定重新開機的原因。 希望下面的詳細說明能夠説明您瞭解 Azure VM 重新開機的原因。
Windows Azure 大約每 2-3 個月更新一次主機環境,以確保始終為平臺上運行的所有應用程式和虛擬機器提供安全的環境。 此更新過程可能會導致您的 VM 重新開機,造成使用虛擬機器功能託管的應用程式/服務停機。 沒有選項或配置可以避免這些主機更新。 除平臺更新外,當檢測到主機伺服器故障時,Windows Azure 服務會自動修復,在該伺服器上運行的 VM 會遷移到其他主機。 當發生這種情況時,您會在服務修復過程中失去與 VM 的連接。 服務修復過程完成後,當您連接到 VM 時,您可能會發現一個事件日誌條目,指明 VM 重新開機(正常或異常)過了。 因此,需要配置您的 VM 以處理這些情況,從而避免應用程式/服務停機。
為確保託管在 Windows Azure 虛擬機器中的應用程式/服務的高可用性,我們建議在可用性集中使用多個 VM。 同一可用性集中的 VM 放置在不同的故障域和更新域中,確保計畫更新或意外故障不會影響該可用性集中的所有 VM。 例如,如果您有兩個 VM 並將它們配置為可用性集的一部分,則當一台主機在更新時,一次只有一個 VM 會停機。 這樣可以提供高可用性,因為您有一個 VM 可在主機更新過程中處理使用者請求。 Mark Russinovich 發表了一篇非常好的博客文章,其中詳細說明了 Windows Azure 主機更新的相關資訊。 有關管理高可用性的詳細資訊,請按一下此處。
雖然可用性集可為 VM 提供高可用性,但我們也意識到,針對計畫中的維護主動通知客戶是一項經常需要使用的功能,尤其是在您的工作負載在單個VM上運行且沒有針對高可用性進行配置的情況下。 雖然目前不提供這種類型的主動式計畫維護通知,但我們仍鼓勵您提供有關該主題的評論,然後我們可以將這些資訊回饋給產品團隊。
[更新] 目前若有計劃中的維護, 我們會向單個實例的 VM 發送通知。 但可能只有帳戶管理員可以看到此通知。
Windows Azure IaaS 主機作業系統更新大揭秘
特別感謝 Sri Harsha 抽時間審閱此博客!!
在此博客中,我們將討論以下問題:
Windows Azure 為何會更新主機作業系統? 如何進行主機作業系統更新? 可用性集是什麼? 為什麼創建可用性集可以使您的應用程式高度可用? 一些可説明您在Windows Azure 虛擬機器中創建和管理高可用性應用程式的資源 更多資訊 Windows Azure 為何會更新主機作業系統?
Windows Azure 會以大約每月一次的頻率將更新部署到主機作業系統。 這樣可確保 Windows Azure 提供可靠、高效且安全的平臺以託管您的應用程式。
如何進行主機作業系統更新?
與您更新在 Windows 作業系統上運行的 PC 或伺服器的方式相比,Windows Azure 平臺上的主機作業系統更新有所不同。 對於 Windows Azure,當一個包含了所有最新更新和修復程式的映射部署到所有伺服器後,Fabric Controller 會指示這些伺服器重新開機並從新部署的映射啟動。 因此,與 Windows 更新耗時頗長不同,Windows Azure 主機作業系統更新僅需花從新映射啟動的時間。 通常,完成此主機作業系統更新過程僅需 15 到 20 分鐘時間。
可用性集是什麼?
當您有兩個或更多 VM 執行同一個任務時(例如:兩個或更多 Web 服務器),您可以創建一個包含這兩個 VM 的可用性集。 創建此可用性集可使您的應用程式高度可用,同時也使您有資格獲得 99.9% 正常執行時間的 SLA。
為什麼創建可用性集可以使您的應用程式高度可用?
當您創建可用性集時,可以指示 Fabric Controller,可用性集中的所有 VM 執行相同的功能,並且不得同時停機執行預先計畫的維護。
在這種情況下,Fabric Controller 會以智慧方式將這些 VM 放置在不同的更新域 (UD) 中。 這些 UD 是邏輯分類,可説明 FC 確保同一個 AS 中的所有 VM 在任何預先計畫的維護期間都不會同時停機。 這將確保始終有 VM 可用來處理請求。
注意:
進行測試/監控,確保即使運行工作負載的 VM 數量減少,也可提供足夠的性能,以便在有一個或多個 VM 不可用的情況下,您的服務在預先計畫的維護期間不會受到負面影響。 如果使用端點來允許外界傳入的流量,請確保它處於負載均衡狀態。 (請參閱下面的「使用Windows Azure 創建高可用性工作負載」。 )