基于docker搭建Prometheus+Grafana监控(一)
之前安装过zabbix( https://www.cnblogs.com/daydayup-lin/p/12243518.html),但是安装之后环境进行安全扫描的时候总是出现一些高危漏洞,需要去向安全组的解释才能通过,所以经过讨论,打算用Prometheus+Grafana来作为监控工具使用。
一、安装docker(这里我们安装19.03.6版本/操作系统是Centos7.5)
1、yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sudo yum-config-manager \ --add-repo \ https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo 2、yum makecache fast 3、yum list docker-ce.x86_64 --showduplicates | sort -r 4、 yum install docker-ce-19.03.6 docker-ce-cli-19.03.6 containerd.io 5、systemctl start docker
二、下载镜像包
docker pull prom/node-exporter docker pull prom/prometheus docker pull grafana/grafana
三、启动node-exporter
启动命令:
docker run -d --name node-exporter -p 9100:9100 -v "/proc:/host/proc:ro" -v "/sys:/host/sys:ro" -v "/:/rootfs:ro" --net="host" prom/node-exporter
查看端口是否启动:netstat -ntlp
访问url:http://ip:9100/metrics,如下:
说明数据采集正常。
四、启动Prometheus
1、新增目录,编辑配置文件:
mkdir /data/prometheus cd /data/prometheus/ vim prometheus.yml
内容如下:
global: scrape_interval: 60s evaluation_interval: 60s scrape_configs: - job_name: prometheus static_configs: - targets: ['localhost:9090'] labels: instance: prometheus - job_name: linux static_configs: - targets: ['192.168.1.100:9100'] #注意这里是换成本机ip labels: instance: localhost
这里192.168.1.100:9100就是node-exporter启动后用来获取监控数据的接口,192.168.1.100注意要换成本机ip
2、启动prometheus
启动命令:
docker run -d -p 9090:9090 -v /data/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus --name prometheus
查看端口是否启动:
访问targets:http://192.168.1.100:9090/targets
prometheus启动正常
五、启动Granafa
新建grafa目录:
mkdir /data/grafana
添加权限:
chmod +x grafana
启动命令:
docker run -d -p 3000:3000 --name=grafana -v /data/grafana:/var/lib/grafana grafana/grafana
查看端口:
netstat -ntlp
访问grafana的web:http://ip:3000/,账号密码默认admin/admin
登录之后会要求设置新密码:
设置完成之后跳转首页:
点击“Add your first data source”,选择Prometheus
name默认填充Prometheus,URL填写 Prometheus的ip+端口,例如http://192.168.1.100:9100
点击页面下方的“Save&Test”按钮,出现下图说明添加成功
下面就可以配置报表了