自動調整和 App Service 環境 v1
重要
這篇文章是關於 App Service 環境 v1。 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 Environment v1 和 v2,但 Microsoft 並未就自動移轉後的相關應用程式可用性提供聲明或保證。 您可能需要執行手動設定來完成移轉,並最佳化您的 App Service 方案 SKU 選擇,以符合您的需求。 如果自動移轉不可行,您的資源和相關聯的應用程式資料將遭到刪除。 我們強烈敦促您立即採取行動,以避免上述任一極端案例。
如果您需要額外的時間,我們可以提供一次性 30 天的寬限期,讓您完成移轉。 如需詳細資訊和申請寬限期,請檢閱寬限期概觀 (英文),然後移至 Azure 入口網站,造訪每個 App Service 環境的窗格。
如需 App Service 環境 v1/v2 淘汰的最新資訊,請參閱 App Service 環境 v1 和 v2 淘汰更新。
Azure App Service 環境支援「自動調整」 。 您可以根據度量或排程自動調整個別的背景工作集區。
自動調整可將您的資源使用量最佳化,方法是透過自動增加或縮減 App Service 環境以符合您的預算和或負載設定檔。
設定背景工作集區自動調整
您可以從 [背景工作集區] 的 [設定] 索引標籤存取自動調整功能。
該處的介面應相當熟悉,因為這是和您調整 App Service 方案時所看到的相同的體驗。
您也可以設定自動調整設定檔。
自動調整設定檔對於設定您的規模的限制很實用。 如此一來,您可以同時藉由設定下限調整值 (1) 獲得一致的效能體驗和藉由設定上限 (2) 獲得可預測的資本支出。
在定義設定檔之後,您可以新增自動調整規則,以擴大或縮小設定檔所定義的範圍內背景工作集區中的執行個體數目。 自動調整規則是以度量為基礎。
任何背景工作集區或前端度量均可用來定義自動調整規則。 這些度量是您可以在資源刀鋒視窗圖形中監視或設定警示的相同度量。
自動調整範例
App Service 環境的自動調整可使用逐步解說一個案例來加以說明。
本文說明設定自動調整時所有必要的考量。 本文將引導您進行當您納入 App Service 環境所裝載的自動調整 App Service 環境時派上用場的所有互動。
案例簡介
Frank 是企業的系統管理員,他已將他們所管理的部分工作量移轉至 App Service 環境。
App Service 環境設為以如下方式手動調整:
- 前端: 3
- 背景工作集區 1:10
- 背景工作集區 2:5
- 背景工作集區 3:5
背景工作集區 1 是用於生產工作負載,而背景工作集區 2 和背景工作集區 3 用於品質保證 (QA) 及開發工作負載。
品管和開發人員的 App Service 方案設定為手動調整。 生產 App Service 方案則設為自動調整以處理負載和流量的變化。
Frank 非常熟悉應用程式。 他們已知道負載尖峰時間是上午 9:00 到下午 6:00,因為這是員工在辦公室時會使用的企業營運 (LOB) 應用程式。 之後當使用者下班時,使用量便會下降。 非尖峰時間仍會有一些負載,因為使用者可以使用其行動裝置或家用電腦從遠端存取應用程式。 生產 App Service 方案已利用下列規則設定為根據 CPU 使用量自動調整:
自動調整設定檔 - 工作日 - App Service 方案 | 自動調整設定檔 - 週末 - App Service 方案 |
---|---|
名稱: 工作日設定檔 | 名稱: 週末設定檔 |
調整規模: 排程和效能規則 | 調整規模: 排程和效能規則 |
設定檔: 工作日 | 設定檔: 週末 |
類型: 循環 | 類型: 循環 |
目標範圍: 5 到 20 個執行個體 | 目標範圍: 3 到 10 個執行個體 |
星期幾: 星期一、星期二、星期三、星期四、星期五 | 星期幾: 星期六、星期日 |
開始時間︰ 上午 9:00 | 開始時間︰ 上午 9:00 |
時區: UTC-08 | 時區: UTC-08 |
自動調整規則 (擴大) | 自動調整規則 (擴大) |
資源: 生產環境 (App Service 環境) | 資源: 生產環境 (App Service 環境) |
度量: CPU % | 度量: CPU % |
作業: 大於 60% | 作業: 大於 80% |
持續時間: 5 分鐘 | 持續時間: 10 分鐘 |
時間彙總: 平均 | 時間彙總: 平均 |
動作: 計數增加 2 | 動作: 計數增加 1 |
冷卻時間 (分鐘): 15 | 冷卻時間 (分鐘): 20 |
自動調整規則 (縮小) | 自動調整規則 (縮小) |
資源: 生產環境 (App Service 環境) | 資源: 生產環境 (App Service 環境) |
度量: CPU % | 度量: CPU % |
作業: 少於 30 % | 作業: 少於 20 % |
持續時間: 10 分鐘 | 持續時間: 15 分鐘 |
時間彙總: 平均 | 時間彙總: 平均 |
動作: 計數減少 1 | 動作: 計數減少 1 |
冷卻時間 (分鐘): 20 | 冷卻時間 (分鐘): 10 |
App Service 方案擴大率
設定為自動調整的 App Service 方案,就會以每小時最大的速率進行。 此速率可以根據自動調整規則上提供的值計算。
了解及計算「App Service 方案擴大率」 對 App Service 環境自動調整來說很重要,因為背景工作集區的調整變更並非瞬間完成。
App Service 方案擴大率的計算方式如下:
根據生產 App Service 方案的工作日設定檔的「自動調整 - 擴大」規則:
如果是生產 App Service 方案的週末設定檔的「自動調整 - 擴大」規則,公式會解析為:
此值也可以針對相應減少作業計算。
根據生產 App Service 方案的工作日設定檔的「自動調整 - 縮小」規則,這看起來會是如下:
如果是生產 App Service 方案的週末設定檔的「自動調整 - 縮小」規則,公式會解析為:
生產 App Service 方案能在週間以每小時 8 個執行個體,以及在週末期間以每小時 4 個執行個體的最大速率成長。 它能夠在週間以每小時 4 個執行個體,以及在週末期間以每小時 6 個執行個體的最大速率釋出執行個體。
如果在背景工作集區中裝載多個 App Service 方案,則必須將「總擴大率」 計算為裝載在該背景工作集區中的所有 App Service 方案的擴大率總和。
使用 App Service 方案擴大率來定義背景工作集區自動調整規則
裝載 App Service 方案且設定為自動調整的背景工作集區必須配置容量緩衝區。 緩衝區可在需要時允許自動調整作業增加和縮減 App Service 方案。 最小緩衝區會計算為總計 App Service 方案擴大率。
由於 App Service 環境調整作業需要一些時間才能套用,任何變更應該考量當調整正在進行時可能會發生的進一步需求變更。 為了因應此延遲,建議您使用計算的總計 App Service 方案擴大率作為對每個自動調整作業加入的執行個體數目下限。
使用此資訊,Frank 可以定義下列的自動調整設定檔和規則:
自動調整設定檔 - 工作日 | 自動調整設定檔 - 週末 |
---|---|
名稱: 工作日設定檔 | 名稱: 週末設定檔 |
調整規模: 排程和效能規則 | 調整規模: 排程和效能規則 |
設定檔: 工作日 | 設定檔: 週末 |
類型: 循環 | 類型: 循環 |
目標範圍: 13 到 25 個執行個體 | 目標範圍: 6 到 15 個執行個體 |
星期幾: 星期一、星期二、星期三、星期四、星期五 | 星期幾: 星期六、星期日 |
開始時間︰ 上午 7:00 | 開始時間︰ 上午 9:00 |
時區: UTC-08 | 時區: UTC-08 |
自動調整規則 (擴大) | 自動調整規則 (擴大) |
資源: 背景工作集區 1 | 資源: 背景工作集區 1 |
度量: WorkersAvailable | 度量: WorkersAvailable |
作業: 少於 8 | 作業: 少於 3 |
持續時間: 20 分鐘 | 持續時間: 30 分鐘 |
時間彙總: 平均 | 時間彙總: 平均 |
動作: 計數增加 8 | 動作: 計數增加 3 |
冷卻時間 (分鐘): 180 | 冷卻時間 (分鐘): 180 |
自動調整規則 (縮小) | 自動調整規則 (縮小) |
資源: 背景工作集區 1 | 資源: 背景工作集區 1 |
度量: WorkersAvailable | 度量: WorkersAvailable |
作業: 大於 8 | 作業: 大於 3 |
持續時間: 20 分鐘 | 持續時間: 15 分鐘 |
時間彙總: 平均 | 時間彙總: 平均 |
動作: 計數減少 2 | 動作: 計數減少 3 |
冷卻時間 (分鐘): 120 | 冷卻時間 (分鐘): 120 |
設定檔中定義的目標範圍的計算方式是由設定檔中為 App Service 方案定義的最小執行個體 + 緩衝區。
最大值範圍是裝載於背景工作集區的所有 App Service 方案最大範圍的總和。
擴大規則的增加計數應該設定為至少是 App Service 方案擴大率的一倍進行擴大。
減少計數可以調整成介於 App Service 方案擴增率的一半或一倍之間進行縮小。
前端集區的自動調整
前端自動調整規則比背景工作集區規則簡單。 您主要應該
確定測量的持續時間,而冷卻計時器會將 App Service 方案的調整作業不是瞬間完成的事實納入考量。
在此案例中,Frank 知道當前端達到 80% 的 CPU 使用量時錯誤率會增加,他設定自動調整規則來增加執行個體,如下所示:
自動調整設定檔 - 前端 |
---|
名稱: 自動調整 - 前端 |
調整規模: 排程和效能規則 |
設定檔: 每日 |
類型: 循環 |
目標範圍: 3 到 10 個執行個體 |
星期幾: 每日 |
開始時間︰ 上午 9:00 |
時區: UTC-08 |
自動調整規則 (擴大) |
資源: 前端集區 |
度量: CPU % |
作業: 大於 60% |
持續時間: 20 分鐘 |
時間彙總: 平均 |
動作: 計數增加 3 |
冷卻時間 (分鐘): 120 |
自動調整規則 (縮小) |
資源: 背景工作集區 1 |
度量: CPU % |
作業: 少於 30 % |
持續時間: 20 分鐘 |
時間彙總: 平均 |
動作: 計數減少 3 |
冷卻時間 (分鐘): 120 |