1. 实验环境
主机 ip 环境
server4 172.25.254.4 zabbix监控端
server3 172.25.254.3 被监控主机
server2 172.25.254.2 被监控主机
在server2和server3安装 zabbix-agent。
前面博客中已经完成了添加主机进行监控,下面来对服务进行监控。
2. 对server2中的httpd服务进行监控
首先需要在server安装httpd再打开服务。
[root@server2 ~]# yum install -y httpd
[root@server2 ~]# systemctl start httpd
之后再web端进行行操作
点击主机server2,进入模板进行添加模板
添加HTTP的模板点击更新,这样就完成监控的添加了。
在监控项中可以查看被监控的服务。
3. 对server3中的nginx服务进行监控
1.首先,在server3上安装nginx
获取资源,解压
[root@server3 ~]# tar zxf nginx-1.16.0.tar.gz
安装需要的软件。
[root@server3 nginx-1.16.0]# yum install -y gcc pcre-devel zlib-devel
[root@server3 nginx-1.16.0]# ./configure --prefix=/usr/local/nginx \
--with-http_stub_status_module
[root@server3 nginx-1.16.0]# make && make install
编译安装。
2.修改配置文件
vim /usr/local/nginx/conf/nginx.conf
35 server {
36 listen 80;
37 server_name localhost;
38
39
40 location / {
41 root html;
42 index index.html index.htm;
43 }
44
45 location /status {
46 stub_status on;
47 access_log off;
48 allow 127.0.0.1;
49 deny all;
50 }
51
52 error_page 500 502 503 504 /50x.html;
53 location = /50x.html {
54 root html;
55 }
56
57 }
设置只有本机可以访问。
[root@server3 nginx-1.16.0]# curl http://127.0.0.1/status
进行访问测试。
[root@server3 nginx-1.16.0]# yum install -y httpd
[root@server3 nginx-1.16.0]# ab -c 1 -n 1000 http://127.0.0.1/status
对本机进行1000个并发访问。
对Active connection后面的数字进行抓取,之后根据这个数添加监控项。
[root@server3 zabbix_agentd.d]# pwd
/etc/zabbix/zabbix_agentd.d
[root@server3 zabbix_agentd.d]# vim userparameter_nginx.conf
UserParameter=nginx.active,curl -s http://127.0.0.1/status | grep Active | awk {'print $3'}
修改文件,设置键值为nginx.acive。
3.在web端进行配置
首先点击主机server3中的监控项,点击创建监控项,就出现以下页面,在页面中输入监控的名称,这个可以随便命名,但下面的键值要和上面的文件一致,之后点击更新。
之后点击图形,点击创建图形,添加刚才创建的监控项nginx_active。
点击更新,之后就可以进行查看了。
这里发现乱码,需要在web端server4下载simkai.ttf插件,并且把文件放到指定目录
之后再修改一个文件就可以了。
[root@server4 include]# pwd
/usr/share/zabbix/include
[root@server4 include]# vim defines.inc.php
替换文件内容。
修改文件之后重新预览图形,可以发现中文正常显示了。
接下来添加第二个监控项,首先在文件中添加
[root@server3 zabbix_agentd.d]# pwd
/etc/zabbix/zabbix_agentd.d
[root@server3 zabbix_agentd.d]# vim userparameter_nginx.conf
1 UserParameter=nginx.active,curl -s http://127.0.0.1/status | grep Active | awk {'print $3'}
2 UserParameter=nginx.accept,curl -s http://127.0.0.1/status | awk NR==3 | a wk '{print $1}'
添加第二行的内容。
之后在浏览器进行配置和上面一样,先创建监控项,之后根据创建的监控项创建图形,但这里是监控同一个服务,所以可以和前面的监控项功用一个图形,这里就不需要创建了。
创建监控项。
之后点击之前创建的nginx_status监控项。
将监控项加入。
预览时会发现监控两个项。