一、环境准备
环境/组件:Prometheus、go、Grafana...
链接: https://pan.baidu.com/s/1GiFUmtRjkKCjCpxIDTsV2w 提取码: qbwk
二、安装go
由于Prometheus 是用golang开发的,所以首先安装一个go环境,Go语言是跨平台,支持Windows、Linux、Mac OS X等系统,还提供有源码,可编译安装。
把下载好的包上传到机器:/DATA/installer,解压到指定目录:tar -xvzf go1.8.3.linux-amd64.tar.gz -C /DATA/
配置环境变量:vim /etc/profile
#go
export GOROOT=/DATA/go
export GOPATH=~/golib:~/goproject
export GOBIN=~/gobin
export PATH=$PATH:$GOROOT/bin:$GOBIN
验证:source /etc/profile && go version
三、安装Prometheus
把下载好的包上传到机器:/DATA/installer,解压到指定目录:tar -xvzf prometheus-2.21.0.linux-amd64.tar.gz -C /DATA/
启动Prometheus:/DATA/prometheus/prometheus --config.file=/DATA/prometheus/prometheus.yml >/DATA/prometheus/logs/prometheus.log 2>&1 &
普罗米修斯默认配置文件:prometheus.yml
验证:浏览器打开IP:9090端口即可打开普罗米修斯自带的监控页面
四、安装Grafana
Prometheus默认的页面可能没有那么直观,我们可以安装grafana使监控看起来更直观。
把下载好的包上传到机器:/DATA/installer,安装:rpm -ivh --nodeps grafana-5.4.2-1.x86_64.rpm
启动
/bin/systemctl daemon-reload
/bin/systemctl enable grafana-server.service
/bin/systemctl start grafana-server.service
访问grafana:浏览器访问IP:3000端口,即可打开grafana页面,默认用户名密码都是admin,初次登录会要求修改默认的登录密码
添加prometheus数据源
(1)点击主界面的“Add data source”
(2)选择Prometheus
(3)Dashboards页面选择“Prometheus 2.0 Stats”
(4)Settings页面填写普罗米修斯地址并保存
(5)切换到我们刚才添加的“Prometheus 2.0 Stats”即可看到整个监控页面
五、常用监控举例
监控linux机器(node-exporter)https://github.com/prometheus/node_exporter/releases/download/v0.17.0/node_exporter-0.17.0.linux-amd64.tar.gz
(1)被监控的机器安装node-exporter。
把下载好的包上传到机器:/DATA/installer,解压到指定目录:tar -xvzf node_exporter-1.0.1.linux-amd64.tar.gz -C /DATA
(2)启动node-exporter
/DATA/node_exporter/node_exporter &
(3)普罗米修斯配置文件添加监控项,默认node-exporter端口为9100,重启prometheus。
vim /DATA/prometheus/prometheus.yml
(4)grafana导入画好的dashboard
- dashboard json
- 链接:https://pan.baidu.com/s/1Dlm0IHTgRmc0q2P82cDjKg 提取码:myv6
修改名字,选择我们前文创建好的数据源,点击导入即可
如果没有任何显示,是grafana缺少相关显示需要用到的插件piechart,grafana的默认插件目录是/var/lib/grafana/plugins,可以将下载好的插件解压到这个目录,重启grafana即可。
- piechart插件
- 链接:https://pan.baidu.com/s/1tvZWI9vhAqvJhojKmDlmew 提取码:tlyl
查看已安装插件:/usr/sbin/grafana-cli plugins ls
再刷新grafana页面,即可看到我们刚才设置好的node监控