总结:总结的意思是,尽管有用于监控容器的插件和模块,但既然有专业的容器监控解决方案,为什么还要使用传统的解决方案呢? 当它们刚出现时,还没有专门的集装箱监控解决方案公司。 也有一些成熟的约定。 它们不太复杂,但如果您想将它们直接集成到互联网中,有几种监控解决方案,包括您自己创建它们、使用它们检索信息以及向集合用户公开界面。
1.概述
Dockbix代表docker+zabbix,描述了使用zabbix监控docker容器中的插件或模块的方式。 有cadvisor、prometheus这样专业的容器监控方案,为什么还要用经典的zabbix?
docker刚出来的时候,有cadvisor、prometheus这样的专业容器监控方案,却没有解决方案。
公司在zabbix方面已经有了成熟的实践,想直接集成到zabbix中(但不是很优雅)
使用zabbix监控docker有以下几种方案:
编写自己的agent,使用docker的API获取统计数据,暴露一个API接口给zabbix进行采集。
使用zabbix模块将Docker集合和显示集成到您现有的zabbix系统中。
如何使用 Python SDK 的编写 API
:https://docker[ k4]py.readthedocs.io/en/stable/containers。 html#docker.models.containers.Container.stats
stats(**kwargs)此容器的流统计信息。 类似于 docker stats 命令。 参数:decode (bool) – 如果设置为 true,流将被即时解码为字典。 仅有的如果 y 流为 True,则适用。 默认情况下 False.stream (bool) – 设置为 false 时,仅返回当前统计信息而不是流。 默认为真。 引发:docker.errors.APIError – 如果服务器返回错误。
例如计算cpu。
defCalculate_cpu_percent(d): cpu_count = len(d ["cpu_stats"]["cpu_usage"]["percpu_usage"]) cpu_percent = 0.0 cpu_delta = float(d["cpu_stats"]["cpu_usage "]["total_usage"]) - float(d["precpu_stats" ]["cpu_usage"]["total_usage"]) system_delta = float(d["cpu_stats"]["system_cpu_usage"]) - float (d["precpu_stats"]["system_cpu_usage"]) If system_delta > 0.0: cpu_percent = cpu_delta / system_delta * 100.0 * cpu_count return cpu_percent
Zabbix 模块
Zabbix 代理停靠点 通过扩展r容器监控宿主机以及宿主机上Docker的状态。
移动你的开源项目:https://github.com/monitoringartist/zabbix-docker-monitoring
1.需要监控运行代理主机上的容器
docker run --name=dockbix-agent-xxl --net= host --特权 -v /:/rootfs -v /var/run:/var/run --重新启动直到-停止 -e "ZA_Server=" -e "ZA_ServerActive=" -d Monitoringartist/dockbix-agent-xxl-limited:latest
2.配置监控模板
将监控Docker的模板导入到zabbix服务器中。 可用模板包括
Zabbix-Template-App-Docker。 xml - 标准推荐模板:被动
Zabbix-Template-App-Docker-active.xml - 检查模板:主动
Zabbix - 模板 - 应用程序 - Docker - Mesos - Marathon - Chronos.xml -] Mesos(Marathon/Chronos)集群 Docker 模板
您还可以通过直接使用 Docker 镜像运行来导入模板:monitoringartist/zabbix-templates 等:
docker run [ k4]-rm -e XXL_apiurl=http://zabbix.org/zabbix -e XXL_apiuser=Admin -e XXL_apipass=zabbix Monitoringartist/zabbix-templates
项目对于:
详细指标值请参见 https://github.com/monitoringartist/zabbix-docker-monitoring/blob 参见/。 主控/自述文件。 md
3.可视化
Zabbix监控图表:
Zabbix数据也在grafana模板里
本文是关于容器监控实践的系列文章。 完整内容请参见container-monitor-book
评论前必须登录!
注册