您可以通过容器服务Kubernetes版控制台同时诊断多个节点并采集相关日志信息。本文介绍如何一键采集被诊断节点的日志。

选择节点进行诊断

  1. 登录容器服务管理控制台
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的详情
  4. 可选:授权将日志采集到OSS。
    如果您希望将诊断日志采集到OSS中,需要给节点授权,向OSS指定目录写入数据。
    1. 集群信息页面,单击集群资源页签,单击Worker RAM角色右侧链接。
    2. 在RAM角色基本信息的权限管理页签,单击以k8sWorkerRole为前缀的权限策略名称
    3. 策略内容页签下,单击修改策略内容
    4. 通过可视化编辑Beta模式或脚本编辑模式修改权限策略内容,增加以下授权规则,并填入您的Bucket名称和存放目录。修改完成后单击下一步
      {
          "Action": [
              "oss:GetBucket",
              "oss:PutObject",
              "oss:GetObject"
          ],
          "Resource": [
              "acs:oss:*:*:<bucket名称>/<存放诊断日志的目录>/*"
          ],
          "Effect": "Allow"
      },
      {
          "Action": [
              "oss:GetBucketInfo"
          ],
          "Resource": [
              "acs:oss:*:*:<bucket名称>"
          ],
          "Effect": "Allow"
      }
  5. 在集群管理页左侧导航栏中,选择节点管理 > 节点
  6. 在控制台左侧导航栏,选择集群 > 节点
  7. 节点页面,选中需要被诊断的节点,然后单击节点诊断
  8. 节点诊断对话框中,执行以下操作。
    • 选中上传到OSS,然后执行以下操作。

      您可以将采集日志上传到OSS Bucket中。进行此步骤前,需要授权角色将日志采集到OSS,请参见4

      1. 填写OSS Bucket的名称和目录。

        例如,希望在myBucket/acs/diagnose目录中上传诊断日志,您可以填入myBucket/acs/diagnose

        节点诊断
      2. 设置是否选中共享诊断日志

        如果选中系统会为诊断日志生成一个临时链接,您可以直接下载链接,也可以将链接共享给ACK支持团队协助诊断。

      3. 单击确定

        完成上述操作后,您可以在控制台获取云助手任务ID, 根据此ID在ECS云助手控制台查看诊断脚本的执行日志。

      4. 节点诊断对话框,单击在云助手控制台查看诊断脚本执行日志链接。
      5. 云助手控制台页面,选择运维与监控 > 发送命令/文件(云助手),单击命令执行结果页签,查看相关诊断日志文件。
      6. 找到目标命令执行ID,然后在其右侧单击查看
        您可以在OSS控制台中对应的目录查看采集的诊断文件。诊断文件
    • 不选中上传到OSS,然后单击确认

      如果不选中上传到OSS,您无需授权角色将日志采集到OSS。您可登录ECS管理控制台,选择运维与监控 > 发送命令/文件(云助手) > 命令执行结果,查看相关诊断日志文件。