容器监控与应用实践指南
1. 容器监控工具介绍
1.1 Collectd 监控容器 CPU 指标
Collectd 是一个用于收集系统和应用程序性能指标的守护进程。可以通过编写 Python 脚本来获取所有运行容器的统计信息,并将 CPU 统计信息以 PUTVAL 字符串的形式输出到标准输出,这些信息会被 Collectd 理解并发送到 Graphite 数据存储进行存储和可视化。以下是实现该功能的 Python 代码:
#!/usr/bin/env python
import random
import json
import docker
import sys
cli = docker.Client(base_url='unix://var/run/docker.sock')
types = ["gauge-cpu0"]
for h in cli.containers():
if not h["Status"].startswith("Up"):
continue
stats = json.loads(cli.stats(h["Id"]).next())
for k, v in stats.items():
if k == "cpu_stats":
print("PUTVAL %s/%s/%s N:%s" % (h['Names'][0].lstrip('/'),
'docker-cpu', types[0],
超级会员免费看
订阅专栏 解锁全文
759

被折叠的 条评论
为什么被折叠?



