分享方式:


App Service 環境 v2 的可用性區域支援

重要

本文說明隔離式 App Service 方案搭配使用的 App Service 環境 v2 相關資訊。 App Service 環境 v1 和 v2 自 2024 年 8 月 31 日起已淘汰 (英文)。 有較新版本的 App Service 環境,其更易於使用,並且是在更強大的基礎結構上執行。 若要深入了解新版本,請從 App Service 環境簡介開始。 如果您目前使用 App Service 環境 v1,請遵循此文章中的步驟來移轉至新版本。

自 2024 年 8 月 31 日起,服務等級協定 (SLA) 和服務點數 (英文) 將不再適用於繼續在生產環境中的 App Service 環境 v1 和 v2 工作負載,因為其是已淘汰的產品。 App Service 環境 v1 和 v2 硬體的解除委任已經開始,而這可能會影響您的應用程式和資料的可用性和效能。

您必須立即完成移轉至 App Service 環境 v3,否則您的應用程式和資源可能會被刪除。 我們會嘗試使用就地移轉功能,自動移轉任何剩餘的 App Service 環境 v1 和 v2,但 Microsoft 對自動移轉後應用程式的可用性不做任何聲明或保證。 您可能需要執行手動設定來完成移轉,並最佳化您的 App Service 方案 SKU 選擇,以符合您的需求。 如果自動移轉不可行,您的資源和相關聯的應用程式資料將被刪除。 我們強烈敦促您立即採取行動,以避免上述任一極端案例。

如果您需要額外的時間,我們可以提供一次性 30 天的寬限期,讓您完成移轉。 如需詳細資訊和申請寬限期,請檢閱寬限期概觀 (英文),然後移至 Azure 入口網站,造訪每個 App Service 環境的 [移轉] 窗格。

如需 App Service 環境 v1/v2 淘汰的最新資訊,請參閱 App Service 環境 v1 和 v2 淘汰更新

App Service 環境 v2 (ASE) 可以部署到可用性區域 (AZ)。 客戶可以將內部負載平衡器 (ILB) ASE 部署到 Azure 區域內的特定 AZ。 如果您將 ILB ASE 釘選到特定 AZ,ILB ASE 所使用的資源將會釘選到指定的 AZ,或以區域備援方式部署在區域中。

明確部署到 AZ 的 ILB ASE 會被視為區域性資源,因為 ILB ASE 會釘選到特定區域。 下列 ILB ASE 相依性會釘選到指定的區域:

  • ASE 的內部負載平衡器 IP 位址
  • ASE 用來管理和執行 Web 應用程式的計算資源

部署在區域性 ILB ASE 上的 Web 應用程式的遠端檔案儲存體會使用區域備援儲存體 (ZRS)。

除非遵循本文所述的步驟,否則 ILB ASE 不會以區域性方式自動部署。 您無法將具有公開 IP 位址的外部 ASE 釘選到特定的可用性區域。

您可以在下列任何區域中建立區域性 ILB ASE:

  • 澳大利亞東部
  • 加拿大中部
  • 美國中部
  • 美國東部
  • 美國東部 2
  • 美國東部 2 (EUAP)
  • 法國中部
  • 日本東部
  • 北歐
  • 西歐
  • 東南亞
  • 英國南部
  • 美國西部 2

部署在區域 ILB ASE 上的應用程式會繼續執行,並在該 ASE 上提供流量,即使相同區域中的其他區域遇到中斷也一樣。 包括應用程式服務方案調整、應用程式建立、應用程式設定和應用程式發佈的非執行階段行為,仍可能會受到其他可用性區域中斷的影響。 區域性 ILB ASE 的區域釘選部署只會確保已部署應用程式的持續運作時間。

如何在可用性區域中部署 App Service 環境

必須使用 ARM 範本建立區域性 ILB ASE。 一旦透過 ARM 範本建立區域性 ILB ASE,就可以透過 Azure 入口網站 和 CLI 來檢視和互動。 只有在初始建立區域性 ILB ASE 時,才需要 ARM 範本。

ARM 範本中唯一需要用來指定區域性 ILB ASE 的變更是新的 zones 屬性。 視 ILB ASE 應釘選到的邏輯可用性區域而定,zones 屬性應該設定為值「1」、「2」或「3」。

下列 ARM 範本程式碼片段範例顯示新的 zones 屬性,其指定 ILB ASE 應該釘選到區域 2。

"resources": [
    {
        "type": "Microsoft.Web/hostingEnvironments",
        "kind": "ASEV2",
        "name": "yourASENameHere",
        "apiVersion": "2015-08-01",
        "location": "your location here",
        "zones": [
            "2"
        ],
        "properties": {
            "name": "yourASENameHere",
            "location": "your location here",
            "ipSslAddressCount": 0,
            "internalLoadBalancingMode": "3",
            "dnsSuffix": "contoso-internal.com",
            "virtualNetwork": {
                "Id": "/subscriptions/your-subscription-id-here/resourceGroups/your-resource-group-here/providers/Microsoft.Network/virtualNetworks/your-vnet-name-here",
                "Subnet": "yourSubnetNameHere"
            }
        }
    }
]

若要使應用程式區域成為備援區域,您必須部署兩個區域性 ILB ASE。 這兩個區域性 ILB ASE 必須位於不同的可用性區域中。 接著,您必須將應用程式部署到每個 ILB ASE 中。 建立應用程式之後,您必須設定負載平衡解決方案。 建議的解決方案是部署區域性 ILB ASE 的區域備援應用程式閘道上游。

區域內資料落地

部署在可用性區域中的 ILB ASE 只會將客戶資料儲存在已部署區域性 ILB ASE 的區域內。 網站檔案內容以及儲存於 App Service 的客戶提供之設定和密碼都會保留在部署區域性 ILB ASE 的區域內。

客戶可遵循先前「如何在可用性區域中部署 App Service 環境」一節所述的步驟,以確保單一區域資料落地。 根據這些步驟設定 App Service 環境,部署在可用性區域中的 App Service 環境可滿足區域資料落地需求,包括 Azure 信任中心中指定的需求。

客戶可遵循下列步驟,以驗證 App Service 環境是否已正確設為將資料儲存在單一區域中:

  1. 使用資源總管 (英文),瀏覽至 App Service 環境的 Azure Resource Manager 資源。 ASE 會列在 providers/Microsoft.Web/hostingEnvironments之下。
  2. 如果 zones 屬性存在於 Azure Resource Manager JSON 語法的檢視中,而且包含值為「1」、「2」或「3」的單一值 JSON 陣列,則 ASE 會進行區域性部署,且客戶資料會保留在相同的區域中。
  3. 如果 zones 屬性不存在,或此屬性沒有如先前指定的有效區域值,則 ASE 不會進行區域性部署,且客戶資料不會以獨佔方式儲存在相同的區域中。