资源监控是Kubernetes中最常见的监控方式,通过资源监控可以快速查看负载的CPU、内存、网络等指标的使用率。在阿里云容器服务中,资源监控已经与云监控互通,新建的集群默认安装与集成云监控。本文介绍如何在控制台查看基础资源的监控及如何配置报警。

前提条件

若需要使用最新版本的云监控,容器服务Kubernetes版集群的metrics-server组件必须升级到V0.3.8.5及以上版本。具体操作,请参见 升级安装Kubernetes集群的metrics-server组件

功能特性

  • 提供全集群视角指标,洞悉集群概况。集群概览
  • 更专业的监控与报警能力。

    老版云监控容器监控功能全面升级,提供更加专业的容器场景基础监控能力。从集群命名空间、节点、工作负载及Pod等原生Kubernetes概念视角提供关键指标监控能力。报警功能全面升级,支持Kubernetes场景不同视角下配置对应报警规则。

  • 更合适的容器场景指标。

    在宿主机基础设施层、容器PaaS层及Kubernetes调度层不同场景下使用最合适的指标。例如,容器中影响Kubernetes调度的内存指标,会使用容器工作内存的专用指标,与宿主机的内存Usage区分。

进入资源监控

方式一:从容器服务控制台进入资源监控

  1. 登录容器服务管理控制台
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的详情
  4. 在集群管理页左侧导航栏中,选择工作负载 > 无状态
  5. 无状态页面,单击目标应用右侧操作列下的监控,进入云监控的容器监控页面。
    控制台查看容器监控
  6. 您可以单击部署应用容器组列表容器组热点页签查看监控数据。

方式二:从云监控控制台进入资源监控

  1. 登录云监控控制台
  2. 在控制台左侧导航栏中,单击Kubernetes容器监控
  3. 容器监控页面中,单击目标集群名称或者目标集群右侧操作列下的查看详情
    说明 首次访问时,页面会出现授权提示,单击 授权后才可进入目标集群页面。
  4. 在目标集群页面,可从集群概览节点命名空间工作负载中目标应用等视角查看监控数据。
    云监控集群

配置指标报警的场景

场景 场景描述 指标报警配置
集群水位健康状况,以集群或节点配置水位报警。 当集群或集群节点发生水位等指标异常时,第一时间上报集群资源异常,避免影响业务。此场景推荐以集群或集群节点的方式配置水位报警规则。 配置报警规则时,选择资源范围集群节点,配置以整个集群、集群任一节点出现指标异常时的报警规则。选择节点时配置全部节点,则当该集群的任一节点出现规则描述中的指标异常时,则触发报警。
异常容器水位状况,以对应集群下的任一Pod统一报警。 当集群发生资源水位异常情况时,通常需要分解问题,找到具体Pod。此场景推荐以该集群中的任一Pod的方式配置水位报警规则。 配置报警规则时,选择资源范围容器组Pod,选择命名空间及容器组Pod为全部,则当该集群的任一Pod出现规则描述中的指标异常时,则触发报警。
按命名空间多租户使用集群场景,针对对应集群下的指定命名空间的Pod设置报警。 通常一个集群会被多个应用共享,通过命名空间来拆分应用是一种Kubernetes的常用应用多租户方式。当应用所在的命名空间发生水位异常时,您可通过报警第一时间感知。此场景推荐以指定命名空间下任一Pod的方式配置水位报警规则。 配置报警规则时,选择资源范围容器组Pod,选择名字空间为对应应用所在命名空间,选择容器组Pod全部,则当该命名空间下的任一Pod出现规则描述中的指标异常时,则触发报警。
应用指标水位状况预警,针对对应集群下指定命名空间的指定应用(工作负载)的所属Pod设置报警。 通常一个集群会被多个应用共享,通过工作负载来拆分应用是一种Kubernetes的常用应用多租户方式,例如一个应用对应一个Deployment。当应用所对应的Deployment发生水位异常时,您可通过报警第一时间感知。此场景推荐以指定工作负载下任一Pod的方式配置水位报警规则。 配置报警规则时,选择资源范围容器组Pod,选择名字空间为对应应用所在命名空间,选择应用的工作负载类型。目前支持的Kubernetes工作负载类型有:无状态(Deployment)、有状态(StatefulSet)、守护进程集(DaemonSet)、任务(Job)、定时任务(CronJob)。选择容器组(Pod)为任一Pod,则当该工作负载下的任一Pod出现规则描述中的指标异常时,则触发报警。

配置指标报警规则

步骤一:创建报警联系人并关联报警联系组

  1. 登录云监控控制台
  2. 在控制台左侧导航栏中,选择报警服务 > 报警联系人
  3. 创建报警联系人,并添加到对应的报警联系组。
    具体操作,请参见 创建报警联系人或报警联系组

步骤二:创建指标报警规则

  1. 登录云监控控制台
  2. 在控制台左侧导航栏中,单击Kubernetes容器监控
  3. 容器监控页面,单击目标集群对应操作列的报警规则
  4. 报警规则页面,单击创建报警规则
  5. 创建报警规则面板,设置报警规则相关参数。
    参数 描述
    资源范围 报警规则的作用范围。取值:
    • 集群:报警规则作用于目标集群。
    • 节点:报警规则作用于目标集群的全部节点或指定节点。
    • 容器组(Pod):报警规则作用于目标集群的指定命名空间下应用中的全部容器组或指定容器组。选择全部,则表示任意该类型的实例触发了规则描述中的阈值规则,则报警。
    规则描述 报警规则的主体。

    配置具体报警指标、阈值及报警级别。关于容器组指标的监控项,请参见容器服务Kubernetes版(新版)

    当监控数据满足指定条件时,触发报警规则。

    通道沉默周期 报警发生后如果未恢复正常,间隔多久重复发送一次报警通知。
    生效时间 报警规则的生效时间。报警规则只在生效时间内才会检查监控数据是否需要报警。
    报警回调 云监控会将报警信息通过POST请求推送到该地址,目前仅支持HTTP协议。
    说明 建议您填写公网可访问的URL。
    报警联系组 用于接收报警通知的联系人组。
  6. 单击确定,完成报警规则配置。
    报警规则页面,可以看到已创建的报警规则。

结果验证

  1. 在控制台左侧导航栏中,选择报警服务 > 报警历史
  2. 报警历史页面可查看报警历史趋势及报警历史。
    报警历史

旧版资源监控

若容器服务Kubernetes版集群的metrics-server组件未升级到V0.3.8.5及以上版本,可按以下操作进入旧版资源监控页面。

  1. 登录容器服务管理控制台
  2. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的详情
  3. 在集群管理页左侧导航栏中,选择工作负载 > 无状态
  4. 选择所需的Deployment,单击右侧的监控,进入到云监控的相应的监控视图页面。
  5. 您可以单击部署应用容器组列表容器组热点页签查看监控数据。
  6. 可选:如需设置告警,您可以在左侧导航栏,选择报警服务 > 报警规则
    分组级别的指标以 group开头,实例级别的指标以 pod开头。更多信息,请参见 管理报警规则