Kubernetes+Promethues+Cloud Alert实践分享

栏目: 服务器 · 发布时间: 6年前

内容简介:容器集群管理系统 Kubernetes(简称K8s),为容器化的应用提供部署运行、容器编排、负载均衡、服务发现和动态伸缩等一系列完整功能,Prometheus 对 K8s 支持非常棒,能够自动发现 K8s 的监控目标!Prometheus 产生的告警,可以通过 Alertmanager 转发到 Cloud Alert,实现告警的降噪、分派和通知。Kubernetes

前言

容器集群管理系统 Kubernetes(简称K8s),为容器化的应用提供部署运行、容器编排、负载均衡、服务发现和动态伸缩等一系列完整功能,Prometheus 对 K8s 支持非常棒,能够自动发现 K8s 的监控目标!Prometheus 产生的告警,可以通过 Alertmanager 转发到 Cloud Alert,实现告警的降噪、分派和通知。

Kubernetes+Promethues+Cloud Alert实践分享

Kubernetes

K8s 是 Google 开源的容器集群管理系统。用于管理云平台中多个主机上的容器化的应用,K8s的目标是让部署容器化的应用简单并且高效(powerful),K8s 提供了应用部署,规划,更新,维护的一种机制。(选取自为K8s中文文档)

  • Master:k8s 集群的管理节点,负责管理集群,提供集群的资源数据访问入口。包含四个模块:kube-apiserver、kube-controller-manager 和 kube-scheduler。

  • Node:k8s 集群架构中运行 Pod 的服务节点,每个 Node 至少运行 container runtime(比如 docker 或者 rkt)、kubelet 和 kube-proxy 服务。

更多K8s的安装及使用,详见 K8s中文文档 。K8s 解决了传统IT系统中服务扩容和升级的两大难题,提高了大规模容器集群管理的便捷性。 K8s 通常会搭配 promethues 进行监控。

Prometheus

Prometheus 是一个开源和社区驱动的监控&报警&时序数据库的项目。由于其从推出就提供了完整的基于容器的部署方式,开发者可以快速的基于容器搭建自己的监控平台。

Prometheus 监控 K8s 兼容很好,主要可监控 K8s:

  • Node: 如主机 CPU,内存,网络吞吐和带宽占用,磁盘 I/O 和磁盘使用等指标。node-exporter 采集。

  • 容器关键指标:集群中容器的 CPU 详细状况,内存详细状况,Network,FileSystem和Subcontainer 等。通过 cadvisor 采集。

  • K8s 集群上部署的应用:监控部署在 K8s 集群上的应用。主要是 pod,service,ingress 和 endpoint。通过 black-box 和 kube-apiserver 的接口采集。

产生的告警,promethues 支持 Email 推送和 webhook 推送,如果要实现电话、短信、微信的推送,如果不想再造轮子,可以配合 Cloud Alert(原OneAlert)或 pagerduty 使用。本文以Cloud Alert 为例详细描述集成步骤,pagerduty的集成方式类似。

Cloud Alert

Cloud Alert(原OneAlert)是免费SaaS 云告警监控项目,可以实现告警的降噪、分派、通知。通知方式支持电话、短信、微信、邮件、APP、钉钉、Slack通知等等。

1. 注册 Cloud Alert 账号,注册地址。

2. 创建 Prometheus 应用集成,配置 -> 应用,点击新建应用,选择 Prometheus,保存后,即可获取 webhook 回调 url。

Kubernetes+Promethues+Cloud Alert实践分享

3. 进入 Prometheus 界面,修改 Alertmanager 模块的配置文件。

receivers:
- name: 'team-X-pager'
  webhook_configs:
  - url: 'http://api.onealert.com/alert/api/event/prometheus/--'
    send_resolved: true

4. 重启下 Alertmanager 模块,加载该配置文件。结束。

Cloud Alert 默认所有告警均电话、邮件、短信通知用户,如果想设置不同的告警分派给不同的人/团队,可以在 配置 -> 分派策略 中设置。如果公司成员比较多,建议搭配排班功能使用,没必要所有告警全员响应,将人力解放出来。微信通知,需要先绑定 Cloud Alert 的微信公众号:云告警,绑定后,就能接收微信通知了。更多使用参考 官方文档 吧。

参考文档:

Kubernetes中文文档

Prometheus以及如果实现跨环境监控

解读promethues监控kubernetes的配置文件

Cloud Alert使用文档


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Servlet与JSP核心技术

Servlet与JSP核心技术

/ 人民邮电出版社 / 2001-10 / 55.00元

一起来看看 《Servlet与JSP核心技术》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具