上云无忧 > 文档中心 > 腾讯云容器服务实战教程 - 使用 CLS 告警异常资源
容器服务 TKE
腾讯云容器服务实战教程 - 使用 CLS 告警异常资源

文档简介:
使用场景: Kubernetes 使用事件(Event)反馈集群中资源对象的状态,它通常表示系统中的一些状态变化。例如在安装或修改工作负载时,您可以通过事件信息判断当前资源对象是否存在异常,以及查看导致异常的原因。事件的保留时间有限,在 TKE 集群中事件可保留1小时。
*此产品及展示信息均由腾讯云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

使用场景

Kubernetes 使用事件(Event)反馈集群中资源对象的状态,它通常表示系统中的一些状态变化。例如在安装或修改工作负载时,您可以通过事件信息判断当前资源对象是否存在异常,以及查看导致异常的原因。事件的保留时间有限,在 TKE 集群中事件可保留1小时。
如果事件信息包含异常,则需要集群管理员及时关注。TKE 支持为您的所有集群配置事件持久化功能,开启该功能后,TKE 会将您的集群事件实时导出至配置的存储端。更多请参考 事件存储
Service/Ingress 作为 Kubernetes 中接入层的资源对象,其质量事关业务服务稳定性,因此,对 Service/Ingress 异常事件的监控告警成为了常见诉求。为此,TKE 也定义了常见的 Service/Ingress 异常事件错误码信息、异常原因和解决办法,更多请参考 Service&Ingress 常见报错和处理。本文提供集群里 Service/Ingress 异常事件的告警实践。

步骤1:打开集群的事件采集

1. 登录 容器服务控制台
2. 在左侧导航栏中,选择运维功能管理
3. 功能管理页面上方选择地域和集群类型,单击需要开启事件存储的集群右侧的设置
4. 设置功能页面,单击事件存储右侧的编辑。勾选开启事件存储,并配置日志集和日志主题。操作详情见 开启事件存储
注意
若您在同一个地域有多个 Kubernetes 集群,建议您可以打开多个集群的事件存储功能,并选择相同的日志主题和日志集。

步骤2:确定事件是否采集

1. 登录 日志服务控制台,进入检索分析页。
2. 检索分析页,选择地域、已开启事件采集的集群日志集、日志主题。
3. 在“原始数据”中,查找字段event.message,该字段为集群中资源对象产生的事件信息。如下图所示:

步骤3:新建告警策略

以告警 Ingress 的事件为例,Service 类似。
1. 登录 日志服务控制台。选择监控告警 > 告警策略
2. 告警策略页,单击新建。如下图所示:

3. 新建告警策略页,参考以下主要信息进行设置:
日志主题:选择您在 步骤1 中创建的主题。
执行语句:添加执行语句:(event.message:"Ingress Sync ClientError." OR event.message:"Ingress Sync DependencyError." OR event.message:"IngressError. ErrorCode:") | SELECT count(*) as ErrCount
说明
表示获取所有的 Ingress 的事件信息。
触发条件:添加触发条件$1.ErrCount > 0
说明
表示一有事件信息就触发告警。
多维分析:选择自定义检索分析
名称:您可以自定义名称。
检索分析语句:添加检索分析语句:(event.message:"Ingress Sync ClientError." OR event.message:"Ingress Sync DependencyError." OR event.message:"IngressError. ErrorCode:") | SELECT clusterId, event.involvedObject.namespace, event.involvedObject.name, split(split(event.message, 'ErrorCode: ')[2], ' ')[1] as ErrorCode, count(*) as ErrCount group by (clusterId, event.involvedObject.namespace, event.involvedObject.name, ErrorCode)
通知内容:添加通知内容“Ingress 使用告警,以下集群资源同步出现异常:”
完整参数配置方式请参考 配置告警策略

步骤4:查看告警

确保 步骤2 中有新的事件产生,且 步骤2 中告警策略的执行周期、告警通知频率合适(例如测试时可以设置为1分钟一次),就可以查看告警通知渠道中的告警内容了。本文示例设置为通过邮件进行告警,因此可参考邮件的告警内容,如下图所示:

相似文档
  • 操作场景: Prometheus 社区开发了 JMX Exporter 用于导出 JVM 的监控指标,以便使用 Prometheus 来采集监控数据。当您的 Java 业务容器化至 Kubernetes 后,可通过本文了解如何使用 Prometheus 与 JMX Exporter 来监控 Java 应用。
  • 操作场景: MySQL 是常用的关系型数据库,MariaDB 作为 MySQL 的分支版本,兼容 MySQL 协议,也越来越流行。在 Kubernetes 环境中,可借助开源的 mysqld-exporter 来使用 Prometheus 监控 MySQL 与 MariaDB。您可通过本文了解 Prometheus 并开始使用。
  • 本文主要描述使用自建 Prometheus 采集腾讯云容器服务 TKE 的监控数据时如何配置采集规则。TKE 集群内按照节点类型分为常规节点和超级节点,Prometheus 通过配置 scrape_config 来抓取节点和容器的监控数据,由于节点性质不同因此需要配置的采集规则略有差异。
  • 实践背景: 众所周知,Prometheus 是容器场景的最佳监控工具,但自建 Prometheus 对于运维人力有限的中小型企业而言,成本太高;对于业务发展快速的大企业又容易出现性能瓶颈。因而使用云上托管 Prometheus 已成为越来越多上云企业的第一选择。下列将为您介绍如何使用 托管 Prometheus 监控腾讯云容器服务 TKE。
  • 操作场景: 在容器服务 TKE 的众多场景中,例如 K8S 版本升级、内核版本升级等,都需要进行节点移出再移入的操作。本文详细介绍了节点移出再移入的过程,主要分为以下几个步骤: 1. 驱逐节点上运行的 Pod。 2. 将节点移出集群再重新添加到集群,该节点将重装系统。 3. 解除封锁。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部