Docker监控——Cadvisor+InfluxDB+Grafana搭建过程
1)、InfluxDB安装与配置:
InfluxDB的0.8.8或是0.9.6版本,安装都是通过rpm直接安装,区别只是数据库的“表”不一样而已,所以会影响到Grafana过滤数据,这些不是重点,重点是Grafana数据的清理。
(1)、InfluxDB安装:
wget https://repos.influxdata.com/centos/6/x86_64/stable/influxdb-0.9.6-1.x86_64.rpm rpm -vih influxdb-0.9.6-1.x86_64.rpm vi /etc/influxdb/influxdb.conf hostname = "192.168.16.234" /etc/init.d/influxdb start |
Web页面:
(2)、InfluxDB配置:
此步,需要配置提供Cadvisor写入数据的InfluxDB库,和提供grafana访问的用户名和密码
InfluxDB可以通过web界面或是influx命令行,进行操作。
数据库:cadvisor
用户名:root
密码: root
[root@localhost ]# influx > CREATE DATABASE cadvisor > CREATE USER "root" WITH PASSWORD 'root' WITH ALL PRIVILEGES > exit |
2)、Cadvisor启动:
这里使用的是命令的方式启动:
nohup /root/cadvisor -port=10000 -storage_driver=influxdb -storage_driver_db=cadvisor -storage_driver_host=192.168.16.234:8086 &>> /var/log/kubernetes/cadvisor.log & |
可以通过web界面,检查是否有数据。
3)、Grafana的安装和配置:
(1)、Grafana安装:
wget https://grafanarel.s3.amazonaws.com/builds/grafana-2.6.0-1.x86_64.rpm rpm -ivh grafana-2.6.0-1.x86_64.rpm /sbin/chkconfig --add grafana-server /etc/init.d/grafana-server start |
(2)、Grafana配置:
Ⅰ、配置influxdb数据源:
Ⅱ、新建展示页:
展示页,用来区分不同的influxdb数据源
Ⅲ、新建数据项:
根据特定的条件(sql),从influxdb查询相关的数据,并展示。
Grafana会自动显示cadvisor库的字段,可以根据需求进行选择,每个where后面,加上:【container_name !~ /^\//】,按照容器名称分类:
select container_name, last(memory_usage) from "stats" where time > now()-2h and container_name !~ /^\// group by time(10s), container_name order asc limit 30 |
Ⅳ、完整的grafana展示:
Cadvisor+InfluxDB+Grafana的监控项,会比Heapster+InfluxDB+Grafana的少。
下篇,将带来【Kubernetes监控——Heapster+InfluxDB+Grafana搭建过程】,敬请期待!
来源:oschina
链接:https://my.oschina.net/u/727880/blog/718382