我想使用 AWS Service Health Dashboard (AWS SHD) Notifier 工具来检查 AWS 服务是否存在问题。
简短描述
最佳做法是使用 AWS 用户通知服务或 Amazon EventBridge 发送公共事件通知。用户通知服务为设置和管理您的 AWS 通知提供了一个集中的位置。AWS Health 向您的主区域和备用 AWS 区域的 EventBridge 发布公共事件。
AWS Health SHD Notifier 向 Amazon Simple Notification Service (Amazon SNS) 主题、Amazon Chime webhook 或 Slack webhook 发送服务状态更新。有关详细信息,请参阅 GitHub 网站上的 AWS Health SHD Notifier。
解决方法
**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI。
设置用户通知
要设置用户通知,请创建通知配置。
使用 EventBridge 发送公共事件通知
要从 EventBridge 接收 AWS Health 事件,请创建对 Amazon EventBridge 中的事件做出反应的规则。
安装 AWS SHD Notifier 工具
完成以下步骤:
-
在终端或 CLI 中运行以下命令:
git clone https://github.com/aws/aws-health-tools.git && cd aws-health-tools
输出示例:
Cloning into 'aws-health-tools'...
remote: Enumerating objects...
remote: Counting objects...
remote: Compressing objects...
remote: Total XXXX (delta YY), reused ZZZZ
Receiving objects: 100%
Resolving deltas: 100%
-
运行以下命令:
git filter-branch --subdirectory-filter shd-notifier/ HEAD
输出示例:
Rewrite ... (X/Y) (Z%)
...
Ref 'HEAD' was rewritten
在 Slack、Amazon Chime 或 Amazon SNS 上创建通知
要创建通知类型,请参阅以下文档:
运行 CloudFormation 模板
完成以下步骤:
- 打开 AWS CloudFormation 控制台。
- 在导航窗格中,选择 Stacks(堆栈),然后选择 Create stack(创建堆栈)。
- 对于 Prerequisite - Prepare template(先决条件 - 准备模板),选择 Choose an existing template(选择现有模板)。
- 在 Specify template(指定模板)下,选择 Amazon S3 URL。
- 输入以下 Amazon Simple Storage Service (Amazon S3) 模板 URL:
https://s3.amazonaws.com/aws-health-tools-assets/cloudformation-templates/shd-notifier.yml
- 选择 Next(下一步)。
- 对于 Stack name(堆栈名称),输入 ShdNotifier。
- 选择 Next(下一步)。
- 选择 I acknowledge that AWS CloudFormation might create IAM resources(我确认 AWS CloudFormation 可能会创建 IAM 资源)。
- 选择 Next(下一步),然后选择 Submit(提交)。
以下为端点数组示例:
- Chime: ["https://hooks.chime.aws/incomingwebhooks/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXX?token=XXXXXXXXXXXXXXXXXXXX"]
- Slack: ["arn:aws:sns:us-east-1:111122223333:MY_TOPIC_NAME"]
- Amazon SNS: ["https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"]
运行 shd-notifier
在 AWS CLI 上运行 deploy.sh 文件:
/bin/bash deploy.sh Health-Event us-east-1
**注意:**请将 us-east-1 替换为您的区域。