随着剁手越来越畅快.手里积攒的小鸡也越来越多了.那今天就讲解一下怎么样搭建一个美轮美奂的基于Grafana+influxDb+Colletcd的监控系统.感谢开源世界!
--force-yes
进行更新.InfluxDB
容器名称的命令.更直观简单InfluxDB
的启动参数.让暴露端口更少.更安全docker-ce
mkdir -p /root/monitor/{collectd,grafana,influxdb,influxdb/{conf,db,monitor}}
curl -ksSL raw.githubusercontent.com/collectd/collectd/master/src/types.db > /root/monitor/collectd/types.db
docker run --rm -it influxdb:alpine influxd config > /root/monitor/influxdb/conf/influxdb.conf
vim/nano
对/root/monitor/influxdb/conf/influxdb.conf
进行编辑.找到[[collectd]]
配置项.并把enabled = false
更改为enabled = true
.保存即可/root
目录下生成我们所需要的一些文件和目录.Docker Image
然后选择服务器并且保存进入配置界面应用设置名称 | 内容 |
---|---|
Image | influxdb:alpine |
Options | -p 25826:25826/udp -v /root/monitor/influxdb/conf/influxdb.conf:/etc/influxdb/influxdb.conf:ro -v /root/monitor/influxdb/db:/var/lib/influxdb -v /root/monitor/collectd/types.db:/usr/share/collectd/types.db |
Command | -config /etc/influxdb/influxdb.conf |
Args | |
Nginx设置名称 | InfluxDB不需要nginx分流.请留空并隐藏设置 |
Debian 8
的安装办法.除此之外请自行Google搜索collectd
安装办法执行以下命令更新源并安装collectd
echo -e "deb http://pkg.ci.collectd.org/deb jessie collectd-5.7 \n" >> /etc/apt/sources.list.d/collectd.list
apt-get update && apt-get install collectd-core liboping-dev -y --force-yes
自行修改下列内容然后创建并添加内容到/etc/collectd/collectd.conf
里面.ping
这个模块里面的目标地址可以自行添加到/etc/hosts
里面.完成之后执行systemctl restart collectd
重启collectd.启动collectd报错请检查编辑器是否修改了配置导致错误
Hostname "被监控节点的名称,可以自定义"
FQDNLookup false
BaseDir "/var/lib/collectd"
PluginDir "/usr/lib/collectd"
TypesDB "/usr/share/collectd/types.db"
Interval 10
LoadPlugin cpu
LoadPlugin df
LoadPlugin disk
LoadPlugin interface
LoadPlugin memory
LoadPlugin network
LoadPlugin ping
LoadPlugin swap
<LoadPlugin load>
Globals false
</LoadPlugin>
<Plugin cpu>
ReportByCpu true
ReportByState true
ValuesPercentage true
</Plugin>
<Plugin df>
FSType rootfs
FSType sysfs
FSType proc
FSType devtmpfs
FSType devpts
FSType tmpfs
FSType fusectl
FSType cgroup
IgnoreSelected true
ValuesAbsolute true
ValuesPercentage false
</Plugin>
<Plugin memory>
ValuesAbsolute false
ValuesPercentage true
</Plugin>
<Plugin load>
ReportRelative false
</Plugin>
<Plugin network>
Server "influxdb所在服务器地址可用域名" "25826"
</Plugin>
<Plugin ping>
Host "想要在被监控机上ping的目标ip"
Interval 2.0
Timeout 0.9
TTL 255
</Plugin>
docker ps -f ancestor=influxdb:alpine
.这时候会返回一个形如docker-04f39d
一样的容器名称.复制备用Docker Image
然后选择服务器并且保存进入配置界面应用设置名称 | 内容 |
---|---|
Image | grafana/grafana |
Options | --link docker-04f39d(请自行修改为你的InfluxDB的容器名称):influxdb -v /root/monitor/grafana:/var/lib/grafana |
Command | |
Args | |
Nginx设置名称 | 内容 |
域名 | 你要给grafana的域名 |
应用端口 | 3000 |
Https | 将http重定向到https |
域名 | 你要给grafana的域名(自动填写) |
邮箱 | 域名所对应的邮箱 |
如果在grafana运行过程中遇到localhost的问题.那么请在初始登录完grafana之后在options里面加上-e GF_SERVER_ROOT_URL="https://你要给grafana的域名"
并且更新配置.
如果遇到安装失败报错格式不正确.请检查--link
的两个短杠是否被系统自动合并
grafana