本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWSSupport-SetupIPMonitoringFromVPC
描述
AWSSupport-SetupIPMonitoringFromVPC在指定子网中创建亚马逊弹性计算云 (Amazon EC2) 实例,并通过持续运行 ping、MTR、traceroute 和 tracetcp 测试来监控选定的 IPs 目标IPv4 ( IPv6或)。结果存储在 Amazon CloudWatch Logs 日志中,并应用指标筛选器在 CloudWatch 控制面板中快速可视化延迟和丢包统计数据。
附加信息
CloudWatch 日志数据可用于网络故障排除和pattern/trends. Additionally, you can configure CloudWatch alarms with Amazon SNS notifications when packet loss and/or延迟达到阈值的分析。这些数据也可以在开案时使用 AWS 支持,以帮助快速隔离问题,并在调查网络问题时缩短解决时间。
文档类型
自动化
所有者
Amazon
平台
Linux、macOS、Windows
参数
-
AutomationAssumeRole
类型:字符串
描述:(可选)允许 Systems Manager Automation 代表您执行操作 AWS Identity and Access Management (IAM) 角色的 Amazon 资源名称(ARN)。如果未指定角色,Systems Manager Automation 将使用启动此运行手册的用户的权限。
-
CloudWatchLogGroupNamePrefix
类型:字符串
默认:
/AWSSupport-SetupIPMonitoringFromVPC描述:(可选)用于为测试结果创建的每个 CloudWatch 日志组的前缀。
-
CloudWatchLogGroupRetentionInDays
类型:字符串
有效值:1 | 3 | 5 | 7 | 14 | 30 | 60 | 90 | 120 | 150 | 180 | 365 | 400 | 545 | 731 | 1827 | 3653
默认:7
描述:(可选)要保留网络监控结果的天数。
-
InstanceType
类型:字符串
有效值:t2.micro | t2.small | t2.medium | t2.large | t3.micro | t3.small | t3.medium | t3.large | t4g.micro | t4g.small | t4g.medium | t4g.large
默认:t3.micro
描述:(可选) EC2救援实例的 EC2 实例类型。推荐尺寸:t3.micro。
-
SubnetId
类型:字符串
描述:(必需)监控实例的子网 ID。请注意,如果您指定私有子网,则必须确保可以访问 Internet 才能允许监控实例设置测试(也就是说,安装 CloudWatch 日志代理,与 Systems Manager 交互和 CloudWatch)。
-
目标 IPs
类型:字符串
描述:(必填)用逗号分隔的 IPv4s 和/或 IPv6s 要监视的列表。不允许使用空格。最大大小为 255 个字符。注意,如果提供的 IP 无效,则 Automation 将失败并回滚测试设置。
-
TestInstanceSecurityGroupId
类型:字符串
描述:(可选)测试实例的安全组 ID。如果未指定,则自动化会在创建实例期间创建一个实例。确保安全组允许对监控进行出站访问 IPs。
-
TestInstanceProfileName
类型:字符串
描述:(可选)测试实例的现有 IAM 实例配置文件的名称。如果未指定,则自动化会在创建实例期间创建一个实例。该角色必须具有以下权限:
logs:CreateLogStreamlogs:DescribeLogGroups、logs:DescribeLogStreams、logs:PutLogEvents和 AWS 托管策略AmazonSSMManagedInstanceCore。 -
TestInterval
类型:字符串
描述:(可选)测试间隔之间的分钟数。默认值为
1分钟,最大值为10分钟。 -
RetainDashboardAndLogsOnDeletion
类型:字符串
描述:(可选)指定
False在删除 AWS AWS CloudFormation 堆栈时删除 Amazon CloudWatch 控制面板和日志。默认值为True。默认情况下,控制面板和日志会被保留,当不再需要它们时,需要手动将其删除。
所需的 IAM 权限
AutomationAssumeRole 参数需要执行以下操作才能成功使用运行手册。
警告
建议传递TestInstanceProfileName参数或确保设置安全护栏,以防止滥用可变的 IAM 权限。
建议运行自动化的用户附加 A mazon Role SSMAutomation I AM 托管策略。此外,用户还必须将以下策略附加到其用户账户、组或角色:
如果提供了TestInstanceProfileName参数,则不需要以下 IAM 权限即可执行运行手册:
-
我是:CreateRole
-
我是:CreateInstanceProfile
-
我是:DetachRolePolicy
-
我是:AttachRolePolicy
-
我是:AddRoleToInstanceProfile
-
我是:RemoveRoleFromInstanceProfile
-
我是:DeleteRole
-
我是:DeleteRolePolicy
-
我是:DeleteInstanceProfile
文档步骤
-
aws:executeAwsApi-描述提供的子网以获取 VPC ID 和 IPv6 CIDR 区块关联状态。 -
aws:executeScript-验证提供的目标在语法上是否正确 IPv4 和/或 IPv6 地址,获取所选实例类型的架构,并验证子网是否 IPs 存在 IPv6 池关联(如果有目标 IP)。 IPv6 -
aws:createStack-创建一个 AWS CloudFormation 堆栈,用于预置测试 Amazon EC2 实例、IAM 实例配置文件(如果未提供)、安全组(如果未提供)、 CloudWatch 日志组和 CloudWatch 控制面板。(清理)如果步骤失败:
aws:executeScript-描述 CloudFormation 堆栈事件以确定失败原因。aws:deleteStack-删除 CloudFormation 堆栈和所有相关资源。 -
aws:waitForAwsResourceProperty-等待 CloudFormation 堆栈完成创建。(清理)如果步骤失败:
aws:executeScript-描述 CloudFormation 堆栈事件以确定失败原因。aws:deleteStack-删除 CloudFormation 堆栈和所有相关资源。 -
aws:executeScript-描述用于获取测试实例 ID、安全组 ID、IAM 角色、实例配置文件和控制面板名称的 CloudFormation 堆栈资源。(清理)如果步骤失败:
aws:executeScript-描述 CloudFormation 堆栈事件以确定失败原因。aws:deleteStack-删除 CloudFormation 堆栈和所有相关资源。 -
aws:waitForAwsResourceProperty- 等待测试实例变为托管实例。(清理)如果步骤失败:
aws:deleteStack-删除 CloudFormation 堆栈和所有相关资源。 -
aws:runCommand-在测试实例上安装 CloudWatch 代理。(清理)如果步骤失败:
aws:deleteStack-删除 CloudFormation 堆栈和所有相关资源。 -
aws:runCommand-为所提供的每个脚本定义网络测试脚本(MTR、ping、tracepath 和 traceroute)。 IPs(清理)如果步骤失败:
aws:deleteStack-删除 CloudFormation 堆栈和所有相关资源。 -
aws:runCommand-使用每 TestInterval 分钟运行一次 cronjobs 启动网络测试并安排后续执行。(清理)如果步骤失败:
aws:deleteStack-删除 CloudFormation 堆栈和所有相关资源。 -
aws:runCommand-将 CloudWatch 代理配置为将测试结果从推送/home/ec2-user/logs/到 CloudWatch 日志。(清理)如果步骤失败:
aws:deleteStack-删除 CloudFormation 堆栈和所有相关资源。 -
aws:runCommand-为中的测试结果配置日志轮换/home/ec2-user/logs/。 -
aws:executeScript-为 CloudFormation 堆栈创建的所有 CloudWatch 日志组设置保留策略。 -
aws:executeScript-为 ping 延迟和 ping 数据包丢失创建 CloudWatch 日志组指标过滤器。(清理)如果步骤失败:
aws:deleteStack-删除 CloudFormation 堆栈和所有相关资源。 -
aws:executeScript-更新 CloudWatch 仪表板以包含用于显示 ping 延迟和 ping 数据包丢失统计信息的控件。(清理)如果步骤失败:
aws:executeAwsApi-删除 CloudWatch 仪表板(如果存在)。aws:deleteStack-删除 CloudFormation 堆栈和所有相关资源。 -
aws:branch-评估 SleepTime 参数。如果设置为0,则自动化将在不删除堆栈的情况下结束。 -
aws:sleep-等待指定的 SleepTime 持续时间后再删除 CloudFormation 堆栈。 -
aws:deleteStack-删除 CloudFormation 堆栈。根据 RetainDashboardAndLogsOnDeletion 参数, CloudWatch 控制面板和日志组要么保留,要么删除。(清理)如果堆栈删除失败:
aws:executeScript-描述 CloudFormation 堆栈事件以确定删除失败的原因。
输出
updateCloudWatch仪表板。 StackUrl - CloudFormation 堆栈的网址。
updateCloudWatch仪表板。 DashboardUrl - CloudWatch 仪表板的网址。
updateCloudWatch仪表板。 DashboardName - CloudWatch 仪表板的名称。
updateCloudWatch仪表板。 LogGroups -创建的 CloudWatch 日志组列表。
describeStackResources。 HelperInstanceId -测试实例 ID。
describeStackResources。 StackName - CloudFormation 堆栈名称。