普罗米修斯监控实践

1、监控linux机器

node-exporter 被监控的机器安装


https://github.com/prometheus/node_exporter/releases/download/v0.17.0/node_exporter-0.17.0.linux-amd64.tar.gz

这里导入的数据源非彼数据源 ,而是用 grafana画好的 dashborad

这里的数据源 才是选择 prometeus 的数据源

配置----piechart插件

安装pie插件

官网:https://grafana.net/plugins/grafana-piechart-panel


grafana的默认插件目录是/var/lib/grafana/plugins,可以将下载好的插件解压到这个目录,

重启grafana即可

<code>service grafana-server restart /usr/sbin/grafana-cli plugins ls  #查看已安装插件/<code>

启动

效果图


2、监控Windows机器


wmi-exporter


被监控windows机器安装wmi-exporter,会自动创建一个开机自启的服务

https://github.com/martinlindhe/wmi_exporter/releases


默认wmi-exporter 端口为:9182


<code>​ - job_name: 'Prometheus'   static_configs:   - targets: ['118.190.217.164:9182'] ​/<code>

3、监控mysql

3.1、配置mysql

<code># 由于小编的服务器是空的,所以需要安装一下这里也做一下记录 ​ # 查看是否安装mysql yum list installed | grep mysql ​ # 安装步骤 1、下载mysql 包 rpm -ivh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm ​ 2、安装mysql yum install -y mysql-server ​ 3、 设置开机启动 systemctl enable mysqld.service ​ 4、检查是否安装了开机启动 systemctl list-unit-files | grep mysqld ​ ​ 5、 设置开启服务 systemctl start mysqld.service ​ 6、查看默认密码 grep 'temporary password' /var/log/mysqld.log ​ 7、 登录mysql mysql -uroot -p ​ 8、 修改当前用户密码 SET PASSWORD = PASSWORD('123456'); ​ 9、 开启远程登录,授权root远程登录 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456!' WITH GRANT OPTION; ​ 10、刷新立即生效 ​ flush privileges; ​/<code>

3.2、exporter

1、被监控mysql机器安装mysqld-exporter

https://github.com/prometheus/mysqld_exporter/releases/download/v0.11.0/mysqld_exporter-0.11.0.linux-amd64.tar.gz


tar -C /usr/local/ -xvf mysqld_exporter-0.11.0.linux-amd64.tar.gz

2、设置配置文件,user为数据库登录用户,password为这个用户的密码

<code>​ vi .my.cnf ​ [client] user=root ​ password=123456 ​/<code>

(3)启动mysqld-exporter

4、prometheus配置文件中加入mysql监控并重启

<code>​ vim /root/prometheus/prometheus/prometheus.yml ​ # mysql-exporter 默认端口为 9104 - job_name: 'MySQL'   static_configs:    - targets: ['118.190.217.164:9104'] ​ ​/<code>

5、设置数据源 grafana界面添加`mysql数据源

添加需要被监控的数据库及相关信息

测试是否成功,如下图:

重启Prometheus服务就可以看到Mysql的配置

6、导入配置好的dashboard,数据源选择mysql数据源即可。(刚安装的所以信息较少)


4、 监控Redis

4.1、配置redis

我们直接去redis 的官网下载:



wget http://download.redis.io/releases/redis-5.0.8.tar.gz
tar xzf redis-5.0.8.tar.gz -C /usr/local
cd /usr/local/redis-5.0.8
make

src/redis-server


发现以下异常警告,需要对Redis做一些配置。

Redis常用配置

vim redis.conf

解决方案

考虑到redis一般都是部署在服务器上作为服务存在的。所以,本文的解决方案都是持久性配置,不是临时配置。

第一个警告

将net.core.somaxconn = 1024添加到/etc/sysctl.conf中,然后执行sysctl -p生效配置。

第二个警告

将vm.overcommit_memory = 1添加到/etc/sysctl.conf中,然后执行sysctl -p生效配置。

第三个警告

将echo never > /sys/kernel/mm/transparent_hugepage/enabled添加到/etc/rc.local中,然后执行source /etc/rc.local生效配置。


<code>​ #修改daemonize为yes,即默认以后台程序方式运行(还记得前面手动使用&号强制后台运行吗)。 daemonize no ​ #可修改默认监听端口,如果改了端口启动时需要指定端口号,“ redis-cli -p 6380” port 6379 ​ #修改生成默认日志文件位置 logfile "/usr/local/redis-5.0.8/redis.log"" ​ #配置持久化文件存放位置 dir ./redisData ​ #设置redis的密码,默认情况下“requirepass foobared”是被注释的,去掉注释,将“ foobared”改为要设置的密码,重启redis后生效 requirepass foobared ​ # 例如 requirepass 123456 ​/<code>

<code>​ 进入redis目录 启动redis (加上 & 号程序会以后台方式运行) ./redis-server & ​/<code>

4.2、exporter

1、安装redis_exporter

<code>​ tar xf redis_exporter-v0.15.0.linux-amd64.tar.gz -C /usr/local/ cd /usr/local/ ​/<code>

2、启动redis_exporter

默认redis_exporter端口为9121

<code>​ ./redis_exporter redis//118.190.217.164:6379 & -web.listenaddress 118.190.217.164:9121 ​ ​/<code>

3、prometheus配置文件中加入redis监控并重启

<code># 切记要重启 vim /root/prometheus/prometheus/prometheus.yml ​ - job_name: 'Redis'   static_configs:    - targets: ['118.190.217.164:9121'] ​/<code>

4、grafana导入画好的dashboard

重新启动服务


5、效果总览