julien 2018-11-16
在Coreos系统中我们一般利用Portainer容器来管理Docker,可以看我的其他文章(coreos和portainer都有讲到过)
全容器化的部署方式下,我们可以利用cAdvisor+InfluxDB+Grafana实现对主机和Docker的各项指标的监控。
组件简介
cAdvisor:用于数据采集
cadvisor谷歌公司自己用来监控他们基础设施的一款工具,这个工具厉害之处不仅能监控docker容器的实时信息,而且还能将你的cadvisor这容器所在的主机的系统的实时信息,但是由于cadvisor只是能监控到实时的信息而不能保存。
InfluxDB:用于数据存储
InfluxDB 是用 Go 语言编写的一个开源分布式时序、事件和指标数据库,无需外部依赖。所以我们要使用 influxdb 将这些实时监控到的信息存放起来。
Grafana: 用于数据展示
Grafana 是一个可视化面板(Dashboard),有着非常漂亮的图表和布局展示,功能齐全的度量仪表盘和图形编辑器,支持 Graphite、zabbix、InfluxDB、Prometheus 和 OpenTSDB 作为数据源。
部署过程
在Portainer中进行可视化部署。
首先我们先建立一个自定义的网络
然后我们逐一部署容器
部署InfluxDB容器
设置网络
重启规则和数据卷自行配置即可,不再多说了。
配置好后,部署即可。
配置InfluxDB
现在可以通过浏览器去访问influxdb的管理端了(8083端口)
创建cadvisor的数据库与用户,这个用于后期配置granfa
CREATE DATABASE "cadvisor"
输入后回车即可
创建管理用户
CREATE USER "username" WITH PASSWORD 'password' WITH ALL PRIVILEGES
不创建用户也可以,默认用户名和密码是root
部署cAdvisor容器
设置网络
然后设置自动参数!!!重要!!!
默认influxdb的用户名和密码是root/root
如果不是则需要指定:
--storage_driver_user=root --storage_driver_password=root
然后我们配置数据挂载点:
注意只读属性设置!
配置好后部署即可。
部署Grafana容器
配置网络:
配置好后,部署即可。
如果一切正常,我们可以在InfluxDB上看见新建的表:
配置Grafana
默认用户名和密码都是admin,第一次登陆后会要求修改密码。
然后我们先添加数据源,然后就可以添加监控指标和图表了。
具体使用和指标设置部分以后会详细说明。
以上就是一整套的监控服务的部署和基础配置了。