本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 AWS Systems Manager 維護 Windows RDS 自動停止和啟動 Amazon 資料庫執行個體
由 Ashita Dsilva 建立 (AWS)
Summary
此模式示範如何使用 AWS Systems Manager 維護 Windows,以特定排程自動停止和啟動 Amazon Relational Database Service (AmazonRDS) 資料庫執行個體 (例如,在營業時間外關閉資料庫執行個體以降低成本)。
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 或維護 Windows,但我們建議您使用維護 Windows,因為它可以根據指派的優先順序執行一或多個任務,也可以執行 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 和 Rate 表達式。熟悉 Systems Manager。
啟動和停止RDS執行個體的許可。如需詳細資訊,請參閱 Epics 區段。
限制
Amazon RDS 資料庫執行個體一次最多可停止七天。七天後,資料庫執行個體會自動重新啟動,以確保收到任何必要的維護更新。
您無法停止屬於僅供讀取複本或具有僅供讀取複本的資料庫執行個體。
您無法在多可用區組態中停止 Amazon RDS for SQL Server 資料庫執行個體。
服務配額適用於維護 Windows 和 Systems Manager 自動化。如需服務配額的詳細資訊,請參閱 AWS 一般參考 文件中的AWS Systems Manager 端點和配額。
有些 AWS 服務 完全無法使用 AWS 區域。如需區域可用性,請參閱AWS 服務 依區域
。如需特定端點,請參閱服務端點和配額頁面,然後選擇服務的連結。
架構
下圖顯示自動停止和啟動 Amazon RDS 資料庫執行個體的工作流程。
![自動停止和啟動 Amazon RDS 資料庫執行個體的工作流程](images/pattern-img/45b81621-5674-4bcf-bf7c-75ae6f62524e/images/7d943830-716e-46a3-be44-7e668c3c01ff.png)
工作流程有下列步驟:
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 (Amazon EC2) 執行個體和其他 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 管理員 |