本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 AWS Systems Manager 維護 Windows RDS 自動停止和啟動 Amazon 資料庫執行個體
由 Ashita Dsilva 建立 (AWS)
環境:生產 | 技術:管理與治理;成本管理;資料庫 | AWS 服務:AWSSystems Manager;Amazon RDS |
Summary
此模式示範如何使用 AWS Systems Manager 維護 Windows ,在特定排程 (例如,在工作時間之外關閉資料庫執行個體以降低成本RDS) 自動停止和啟動 Amazon Relational Database Service (Amazon ) 資料庫執行個體。
AWS Systems Manager 自動化提供 AWS-StopRdsInstance
和 AWS-StartRdsInstance
Runbook,以停止和啟動 Amazon RDS 資料庫執行個體。這表示您不需要使用 AWS Lambda 函數撰寫自訂邏輯或建立 Amazon CloudWatch Events 規則。
Systems Manager 提供兩種排程任務的功能:State Manager 和維護 Windows 。State Manager 會為您的 Amazon Web Services (AWS) 帳戶中的資源設定並維護所需的狀態組態,一次或依特定排程進行設定。維護 Windows 會在特定時段內,對帳戶中的資源執行任務。雖然您可以將此模式的方法與 State Manager 或維護時段搭配使用,但我們建議您使用維護時段,因為它可以根據指派的優先順序執行一或多個任務,也可以執行 AWS Lambda 函數和 AWS Step Functions 任務。如需 State Manager 和維護 Windows 的詳細資訊,請參閱 Systems Manager 文件中的在 State Manager 和維護 Windows 之間進行選擇。
此模式提供詳細步驟,以設定兩個使用 cron 表達式來停止然後啟動 Amazon RDS 資料庫執行個體的個別維護時段。
先決條件和限制
先決條件
作用中 AWS 帳戶。
您要在特定排程上停止和啟動的現有 RDS Amazon 資料庫執行個體。
所需排程的 Cron 表達式。例如,表達式會在每週一、週二、週三、週四和週五的 09:00
cron(0 9 ? * MON-FRI *)
執行任務。如需詳細資訊,請參閱 Systems Manager 文件中的維護時段的 Cron 和速率表達式。熟悉 Systems Manager。
啟動和停止RDS執行個體的許可。如需詳細資訊,請參閱 Epics 區段。
限制
Amazon RDS 資料庫執行個體一次最多可停止七天。七天後,資料庫執行個體會自動重新啟動,以確保收到任何必要的維護更新。
您無法停止作為僅供讀取複本或具有僅供讀取複本的資料庫執行個體。
您無法在多可用區組態中停止 Amazon RDS for SQL Server 資料庫執行個體。
服務配額適用於 Maintenance Windows 和 Systems Manager Automation。如需服務配額的詳細資訊,請參閱 AWS 一般參考 文件中的AWS Systems Manager 端點和配額。
有些 AWS 服務 並非所有 都提供 AWS 區域。如需區域可用性,請參閱AWS 服務 依區域
。如需特定端點,請參閱服務端點和配額頁面,然後選擇服務的連結。
架構
下圖顯示自動停止和啟動 Amazon RDS 資料庫執行個體的工作流程。
工作流程有下列步驟:
1. 建立維護時段並使用 cron 運算式來定義 Amazon RDS 資料庫執行個體的停止和啟動排程。
2. 使用 AWS-StopRdsInstance
或 AWS-StartRdsInstance
Runbook 將 Systems Manager Automation 任務註冊至維護時段。
3. 為您的 Amazon RDS 資料庫執行個體使用標籤型資源群組,向維護時段註冊目標。
技術堆疊
AWS CloudFormation
AWS Identity and Access Management (IAM)
Amazon RDS
Systems Manager
自動化和擴展
您可以標記所需的 Amazon RDS 資料庫執行個體、建立包含所有已標記資料庫RDS執行個體的資源群組,以及將此資源群組註冊為維護時段的目標,以同時停止和啟動多個 Amazon 資料庫執行個體。
工具
AWS CloudFormation 是一項協助您建立模型和設定 AWS 資源的服務。
AWS Identity and Access Management (IAM) 是一種 Web 服務,可協助您安全地控制對 AWS 資源的存取。
Amazon Relational Database Service (Amazon RDS) 是一種 Web 服務,可讓您更輕鬆地在 中設定、操作和擴展關聯式資料庫 AWS 雲端。
AWS Resource Groups 可協助您將 AWS 資源組織成群組、標記資源,以及管理、監控和自動化群組資源上的任務。
AWS Systems Manager 是 ,您可以使用 AWS 服務 它在 上檢視和控制您的基礎設施 AWS。此模式使用 Systems Manager 的下列功能:
AWS Systems Manager 自動化可簡化 Amazon Elastic Compute Cloud (AmazonEC2) 執行個體和其他 AWS 資源的常見維護和部署任務。
AWS Systems Manager 維護 Windows 可協助您定義何時在執行個體上執行可能中斷動作的排程。
史詩
任務 | 描述 | 所需的技能 |
---|---|---|
設定 Systems Manager Automation IAM的服務角色。 | 登入 AWS Management Console 並建立 Systems Manager Automation 的服務角色。您可以使用下列兩種方法之一來建立此服務角色: Systems Manager Automation 工作流程會使用服務角色來對 Amazon RDS 資料庫執行個體執行開始和停止動作,RDS藉此叫用 Amazon。 服務角色必須使用下列內嵌政策進行設定,該政策具有啟動和停止 Amazon RDS 資料庫執行個體的許可:
請確定您使用 Amazon 資料庫執行個體的 Amazon Resource Name (ARN) RDS 如果您不熟悉使用IAM政策和角色,請遵循 Amazon 排程RDS停止和開始使用 AWS Systems Manager 重要 :請務必記錄服務角色ARN的 。 | AWS 管理員 |
任務 | 描述 | 所需的技能 |
---|---|---|
標記 Amazon RDS 資料庫執行個體。 | 開啟 Amazon RDS主控台 如需詳細資訊,請參閱 Amazon RDS 文件中的新增、列出和移除標籤。 | AWS 管理員 |
為您的標記 Amazon RDS 資料庫執行個體建立資源群組。 | 開啟AWS Resource Groups 主控台 在分組條件 下,請確定您AWSDBInstance為資源類型選擇 ::RDS:::,然後提供標籤的鍵值對 (例如「動作StartStop」)。這可確保服務只會檢查 Amazon RDS 資料庫執行個體,而不是具有此標籤的其他資源。請務必記錄資源群組的名稱。 如需詳細資訊和詳細步驟,請參閱在 AWS Resource Groups 文件中建立標籤型查詢和建立群組。 | AWS 管理員 |
任務 | 描述 | 所需的技能 |
---|---|---|
建立維護時段。 |
重要 :停止資料庫執行個體的任務會在啟動時幾乎立即執行,而且不會跨越維護時段的整個期間。此模式提供持續時間和停止啟動任務的最小值,因為它們是維護時段的必要參數。 如需詳細資訊和詳細步驟,請參閱 Systems Manager 文件中的建立維護時段 (主控台)。 | AWS 管理員 |
將目標指派給維護時段。 |
如需詳細資訊和詳細步驟,請參閱 Systems Manager 文件中的將目標指派給維護時段 (主控台)。 | AWS 管理員 |
將任務指派給維護時段。 |
重要:服務角色選項定義維護時段執行任務所需的服務角色。不過,此角色與您先前為 Systems Manager Automation 建立的服務角色不同。 如需詳細資訊和詳細步驟,請參閱 Systems Manager 文件中的將任務指派給維護時段 (主控台)。 | AWS 管理員 |
任務 | 描述 | 所需的技能 |
---|---|---|
設定維護時段以啟動 Amazon RDS 資料庫執行個體。 | 重複設定維護時段中的步驟,以停止 Amazon RDS 資料庫執行個體史詩級設定另一個維護時段,以在排程時間啟動 Amazon RDS 資料庫執行個體。 重要 :當您設定維護時段以啟動資料庫執行個體時,必須進行下列變更:
| AWS 管理員 |