

• AWS Systems Manager CloudWatch 控制面板在 2026 年 4 月 30 日之后将不再可用。客户可以像现在一样继续使用 Amazon CloudWatch 控制台来查看、创建和管理其 Amazon CloudWatch 控制面板。有关更多信息，请参阅 [Amazon CloudWatch 控制面板文档](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)。

# 使用 Run Command 发送返回状态通知的命令
<a name="monitoring-sns-rc-send"></a>

以下过程显示了如何使用 AWS Command Line Interface（AWS CLI）或 AWS Systems Manager 控制台通过配置为返回状态通知的 Run Command（AWS Systems Manager 中的一项工具）来发送命令。

## 发送返回通知的 Run Command（控制台）
<a name="monitoring-sns-rc-send-console"></a>

可以使用以下过程，通过配置为使用 Systems Manager 控制台返回状态通知的 Run Command 来发送命令。

**发送返回通知的命令（控制台）**

1. 访问 [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/)，打开 AWS Systems Manager 控制台。

1. 在导航窗格中，请选择 **Run Command**。

1. 选择 **Run command（运行命令）**。

1. 在**命令文档**列表中，请选择 Systems Manager 文档。

1. 在 **Command parameters (命令参数)** 部分中，为必需的参数指定值。

1. 在 **Targets**（目标）部分中，通过指定标签、手动选择实例或边缘设备或指定资源组，选择要在其上运行此操作的托管式节点。
**提示**  
如果未列出您希望看到的托管式节点，请参阅 [排除托管式节点可用性的问题](fleet-manager-troubleshooting-managed-nodes.md) 以获取故障排除技巧。

1. 对于 **Other parameters（其他参数）**：
   + 对于 **Comment（注释）**，请输入有关此命令的信息。
   + 对于 **Timeout (seconds) (超时 (秒))**，请指定在整个命令执行失败之前系统等待的秒数。

1. 对于 **Rate control（速率控制）**：
   + 对于 **Concurrency**（并发），请指定要同时运行该命令的托管式节点的数量或百分比。
**注意**  
如果您通过指定应用于托管式节点的标签或指定 AWS Resource Groups 来选择目标，但不确定有多少个托管式节点已被设为目标，则可通过指定百分比来限制可同时运行该文档的目标的数量。
   + 对于 **Error threshold**（错误阈值），请指定当命令在一定数量或百分比的节点上失败后，何时在其他托管式节点上停止运行该命令。例如，如果您指定三个错误，Systems Manager 将在收到第四个错误时停止发送该命令。仍在处理该命令的托管式节点也可能发送错误。

1. （可选）对于 **输出选项**，要将命令输出保存到文件，请选中 **将命令输出写入 S3 存储桶** 框。在输入框中输入存储桶和前缀（文件夹）名称。
**注意**  
授予将数据写入 S3 存储桶的能力的 S3 权限，是分配给实例的实例配置文件（适用于 EC2 实例）或 IAM 服务角色（混合激活的计算机）的权限，而不是执行此任务的 IAM 用户的权限。有关更多信息，请参阅[配置 Systems Manager 所需的实例权限](setup-instance-permissions.md)或[为混合环境创建 IAM 服务角色](hybrid-multicloud-service-role.md)。此外，如果指定的 S3 存储桶位于不同的 AWS 账户 中，请确保与该托管式节点关联的实例配置文件或 IAM 服务角色具有写入该存储桶的所需权限。

1. 在 **SNS Notifications (SNS 通知)** 部分中，选择 **Enable SNS notifications (启用 SNS 通知)**。

1. 对于 **IAM role**（IAM 角色），选择您在[使用 Amazon SNS 通知监控 Systems Manager 状态更改](monitoring-sns-notifications.md)的“任务 3”中创建的 Amazon SNS IAM 角色 ARN。

1. 对于 **SNS topic (SNS 主题)**，请输入要使用的 Amazon SNS 主题 ARN。

1. 对于 **Event notifications (事件通知)**，请选择要针对其接收通知的事件。

1. 对于 **Change notifications**（更改通知），选择 **Command status changes**（命令状态更改）以仅接收命令摘要的通知，或者 **Command status on each instance changes**（每个实例的命令状态更改）以接收发送到多个节点的命令的每个副本。

1. 选择**运行**。

1. 检查您的电子邮件以查找来自 Amazon SNS 的邮件，然后打开该电子邮件。Amazon SNS 可能需要几分钟来发送该电子邮件。

## 发送返回通知的 Run Command (CLI)
<a name="monitoring-sns-rc-send-cli"></a>

可以使用以下过程，通过配置为使用 AWS CLI 返回状态通知的 Run Command 来发送命令。

**发送返回通知的命令 (CLI)**

1. 打开 AWS CLI。

1. 在以下命令中指定参数，以基于托管式节点 ID 设定目标。

   ```
   aws ssm send-command --instance-ids "ID-1, ID-2" --document-name "Name" --parameters '{"commands":["input"]}' --service-role "SNSRoleARN" --notification-config '{"NotificationArn":"SNSTopicName","NotificationEvents":["All"],"NotificationType":"Command"}'
   ```

   以下为示例。

   ```
   aws ssm send-command --instance-ids "i-02573cafcfEXAMPLE, i-0471e04240EXAMPLE" --document-name "AWS-RunPowerShellScript" --parameters '{"commands":["Get-Process"]}' --service-role "arn:aws:iam::111122223333:role/SNS_Role" --notification-config '{"NotificationArn":"arn:aws:sns:us-east-1:111122223333:SNSTopic","NotificationEvents":["All"],"NotificationType":"Command"}'
   ```

**替代命令**  
在以下命令中指定参数，以使用标签设定托管实例目标。

   ```
   aws ssm send-command --targets "Key=tag:TagName,Values=TagKey" --document-name "Name" --parameters '{"commands":["input"]}' --service-role "SNSRoleARN" --notification-config '{"NotificationArn":"SNSTopicName","NotificationEvents":["All"],"NotificationType":"Command"}'
   ```

   以下为示例。

   ```
   aws ssm send-command --targets "Key=tag:Environment,Values=Dev" --document-name "AWS-RunPowerShellScript" --parameters '{"commands":["Get-Process"]}' --service-role "arn:aws:iam::111122223333:role/SNS_Role" --notification-config '{"NotificationArn":"arn:aws:sns:us-east-1:111122223333:SNSTopic","NotificationEvents":["All"],"NotificationType":"Command"}'
   ```

1. 按 **Enter** 键。

1. 检查您的电子邮件以查找来自 Amazon SNS 的邮件，然后打开该电子邮件。Amazon SNS 可能需要几分钟来发送该电子邮件。

有关更多信息，请参阅**《AWS CLI 命令参考》中的 [https://docs.aws.amazon.com/cli/latest/reference/ssm/send-command.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/send-command.html)。