概觀
Instance Scheduler on AWS 可自動啟動和停止各種服務,包括 Amazon Elastic Compute Cloud (Amazon EC2)、Amazon EC2 Auto Scaling 群組和 Amazon Relational Database Service (Amazon RDS) 執行個體。自動化此程序可視需要停止和啟動資源來降低營運成本。此 AWS 解決方案使用資源標籤和 AWS Lambda,根據您定義的排程來自動停止與啟動執行個體,並且可跨多個 AWS 區域進行部署。
與讓所有執行個體持續充分利用執行的設定 (即使未使用這些資源) 相比,此解決方案可將工作負載與 AWS Well-Architected 成本優化最佳實務保持一致,以顯著節省成本。
優勢
此解決方案包含一個範本,該範本會建立必要的 AWS Identity and Access Management (IAM) 角色以起迄次要帳戶的執行個體。
此解決方案可以自動將標籤新增至其啟動或停止的所有執行個體。此解決方案亦包含巨集,能將可變資訊加入標籤。
此解決方案包含命令列界面 (CLI),其會提供排程和期間的設定命令。CLI 可讓客戶估算指定排程的費用節省。
對於 EC2 執行個體,此解決方案可以使用在與執行個體相同的 AWS 區域中定義的 Systems Manager 維護時段,並在此維護時段啟動和停止執行個體。
技術詳細資訊
您可以使用實作指南和隨附的 AWS CloudFormation 範本來自動部署此架構,或開始使用以下資源︰
步驟 1
此 AWS 解決方案以可設定的排程時間間隔來部署 Amazon EventBridge 規則。此排程間隔定義了解決方案執行的頻率,並執行動作來排程執行個體。
步驟 2
每個排程時間間隔會調用 AWS Lambda 協同運作函數。這會確定需要排程的 AWS 帳戶、區域和服務清單。協調器隨後會平行調用多個排程請求 Lambda 函數來執行排程活動。
步驟 3
排程和期間集合會存放在 Amazon DynamoDB 組態資料表中,以控制此解決方案的排程行為。您可在此資料表中設定任意數目的排程或期間,並且解決方案會相應地排程執行個體。
步驟 4
每個排程請求會檢查其特定目標 (帳戶、區域、服務) 中的資源,以使用解決方案的組態資料表中定義的排程,來尋找已標記進行排程的資源。排程請求處理程式隨後會檢查設定的排程,並執行所需的排程動作。
步驟 5
如果啟用 Auto Scaling 群組 (ASG) 排程,Instance Scheduler on AWS 會部署每小時 EventBridge 規則和關聯的資源,以管理標記的 Amazon EC2 Auto Scaling 群組的排程擴展動作。
步驟 6
除了每小時掃瞄之外,此解決方案還會追蹤組態資料表中的排程更新。更新排程時,系統會調用次要協同運作 Lambda 函數,以便 ASG 排程擴展動作根據最近的排程組態保持最新狀態。
步驟 7
此解決方案提供多種方法,以便在解決方案的組態資料表中建立或更新排程,以及用做起點的若干範例排程。組態方法包括:DynamoDB 主控台、排程器命令列介面 (CLI),以及 AWS CloudFormation 自訂資源。
步驟 8
如果啟用 AWS Orgs 模式,並在部署解決方案時提供有效的 Organization ID,Instance Scheduler on AWS 會自動將新部署的支點堆疊註冊到解決方案中樞堆疊。中樞和支點堆疊必須部署在相同的區域,以及屬於同一 AWS Organization 成員的帳戶中。
相關內容
在 AWS 上建置可擴展的現代化應用程式來實現組織轉型,同時透過 AWS 成本最佳化來最佳化成本。AWS 定價選項多樣,助您靈活地制定購買計畫,以滿足特定工作負載的需求。
此儲存庫包含實作實驗室格式的文件和程式碼,可協助您使用架構良好的最佳實務來學習、測量和建置成本最佳化的工作負載。
您可以在此處進一步了解。
本指引可協助您設定雲端財務管理 (CFM) 功能,以管理和優化雲端服務的費用。此功能包括近乎即時的可視性、成本與用量分析,以便為支出儀表板、最佳化、支出限制、退款以及異常偵測與回應等主題的決策提供支援。