Share via


移轉至 App Service 環境 v3

注意

有兩個自動化移轉功能可協助您升級至 App Service 環境 v3。 若要深入了解這些功能,並協助您決定哪個移轉選項適合您,請參閱 移轉路徑判定樹。 請考慮其中一個自動化選項,以加快 App Service 環境 v3 的路徑。

如果您目前使用 App Service 環境 v1 或 v2,您有機會將工作負載移轉至 App Service 環境 v3。 App Service 環境 v3 的優點和功能差異可提供工作負載的增強支援,並可降低整體成本。 如果您的環境符合移轉路徑判定樹中所述的準則,請考慮使用自動化移轉功能

如果您的移轉功能不支援您的 App Service 環境,您必須使用其中一個手動方法來移轉至 App Service 環境 v3。

必要條件

案例:您有一個在 App Service 環境 v1 或 App Service 環境 v2 上執行的應用程式,而您需要該應用程式在 App Service 環境 v3 上執行。

對於未使用自動化移轉功能的任何移轉方法,您必須使用您選擇的方法建立 App Service 環境 v3 資源和新的子網。

App Service 環境 v1/v2 與 App Service 環境 v3 之間的網路變更涉及新的(以及因特網面向環境,其他)IP 位址。 您必須更新依賴這些IP的任何基礎結構。 請務必考慮輸入相依性變更,例如 Azure Load Balancer 埠。

單一子網中不能有多個 App Service 環境。 如果您需要將現有的子網用於新的 App Service 環境 v3 資源,您必須先刪除現有的 App Service 環境,才能建立新的子網。 在此案例中,建議您 備份應用程式,然後在建立及設定環境之後,將它們還原 到新的環境中。 此程式會造成應用程式停機,因為需要下列時間:

  • 刪除舊環境。
  • 建立 App Service 環境 v3 資源。
  • 設定任何基礎結構和連線的資源,以使用新的環境。
  • 將您的應用程式部署到新的環境。

移轉應用程式前的檢查清單

  • 建立 App Service 環境 v3 資源。
  • 使用與新環境相關聯的IP位址更新任何網路相依性。
  • 規劃停機時間(如果適用的話)。
  • 決定在新的環境中重新建立應用程式的程式。

調整環境的大小和規模

App Service 環境 v3 使用隔離 v2 Azure App 服務 方案,這些方案的價格和大小與隔離方案不同。 檢閱 定價詳細數據 ,以瞭解新環境的大小和調整方式,以確保適當的容量。 與舊版相比,您為 App Service 環境 v3 建立 App Service 方案的方式並無差異。

評估備份和還原

當您移轉至新環境時,您可以使用 備份和還原 功能,讓您的應用程式組態、檔案內容和資料庫連線到您的應用程式。

您必須設定應用程式的自定義備份,才能將其還原至 App Service 環境 v3。 自動備份不支援在不同 App Service 環境 版本還原。 如需自定義備份的詳細資訊,請參閱 自動與自定義備份Screenshot that shows options for configuring custom backups for an App Service app.

您可以選取自定義備份,並將它還原至 App Service 環境 v3 資源中的 App Service。 您必須建立要還原至的 App Service 方案,才能還原應用程式。 您可以選擇將備份還原至生產位置、現有的位置,或您在還原程式期間建立的新位置。

Screenshot that shows how to use a backup to restore an App Service app in App Service Environment v3.

福利 限制
快速 - 每個應用程式只需要 5 到 10 分鐘。 支援僅限於 特定資料庫類型
您可以同時還原多個應用程式。 (您必須個別設定每個應用程式的還原。 舊環境、新環境和支援資源(例如應用程式、資料庫、記憶體帳戶和容器)必須全部位於相同的訂用帳戶中。
應用程式內 MySQL 資料庫會自動備份,而不需要任何設定。 備份上限是 10 GB 的應用程式和資料庫內容。 最多 4 GB 的內容可以是資料庫備份。 如果備份大小超過此限制,您會收到錯誤。
您可以將應用程式還原至先前狀態的快照集。 不支援使用已啟用防火牆的記憶體帳戶作為備份目的地。
您可以與 Azure 流量管理員Azure 應用程式閘道 整合,以將流量分散到新舊環境。 不支援搭配 私人端點 使用記憶體帳戶進行備份和還原。
您可以在開始還原之前,先建立空的 Web 應用程式,以在新的環境中還原至 ,以加速程式。 僅支援自定義備份。

將您的應用程式複製到 App Service 環境 v3

複製您的應用程式是另一項功能,可用來將 Windows 應用程式移至 App Service 環境 v3。 複製應用程式的限制與 App Service 備份功能的限制相同。 如需詳細資訊,請參閱在 Azure App 服務 中備份應用程式。

注意

僅限 Windows 上的 App Service 方案支援複製應用程式。

針對在 Windows 上使用 App Service 且無法使用移轉功能移轉的使用者,建議您使用此解決方案。 您必須先設定新的 App Service 環境 v3 資源,才能複製任何應用程式。 複製應用程式最多可能需要 30 分鐘才能完成。

若要使用PowerShell複製應用程式,請參閱 指示

若要使用 Azure 入口網站 複製應用程式:

  1. Azure 入口網站 中,移至您現有的 App Service 方案。 在 [開發工具] 底下,選取 [複製應用程式]。

  2. 使用新 App Service 環境 v3 資源的詳細資料填入必要的欄位:

    1. 針對 [ 資源群組],選取現有的資源群組或建立新的資源群組。
    2. 針對 [ 名稱],為您的應用程式指定名稱。 此名稱可以與舊應用程式相同,但新環境的網站預設URL會不同。 您必須更新任何自定義 DNS 或已連線的資源,以指向新的 URL。
    3. 針對 [區域],請使用您的 App Service 環境 v3 名稱。
    4. 如果您想要複製部署來源,請選取 [ 複製部署來源 ] 複選框。
    5. 針對 Windows 方案,如果您已經建立一個 App Service 方案,則可以從新的環境使用現有的 App Service 方案,也可以建立新的方案。 新 App Service 環境 v3 資源中可用的 App Service 方案會出現在下拉式清單中。
    6. 針對 Sku 和大小,如果您要建立新的 App Service 方案,請使用其中一個隔離 v2 選項來視需要修改記憶體和 CPU。 App Service 環境 v3 使用隔離 v2 方案,相較於隔離計劃,每個對應實例大小都有較多的記憶體和 CPU。 如需詳細資訊,請參閱 App Service 環境 v3 定價詳細數據

Screenshot that shows options for cloning an app to App Service Environment v3 by using the portal.

福利 限制
您可以使用PowerShell將複製自動化。 僅支援 Windows 上的 App Service 方案。
您可以同時複製多個應用程式。 (必須個別或透過文稿為每個應用程式設定複製。 支援僅限於 特定資料庫類型
您可以與 Azure 流量管理員Azure 應用程式閘道 整合,以將流量分散到舊環境和新環境。 舊環境、新環境和支援資源(例如應用程式、資料庫、記憶體帳戶和容器)必須全部位於相同的訂用帳戶中。

在 App Service 環境 v3 中手動建立您的應用程式

如果移轉功能不支援您的應用程式,或您想要採取更手動的路由,您可以遵循您用於現有 App Service 環境 的相同程式來部署應用程式。

您可以匯出 現有應用程式的 Azure Resource Manager 範本 (ARM 範本)、App Service 方案,以及任何其他支援的資源,並在新的環境中部署它們。 若要只匯出應用程式的範本,請移至您的 App Service 方案。 在 [自動化] 底下,選取 [導出範本]。

Screenshot of the option to export a template on the left pane of the Azure portal.

您也可以直接從資源群組匯出多個資源的範本。 移至您的資源群組,選取您想要範本的資源,然後選取 [ 匯出範本]。

Screenshot of the option for exporting a template for resources from a resource group.

需要對 ARM 範本進行下列初始變更,才能讓應用程式進入 v3 App Service 環境:

  • 將 App Service 方案的參數更新 sku 為隔離 v2 方案:

    "type": "Microsoft.Web/serverfarms",
    "apiVersion": "2021-02-01",
    "name": "[parameters('serverfarm_name')]",
    "location": "East US",
    "sku": {
        "name": "I1v2",
        "tier": "IsolatedV2",
        "size": "I1v2",
        "family": "Iv2",
        "capacity": 1
    },
    
  • 更新 App Service 方案 (serverfarm) 參數,該應用程式將會部署到與 App Service 環境 v3 相關聯的方案。

  • 將裝載環境配置檔 (hostingEnvironmentProfile) 參數更新為新的 App Service 環境 v3 資源識別碼。

  • ARM 樣本匯出包含資源提供者針對資源公開的所有屬性。 拿掉所有非必要屬性,例如指向舊應用程式網域的屬性。 例如,您可以將資源簡化 sites 為下列範例:

    "type": "Microsoft.Web/sites",
    "apiVersion": "2021-02-01",
    "name": "[parameters('site_name')]",
    "location": "East US",
    "dependsOn": [
        "[resourceId('Microsoft.Web/serverfarms', parameters('serverfarm_name'))]"
    ],
    "properties": {
        "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', parameters('serverfarm_name'))]",
        "siteConfig": {
            "linuxFxVersion": "NODE|14-lts"
         },
        "hostingEnvironmentProfile": {
            "id": "[parameters('hostingEnvironments_externalid')]"
        }
    }
    

視您設定應用程式的方式而定,可能需要進行其他變更。 例如,如果您使用系統指派的受控識別,以及舊環境和新環境相同的應用程式名稱,可能會發生衝突。 若要解決衝突並避免停機,您可以使用使用者指派的受控識別。

您可以使用 Azure 入口網站、Azure CLI 或 PowerShell 來部署 ARM 範本

手動移轉

地移轉功能會將移轉至 App Service 環境 v3 自動化,並將所有應用程式傳輸至新的環境。 此移轉期間約一個小時的停機時間。 如果您的應用程式沒有任何停機時間,建議您使用 並存移轉功能,這是零停機時間移轉選項,因為新環境是在不同的子網中建立。 如果您也選擇不使用並存移轉功能,您可以使用其中一個手動選項,在 App Service 環境 v3 中重新建立您的應用程式。

您可以使用 應用程式閘道,在舊環境與新環境之間散發流量。 如果您使用內部負載平衡器 (ILB) App Service 環境,請建立具有額外後端集區的 Azure 應用程式閘道 實例,以分散環境之間的流量。 如需 ILB App Service 環境 和因特網面向 App Service 環境 的相關信息,請參閱 應用程式閘道 整合

您也可以使用 Azure Front DoorAzure 內容傳遞網路Azure 流量管理員 等服務,在環境之間散發流量。 使用這些服務可讓您以受控制的方式測試新環境,並協助您以自己的步調移至新的環境。

移轉和使用新環境的任何測試完成之後,請刪除舊的 App Service 環境、其上的應用程式,以及您不再需要的任何支持資源。 您仍需支付您未刪除的任何資源的費用。

常見問題集

  • 如何? 知道我是否應該使用其中一個手動選項移轉至 App Service 環境 v3?
    如需決定適合您移轉選項的說明,請參閱 移轉路徑判定樹。 如果您的環境符合移轉路徑判定樹中所述的準則,請考慮使用其中一個自動化移轉功能,以加快 App Service 環境 v3 的路徑。 如果您需要慢慢將應用程式移至新的環境,並在整個程式中進行驗證,建議您手動移轉。

  • 在移轉時是否有停機的問題?
    停機時間取決於您的移轉程式。 如果您有不同的 App Service 環境,您可以在移轉時將流量指向 ,或者您可以使用不同的子網來建立新的環境,則不會停機。 如果您必須使用相同的子網,則在刪除舊環境時發生停機時間、建立 App Service 環境 v3 資源、建立新的 App Service 方案、重新建立應用程式,以及更新任何使用新 IP 位址的資源。

  • 我需要變更應用程式的任何專案,讓他們在 App Service 環境 v3 上執行嗎?
    否。 在 App Service 環境 v1 和 v2 上執行的應用程式不應該需要任何修改,才能在 App Service 環境 v3 上執行。 如果您使用IP SSL,必須先移除IP SSL系結,才能進行移轉。

  • 如果我的 App Service 環境有一個自訂網域尾碼怎麼辦?
    移轉功能支援此移轉案例。 如果您不想使用移轉功能,可以使用手動方法來移轉。 您可以在建立 App Service 環境 v3 資源或之後的任何時間設定自定義網域後綴

  • 如果我 App Service 環境 v2 資源已釘選區域,該怎麼辦?
    App Service 環境 v3 不支援區域釘選功能。 您可以選擇在建立 App Service 環境 v3 資源時啟用區域備援。

  • 我的 App Service 環境 有哪些屬性會變更?
    檢閱 App Service 環境 v3 與舊版之間的功能差異。 針對 ILB App Service 環境,您會保留相同的 ILB IP 位址。 針對因特網對向 App Service 環境,公用IP位址和輸出IP位址會變更。

    針對因特網對向 App Service 環境,先前針對輸入和輸出都有單一IP。 對於 App Service 環境 v3,它們是有區分的。 如需詳細資訊,請參閱 App Service 環境 v3 網路功能。

  • 備份和還原是否支援將應用程式從 App Service 環境 v2 移至 v3? 只要您使用自定義備份進行還原,備份和還原功能就支援在 App Service 環境 版本之間還原應用程式。 自動備份不支援還原至不同的 App Service 環境 版本。

  • 2024 年 8 月 31 日之後,我的 App Service 環境 v1 和 v2 資源會發生什麼情況?
    在 2024 年 8 月 31 日之後,如果您尚未移轉至 App Service 環境 v3,您的 App Service 環境 v1 和 v2 資源,且部署的應用程式將無法再使用。

    App Service 環境 v1 和 v2 裝載於執行於的 App Service 縮放單位上Azure 雲端服務 (傳統) 架構。 由於此架構將於 2024 年 8 月 31 日淘汰,App Service 環境 v1 和 v2 將無法在該日期之後使用。 遷移至 App Service 環境 v3,讓您的應用程式保持執行,或儲存或備份您需要維護的任何資源或數據。

下一步