本頁是否能提供幫助?
您對此內容的意見反應十分重要。 請告訴我們您的想法。
其他意見反應?
剩餘 1500 個字元
匯出 (0) 列印
全部展開

在 Windows Azure 中使用 Windows Azure VM 角色

更新日期: 2011年3月

[Windows Azure 的 VM 角色功能即將在 2013 年 5 月 15 日淘汰。在淘汰日期過後,VM 角色部署將遭到刪除。 若要繼續推展您現有的應用程式,請使用 Windows Azure 虛擬機器。 如需將虛擬機器用於應用程式的詳細資訊,請參閱 Moving from VM Role to Windows Azure Virtual Machines (從 VM 角色移到 Windows Azure 虛擬機器)

在 Windows Azure 中,您可以利用兩種不同的方式來使用虛擬機器。您可以使用 VM 角色或是使用虛擬機器。

  • VM 角色:VM 角色是在 PDC10 時發行,現今仍是 Beta 版本。它獲得客戶很好的回應,我們採用了其中很多意見來建置 Windows Azure 中的新虛擬機器。VM 角色具有無狀態的本質,對於客戶案例 (例如要安裝在安裝時很花時間或容易出錯的應用程式) 非常有幫助,並且支援向外延展雲端模式。我們目前仍繼續接受客戶透過先前的管理入口網站來存取 VM 角色的 Beta 程式。因為 VM 角色目前為 Beta 版,並且產品與功能隨時可能變更,因此 Windows Azure 不建議使用 VM 角色做為生產部署之用。我們會持續收集意見來協助建構未來的 Windows Azure,所以請您繼續使用 VM 角色來提供概念證明以及用於非生產性質的服務。

  • 虛擬機器:我們從 VM 角色 Beta 版的啟用所收集到的客戶意見,為新的 Windows Azure 虛擬機器提供了許多規劃資訊。虛擬機器具有永續性的本質,可讓客戶在 Windows Azure 上執行像是 SQL Server 和 SharePoint 等的應用程式。此外,虛擬機器同時支援 Windows Server 和 Linux 作業系統。虛擬機器已經發行了預覽版本,而且遵守條款與條件。此服務預計在年底前會轉為正式運作,但尚未設定公開日期。如需這項新功能的詳細資訊,請瀏覽 www.windowsazure.com 的功能區域。

VM 角色可讓您將自訂的 Windows Server 2008 R2 映像部署至 Windows Azure。經由使用 VM 角色,您可以在熟悉的環境中工作、使用標準的 Windows 技術來建立映像、將您的軟體安裝至該映像、然後將它備妥以上傳至 Windows Azure,並在上傳之後管理它。

安裝的作業系統可以是下面其中一項:

  • Windows Server 2008 R2 Enterprise (僅限英文版)

  • Windows Server 2008 R2 Standard (僅限英文版)

note附註
不支援 Windows Web Server 2008 R2。

VM 角色可賦予您對虛擬機器的高度控制權,同時還能提供在 Windows Azure 環境內執行的優點:即時延展性、就地升級且服務不中斷、可與您的其他服務元件整合,以及負載平衡的流量。VM 角色是由作業系統組成,該作業系統則是使用基底虛擬硬碟 (VHD) 和選擇性的差異 VHD 建構而成。使用 VM 角色時還會涉及服務定義檔和服務組態檔。

VM 角色與 Web 角色及背景工作角色不同,因為使用這些角色時,您的重點是在 Windows Azure 所管理的作業系統中建立及執行您的程式碼;至於 VM 角色,您則是要提供一個預先設定的作業系統映像。開發人員具有作業系統映像的完整控制權,系統管理員則可以從遠端存取所有角色的虛擬機器,以執行維護和疑難排解工作。

note附註
不支援在 計算模擬器 中執行 VM 角色執行個體。

由於您控制了 VM 角色的執行個體中的作業系統以及對該作業系統的所有更新,對於在 Windows Azure 的雲端服務中執行的其他類型角色執行個體而言,這一點是非常不同。如果您作業系統的安裝既冗長又複雜,或者是無法將設定程序自動化時,您就應該使用此角色。

在 Windows Azure 中執行的 VM 角色執行個體會有某些限制,而作業系統的內部部署安裝則無此限制。某些網路相關功能會受到限制,例如,若要使用 UDP 通訊協定,您必須同時使用 Windows Azure Connect。此外,在 Windows Azure 中執行的 VM 角色執行個體不會保存狀態。建議您使用 Windows Azure 儲存體服務來保存狀態,您可以將狀態寫入 Blob 或 Windows Azure 磁碟機。如需如何進行這項處理的範例,請參閱<針對 Windows Azure 中的 VM 角色開發配接器>。當伺服器執行個體重新安裝映像時,寫入至本機儲存體資源目錄中的資料會保存下來;不過,這些資料可能會在 Windows Azure 發生暫時性失敗時遺失,此時您的 VM 角色執行個體就必須移至其他硬體。

下圖提供了 VM 角色開發程序所包含的步驟概觀:

VMRoleOverview

Windows Azure 透過部署您的映像、將 VM 角色執行個體帶上線、套用輪流升級、在要求時或因暫時性失敗而需要時為 VM 角色執行個體重新安裝映像,以及使用負載平衡器來引導網路流量,來管理您的 VM 角色執行個體的可用性。若要讓 Windows Azure 最佳化地管理 VM 角色執行個體,就必須精確地評估執行個體的狀態。Windows Azure 是透過輪詢 VM 角色執行個體的狀態來評估其整備性。

當 VM 角色執行個體出現在線上時 (亦即,當它第一次啟動並利用特製化階段來設定作業系統,以及當它後續每次在啟動那些設定為自動啟動的 Windows 服務時),只要受到輪詢,VM 角色執行個體就會傳回 Busy 的狀態。當所有會自動啟動的服務都啟動後,VM 角色執行個體就會傳回 Ready。此時,Windows Azure 會假設您的 VM 角色執行個體確實已經準備好可接收流量,而且您必須負責確定這是實際的情況。Windows Azure 就會將流量導向至該執行個體,直到它被帶離負載平衡器的輪替循環為止,這有可能是因為在 VM 角色執行個體中執行的程式碼已將它的狀態設為 Busy,或者因為已起始了它的關閉狀態。

在 VM 角色執行個體在線上的任何時間,您的程式碼都可以明確地將它的狀態設為 Busy,其方法是將事件處理常式加入至 StatusCheck 事件。當該事件引發時,可在事件引數物件上呼叫 SetBusy 方法。當 Windows Azure 輪詢 VM 角色執行個體並發現它是處於 Busy 狀態時,就會停止將流量導向至該執行個體,直到它再次傳回 Ready 的狀態。當 VM 角色執行個體開始進行關閉作業時 (有可能是因為它被重新啟動或重新安裝映像),它會再次傳回 Busy。同樣的,它也不再從負載平衡器接收流量,直到它再度被帶回線上並再次完成其啟動順序。

為了確保您的雲端服務的可用性以維護任何服務等級協定,建議使用下面策略:

  • 一律針對您的雲端服務部署至少兩個 VM 角色執行個體。如果其中一個執行個體因為失敗或升級而離線,另一個執行個體就可以繼續處理流量,直到兩個執行個體都再度上線。

  • 如果您的配接器是會自動啟動的服務,請確認在 OnStart 方法傳回之前完成 VM 角色執行個體的設定工作。在 OnStart 方法完成之後,您的雲端服務應該是 Ready 狀態,並且應該維持 Ready 狀態,直到它被明確帶離輪替循環,或者開始進行任何關閉程序為止。

  • 避免自發性地重新啟動您的雲端服務。根據預設,回應檔案會將 Windows 設定為關閉 Windows Update,請勿修改此設定。

  • 避免從您的 VM 角色執行個體內關閉 Windows。

在 Windows Azure 中執行的任何 VM 角色執行個體都是以計算時數來計價。VM 角色的授權是包含在計算時數價格中,並且與用來建立基底 VHD 的安裝媒體的授權狀態無關。

note附註
部署至 Windows Azure 的應用程式會受到該應用程式相關聯之授權條款的限制。

您要使用執行 Windows Server 2008 作業系統的伺服器上的 Hyper-V 管理員來建立 VHD。在本文件集中,此伺服器就是所謂的來源伺服器。您必須在來源伺服器上執行下面作業,才能開始開發 VM 角色:

  • 安裝 Windows Server 2008 (建議您使用 Windows Server 2008 R2) 作業系統的某個版本,並安裝所有必要的更新。

  • 安裝 Hyper-V 伺服器角色。如需詳細資訊,請參閱<在完整安裝的 Windows Server 2008 上安裝 Hyper-V 角色>。

  • 安裝 Windows Azure SDK 與其必要元件。在安裝最新版本之前,請先解除安裝任何舊版本。若要下載最新版本,請造訪 Windows Azure 下載頁面

  • 確認 Windows Server 2008 R2 安裝媒體或之前建立的 VHD 可供使用。安裝媒體的典型格式是 ISO 檔案。

  • (選擇性) 請安裝 Visual Studio 2010 來協助您建立服務模型及部署封裝。

您可以使用差異 VHD 來變更已上傳至 Windows Azure 的伺服器映像。如需詳細資訊,請參閱<為 Windows Azure 中的 VM 角色變更伺服器映像>。

另請參閱

社群新增項目

顯示:
© 2015 Microsoft