Kubernetes+Promethues+Cloud Alert实践分享

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

内容简介:容器集群管理系统 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使用文档


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

查看所有标签

猜你喜欢:

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

疯狂Java讲义

疯狂Java讲义

李刚 / 电子工业出版社 / 2008-10 / 99.00元

《疯狂Java讲义》2000年至今,Java语言一直是应用最广的开发语言,并拥有最广泛的开发人群。如今,Java已经不再简单地是一门语言,它更像一个完整的体系,一个系统的开发平台。更甚至,它被延伸成一种开源精神。 《疯狂Java讲义》深入介绍了Java编程的相关方面,全书内容覆盖了Java的基本语法结构、Java的面向对象特征、Java集合框架体系、Java泛型、异常处理、Java GUI编......一起来看看 《疯狂Java讲义》 这本书的介绍吧!

html转js在线工具
html转js在线工具

html转js在线工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试