本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Application Auto Scaling 的排程擴展如何運作
本主題說明排程擴展的運作方式,並介紹有效使用它所需的主要考量事項。
運作方式
若要使用排程擴展,請建立排定的動作,以告知 Application Auto Scaling 在特定的時間執行擴展活動。建立排定的動作時,您需要指定可擴展的目標、何時進行擴展活動、容量下限和容量上限。您可以建立僅擴展一次或依週期性排程擴展的排程動作。
在指定的時間,Application Auto Scaling 會將目前容量與指定的容量上下限相比較,以根據新的容量值來擴展。
-
如果目前的容量低於指定的容量下限,則 Application Auto Scaling 會水平擴展 (增加容量) 到指定的容量下限。
-
如果目前的容量高於指定的容量上限,則 Application Auto Scaling 會縮減 (減少容量) 到指定的容量上限。
考量事項
當您建立排程動作時,請謹記下列事項:
-
排定的動作會在指定的日期和時間將
MinCapacity
和MaxCapacity
設為排定動作所指定的值。請求可以選擇僅包含這些大小之一。例如,您可以建立僅指定最小容量的排定動作。然而,在某些情況下,您必須包含這兩種大小,確保新的最小容量不會大於最大容量,或者新的最大容量不會小於最小容量。 -
根據預設,您設定的週期性排程是以國際標準時間 () 為單位UTC。您可以變更時區以對應至您當地的時區或網路另一個部分的時區。當您指定觀察日光節約時間的時區時,動作會自動調整為日光節約時間 (DST)。如需詳細資訊,請參閱使用 Application Auto Scaling 排程重複擴展動作。
-
您可以對可擴展的目標暫時停用排定的擴展。這可協助您避免排程動作處於作用中狀態,而不需要將其刪除。然後,您可以在想要再次使用時繼續執行排程擴展。如需詳細資訊,請參閱Application Auto Scaling 暫停和繼續擴展。
-
對於同一可擴展的目標,會保證排定動作的執行順序,但對於跨可擴展目標的排定動作則無法保證。
-
若要成功完成排定的動作,指定的資源在目標服務中必須處於可擴展狀態。如果不是,則該請求會失敗並傳回一條錯誤訊息,例如
Resource Id [ActualResourceId] is not scalable. Reason: The status of all DB instances must be 'available' or 'incompatible-parameters'
。 -
由於 Application Auto Scaling 和目標服務的分散式特性,從觸發排定的動作到目標服務履行擴展動作之間,可能會延遲幾秒鐘。由於排定的動作是按照指定的順序執行,如果排定的動作彼此的開始時間很接近,就可能執行越久。
建立、管理及刪除排定動作常用的命令
常用於排程擴展的命令包括:
-
register-scalable-target 將 AWS 或自訂資源註冊為可擴展目標 (Application Auto Scaling 可以擴展的資源),以及暫停和繼續擴展。
-
put-scheduled-action 新增或修改現有可擴展目標的排程動作。
-
describe-scaling-activities 傳回 AWS 區域中擴展活動的相關資訊。
-
describe-scheduled-actions 傳回 AWS 區域中排程動作的相關資訊。
-
delete-scheduled-action 刪除排程動作。
相關資源
如需使用排程擴展的詳細範例,請參閱 AWS 運算部落格上的部落格文章排程 AWS Lambda 佈建並行,以了解週期性尖峰用量
如需為 Auto Scaling 群組建立排程動作的相關資訊,請參閱 Amazon EC2 Auto Scaling 使用者指南中的 Amazon EC2 Auto Scaling 排程擴展。
限制
以下是使用排程擴展時的限制:
-
每個可擴展目標的排定動作名稱必須是唯一名稱。
-
Application Auto Scaling 在排程表達式中不提供第二層精確度。使用 cron 表達式的最佳解析是一分鐘。
-
可擴展的目標不能是 Amazon MSK叢集。Amazon 不支援排程擴展MSK。
-
主控台對可擴展資源的檢視、新增、更新或移除排程動作的存取,視您所使用的資源而定。如需詳細資訊,請參閱AWS 服務 您可以搭配「Application Auto Scaling 放」使用。