本环境是在docker环境下进行的
docker pull prom/node-exporte
docker pull prom/prometheus
docker pull grafana/grafana
docker run -d -p 9100:9100 \
-v "/proc:/host/proc:ro" \
-v "/sys:/host/sys:ro" \
-v "/:/rootfs:ro" \
--net="host" \
--name node-expoter \
prom/node-exporter
在浏览器中访问http:192.168.119.128:9100(自己虚拟机对应的IP地址),出现如下图所示内容贼代表端点暴露成功,可以通过prometheus去监控了
3.安装mysql
docker pull hub.c.163.com/library/mysql:latest
建立挂载的数据卷
mkdir -p /opt/mysql/data
虚拟机 3306 端口和容器里的3306端口对应,虚拟机路径和容器里路径
docker run -p 3306:3306 --restart="always" --name mysql -v /opt/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 -d --privileged=true hub.c.163.com/library/mysql:latest
进入到mysql容器中:docker exec -it mysql bash
登录容器内数据库
mysql -uroot -p123456
在操作容器里数据的同时,数据也进到了 /opt/mysql/data 目录里,两边是同步的!
登录mysql为exporter创建账号并授权,在mysql上配置监控使用的用户
# 创建数据库用户
mysql>create user 'exporter' @ 'localhost' identified by '123456';
# 查看主从运行情况及所有数据库
mysql> grant process,replication client,select on *.* TO 'exporter '@' localhost ' ;
要监控某个对象,首先得拿到被监控对象的指标数据,这就要借助各种exporter,它的主要作用就是把核心指标数据暴露出来,这样监控系统才能获取到相应数据。
prometheus自带了很多exporter, mysqld_exporter 就是专用于暴露mysql各种指标的插件。
安装mysql-exporter
docker pull prom/mysqld-exporter
#新建并启动容器
docker run -d \
> -p 9104:9104 \
> --net="host" \
> --pid="host" \
> --name mysqld-exporter \
> -e DATA_SOURCE_NAME="root:123456@(192.168.119.128:3306)/" \
> prom/mysqld-exporter
4.启动prometheus
新建目录,生成prometheus.yml
mkdir /opt/prometheus
cd /opt/prometheus/
vim prometheus.yml
编辑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.119.128:9100']
labels:
instance: localhost
- job_name: mysql
static_configs:
- targets: ['192.168.119.128:9104']
labels:
instance: mysql
新建并启动prometheus容器
docker run -d \
-p 9090:9090 \
-v /opt/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml \
--name prometheus \
prom/prometheus
在浏览器中访问http://192.168.119.128:9090,出现如下界面代表监控成功了
5.启动grafana
docker run -d -p 3000:3000 grafana/grafana
访问地址:http://192.168.119.128:3000 默认账号密码都是admin
选择数据源
添加数据源地址
导入
mysql监控模板id为7362,填入如下输入框内
出现如下所示界面,选择数据源导入
至此就完事了