You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 04:46:08