如何在AWS SSM中创建启停RDS与Elasticsearch实例的自动化流程?
用AWS Systems Manager自动化启停RDS与Elasticsearch实例
一、自动化启停RDS实例
AWS没有默认的SSM自动化文档用于RDS启停,你可以自行创建自定义自动化文档实现:
1. 创建停止RDS实例的自动化文档
可通过SSM控制台或CLI创建,以下是YAML格式的示例文档内容:
description: Stop an RDS DB Instance schemaVersion: '0.3' parameters: DBInstanceIdentifier: type: String description: "The identifier of the RDS DB instance to stop" mainSteps: - name: StopDBInstance action: 'aws:executeAwsApi' inputs: Service: rds Api: StopDBInstance DBInstanceIdentifier: '{{ DBInstanceIdentifier }}'
创建时选择Automation类型,填入上述内容即可,该文档通过调用RDS的StopDBInstance API完成实例停止操作。
2. 创建启动RDS实例的自动化文档
逻辑与停止类似,仅需替换调用的API:
description: Start an RDS DB Instance schemaVersion: '0.3' parameters: DBInstanceIdentifier: type: String description: "The identifier of the RDS DB instance to start" mainSteps: - name: StartDBInstance action: 'aws:executeAwsApi' inputs: Service: rds Api: StartDBInstance DBInstanceIdentifier: '{{ DBInstanceIdentifier }}'
3. 配置IAM权限
确保SSM自动化执行角色拥有rds:StopDBInstance和rds:StartDBInstance权限,可在IAM中给角色附加如下自定义策略:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds:StopDBInstance", "rds:StartDBInstance" ], "Resource": "arn:aws:rds:*:*:db:<你的RDS实例ID>" } ] }
二、自动化启停Elasticsearch(Amazon OpenSearch Service)实例
同样没有默认文档,自定义实现方式如下:
1. 创建停止OpenSearch域的自动化文档
description: Stop an Amazon OpenSearch Service Domain schemaVersion: '0.3' parameters: DomainName: type: String description: "The name of the OpenSearch domain to stop" mainSteps: - name: StopDomain action: 'aws:executeAwsApi' inputs: Service: opensearch Api: StopDomain DomainName: '{{ DomainName }}'
2. 创建启动OpenSearch域的自动化文档
description: Start an Amazon OpenSearch Service Domain schemaVersion: '0.3' parameters: DomainName: type: String description: "The name of the OpenSearch domain to start" mainSteps: - name: StartDomain action: 'aws:executeAwsApi' inputs: Service: opensearch Api: StartDomain DomainName: '{{ DomainName }}'
3. 配置IAM权限
给SSM执行角色附加opensearch:StopDomain和opensearch:StartDomain权限:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "opensearch:StopDomain", "opensearch:StartDomain" ], "Resource": "arn:aws:es:*:*:domain:<你的OpenSearch域名>" } ] }
使用方式
文档创建完成后,可在SSM控制台的自动化页面执行文档并传入对应实例ID/域名参数,也可通过CLI调用aws ssm start-automation-execution命令触发,还能结合CloudWatch Events设置定时启停规则。
内容的提问来源于stack exchange,提问作者Chinmaya B
相关产品推荐
相关产品推荐

