文档

定时批量进行ECS健康诊断

更新时间:

场景介绍

ECS实例健康诊断能够帮助用户对实例的系统状态、网络状态、磁盘状态等进行全方位的诊断,帮助用户了解实例的健康状态,及时发现并解决常见的问题。同时,用户可能需要对指定的一批实例周期性的进行健康体检,以及时发现潜在的风险并排除。我们通过提供预定义好的OOS公共模板(ACS-ECS-ScheduleToExecuteECSDiagnosticReports),借助于OOS强大的自动运维编排功能,轻松帮用户定时、批量的诊断实例并获取异常结果。

操作步骤

在OOS控制台选择公共模板

  1. 登录OOS控制台

  2. 选择公共任务模板并搜索ACS-ECS-ScheduleToExecuteECSDiagnosticReports

image.png

使用OOS公共模板创建诊断任务

  1. 点击创建执行进入具体配置页面。image

    • 执行描述:用户自定义的描述文本信息

    • 模板类型:公共任务模板

    • 模板选择:ACS-ECS-ScheduleToExecuteECSDiagnosticReports

    • 执行模式:自动执行

    • 资源组:用户自定义该OOS任务所属的资源组

    • 标签:用户自定义该OOS任务的标签

  2. 参数配置。

    参数主要分为4个部分:设置执行周期,设置地域、所选实例、执行并发,设置执行的RAM角色,设置类钉钉的通知参数。

    image

    • 定时类型:

      • 立即执行:创建任务后立即执行,不会周期性重复执行

      • 仅在指定时间执行一次:仅在指定时间执行一次。

      • 周期性重复执行:按照cron格式指定的时间周期性执行

    • 重复频率的时区:默认是东八区北京时间

    • 规则结束时间:任务结束的时间,默认是一个月

    image.png

    • 地域ID:指定运行的阿里云地域,可以通过DescribeRegions - 查询可以使用的阿里云地域查询

    • targets: 可以按照多种方式选择,并且在每次运行时,具体执行的实例列表会根据指定的条件重新刷新。

      • 手动选择实例:直接指定运行的一个或者多个实例

      • 指定实例标签:通过设置匹配的标签,动态指定目标实例

      • 指定实例资源组:通过设置资源组的标签,动态指定一组实例

      • 上传csv文件:人工上传实例列表

      • 选择全部:该地域下所有实例

      • 指定配置清单条件:可以指定匹配多个条件的实例,需要了解OOS语法。

    • rateControl: 批量执行时的并发控制

      • 速率控制类型:并发控制

      • 并发速率:一次执行多少个实例

      • 最大错误次数:执行几次或者百分比的失败次数则停止

    image.png

    • 设置执行的RAM角色:OOS以什么角色执行对应的操作和API。可以参考为OOS服务设置RAM权限进行设置,其中执行批量实例健康诊断,需要以下三个API的操作权限:

"ecs:CreateDiagnosticReport"
"ecs:DescribeDiagnosticReportAttributes"
"ecs:DescribeInstances"

为指定的角色赋予AliyunECSFullAccess权限即可,或自定义策略包含以上三个API的操作权限。

image.png

image.png

  • 是否通知异常结果:默认不通知,注意该通知只支持类钉钉的协议格式。

  • 通知地址:类钉钉应用的Webhook地址

  • 通知@:通知的内容中添加@人员。

  1. 创建执行任务

    点击创建开始执行该任务

    image.png

查看历史执行结果

在OOS控制台的任务执行管理中可以查看任务的执行情况。

image.png

执行结果是输出有异常的实例信息和异常信息,更进一步的详细说明可以通过IssueId诊断指标与诊断结果条目说明通过查询诊断结果条目ID获取。例如:

- ResourceId: i-uf659o9rxxey22fpw1do
  HasPublicIp: true
  MetricSetId: dms-instancedefault
  MetricResult:
    Status: Finished
    MetricId: Instance.SGIngress
    Issues:
      Issue:
        - OccurrenceTime: 2024-04-11T09:37Z
          Additional: '{"Policy":"drop","Port":"22","Service":"SSH","Effect":"INSTANCE-SG-SSH-DISABLED","Protocol":"TCP","Direction":"ingress"}'
          Severity: Info
          IssueId: Instance.Network.SSHPortRuleDeny
        - OccurrenceTime: 2024-04-11T09:37Z
          Additional: '{"Policy":"drop","Port":"-1","Service":"PING","Effect":"INSTANCE-SG-PING-DISABLED","Protocol":"ICMP","Direction":"ingress"}'
          Severity: Info
          IssueId: Instance.SgRule.PingPortDeny
    Severity: Info
    MetricCategory: ECSService.SecurityGroup

根据IssueId:Instance.Network.SSHPortRuleDeny获取的详细说明

image.png

  • 本页导读
文档反馈