在Portainer中部署Docker监控系统(cAdvisor+InfluxDB+Grafana)
在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,第一次登陆后会要求修改密码。
然后我们先添加数据源,然后就可以添加监控指标和图表了。
具体使用和指标设置部分以后会详细说明。
以上就是一整套的监控服务的部署和基础配置了。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
vue组件中的样式属性scoped实例
vue组件中的style标签标有scoped属性时表明style里的css样式只适用于当前组件元素 。接下来通过本文给大家分享vue组件中的样式属性scoped实例详解 **Scoped CSS** Scoped CSS规范是Web组件产生不污染其他组件,也不被其他组件污染的CSS规范。 vue组件中的style标签标有scoped属性时表明style里的css样式只适用于当前组件元素 它是通过使用PostCSS来改变以下内容实现的: <style scoped> .example { color: red; } </style> <template> <div class="example">hi</div> </template> 渲染结果: <style> .example\[data-v-f3f3eg9\] { color: red; } </style> <template> <div class="example" data-v-f3f3eg9>hi&...
- 下一篇
Python函数属性和PyCodeObject
函数属性 python中的函数是一种对象,它有属于对象的属性。除此之外,函数还可以自定义自己的属性。注意,属性是和对象相关的,和作用域无关。 自定义属性 自定义函数自己的属性方式很简单。假设函数名称为myfunc,那么为这个函数添加一个属性var1: myfunc.var1="abc" 那么这个属性var1就像是全局变量一样被访问、修改。但它并不是全局变量。 可以跨模块自定义函数的属性。例如,在b.py中有一个函数b_func(),然后在a.py中导入这个b.py模块,可以直接在a.py中设置并访问来自b.py中的b_func()的属性。 import b b.b_func.var1="hello" print(b.b_func.var1) # 输出hello 查看函数对象属性 python函数是一种对象,是对象就会有对象的属性。可以通过如下方式查看函数对象的属性: dir(func_name) 例如,有一个属性__name__,它表示函数的名称: def f(x): y=10 def g(z): return x+y+z return g print(f.__nam...
相关文章
文章评论
共有0条评论来说两句吧...