zabbix和Prometheus如何对容器数据库的监控?

1回答

zhangfan13cmbczhangfan13cmbc  项目经理 , 中国民生银行
按照容器监控的内容,我们分为 docker+K8S 基础监控 和 容器内应用监控 两部分来分别实现。 1, docker+K8S 基础监控的实现: 由于 prometheus 对 docker 和 k8s 监控的天然集成,通过 cAdvisor 可以直接获取 docker 基础监控数据,通过 kube-state-metrics 可以直接获取 K8S 的...显示全部

按照容器监控的内容,我们分为 docker+K8S 基础监控 和 容器内应用监控 两部分来分别实现。

1, docker+K8S 基础监控的实现:

由于 prometheus 对 docker 和 k8s 监控的天然集成,通过 cAdvisor 可以直接获取 docker 基础监控数据,通过 kube-state-metrics 可以直接获取 K8S 的资源对象和对应监控数据,因此我们在每个 K8S 集群上默认部署 prometheus 实现这部分监控采集,然后通过 Zabbix Http Agent 方式调用 prometheus API 来获取数据,接入 Zabbix Server 从而复用之前建设的功能,实现后续的告警阈值配置和数据接入集中监控平台。

2, 容器内应用监控的实现:

所有的应用监控我们都通过 Zabbix 实现,这里的“应用”可以是数据库、中间件、也可以是某个应用系统,我们通过在容器中增加环境变量 monitor_type 来定义,比如 monitor_type=mysql 就代表这个容器的“应用”是 mysql ,我们将对它进行 mysql 监控。

收起
 2020-05-20
浏览2095

提问者

shenbo软件开发工程师, 上海卡尔信息

问题状态

  • 发布时间:2020-05-20
  • 关注会员:3 人
  • 问题浏览:3013
  • 最近回答:2020-05-20