Bootstrap

zabbix对服务的监控

接上个实验

1、对server5上的httpd服务监控

http服务的监控比较简单,只是监控了80端口是否开启

  • 先在server5上安装apache,并开启:
 yum install httpd -y
 systemctl start httpd

在这里插入图片描述

  • 在zabbix上添加监控hpptd的模板: 点击主机server2 --> 点击模板 --> 添加模板(Template APP HTTP Service)–> 更新
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

2、对server6上的nginx监控

先添加server6为zabbix-agent主机,过程不再赘述

  • 先安装ngnix并开启:下载安装包并解压 --> 注释掉debug --> 安装依赖性–> 编译 --> make && make install --> 修改配置文件,将status添加上–>开启
[root@server6 ~]# ls
nginx-1.16.0.tar.gz  zabbix-agent-4.0.5-1.el7.x86_64.rpm
[root@server6 ~]# tar zxf nginx-1.16.0.tar.gz 
[root@server6 ~]# cd nginx-1.16.0
[root@server6 nginx-1.16.0]# vim auto/cc/gcc 
	# debug  
	#CFLAGS="$CFLAGS -g"
[root@server6 nginx-1.16.0]# yum install gcc pcre-devel zlib-devel -y
[root@server6 nginx-1.16.0]# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module
[root@server6 nginx-1.16.0]# make && make install
[root@server6 nginx-1.16.0]# vim  /usr/local/nginx/conf/nginx.conf
	location /status {
				stub_status on;
				access_log off;
				allow 127.0.0.1;
				deny all;
			}
[root@server6 nginx-1.16.0]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@server6 nginx-1.16.0]# /usr/local/nginx/sbin/nginx
  • 查看:curl http://127.0.0.1
    在这里插入图片描述
  • 查看状态:curl http://127.0.0.1/status
    在这里插入图片描述
  • 多加1000个访问量:先安装httpd–> ab -c 1 -n 1000 http://127.0.0.1/status
    在这里插入图片描述
  • 过滤监控次数
 curl -s http://127.0.0.1/status | grep Active
 curl -s http://127.0.0.1/status | grep Active | awk '{print $3}'

在这里插入图片描述

  • 创建ngnix监控项
    vim /etc/zabbix/zabbix_agentd.d/userparameter_nginx.conf
    在这里插入图片描述
  • 重启zabbix-agent:systemctl restart zabbix-agent
    在这里插入图片描述
  • 在server端(server4)安装zabbix-get,查看是否能拿到数据
    yum install zabbix-get-4.0.5-1.el7.x86_64.rpm -y
    在这里插入图片描述
  • 查看是否获取到:
    zabbix_get -s 172.25.12.6 -p 10050 -k "ngnix.active" (键值一定要保持一致)
    在这里插入图片描述
  • 在zabbix上添加监控ngnix的模板:点击server6主机–>监控项–>创建监控项(健值保持一致)–>再创建图形(t添加上监控项)–> 预览
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 在server6端多访问几次之后,会看到数据的变化: curl -s http://127.0.0.1/status
  • 因为之前预览文字会有乱码,所以下载安装文字后再查看。
    1) 在server4上下载simkai.ttf,并将其放在/usr/share/zabbix/fonts/
    在这里插入图片描述
    2) 修改配置文件vim /usr/share/zabbix/include/defines.inc.php将graphfont 替换成simkai(楷体)
%s/graphfont/simkai/g
3) 网页刷新,则字体变化

在这里插入图片描述

  • 可以多添加一个监控(和上述过程一样):
    1. 先截取监控的字段:curl -s http://127.0.0.1/status | awk NR==3 | awk '{print $1}'
      在这里插入图片描述
      2) 再把该动作加入到脚本中,并赋予一个键值:vim userparameter_nginx.conf
UserParameter=ngnix.accept,curl -s http://127.0.0.1/status | awk NR==3 | awk '{print $1}'

在这里插入图片描述
3) 重启zabbix-agent后在server4上查看是否获取到:
zabbix_get -s 172.25.12.3 -p 10050 -k "ngnix.accept"
在这里插入图片描述
4) 再web端配置,将监控加入,可以将两个监控加入到一个图形中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
5)在server3上多访问几次,就可以看到监控数据的变化:curl -s http://127.0.0.1/status | awk NR==3 | awk '{print $1}'
在这里插入图片描述

3、监控server4上的mysql服务

  • 先ping一下zabbix数据库,是否成功,返回值为1则成功,0则不成功:
 mysqladmin -uzabbix -pwestos -h 127.0.0.1 ping | grep -c alive

在这里插入图片描述

 vim ss_get_mysql_stats.php.cnf
    		<?php
    		$mysql_user = 'root';
    		$mysql_pass = 'redhat';

在这里插入图片描述

  • 编辑完配置文件后重启zabbix-agent
  • 将文件拷贝到被监控的mysql服务器上:
    在这里插入图片描述
  • 检测: ./get_mysql_stats_wrapper.sh gg cd /tmp/ -->cat localhost-mysql_cacti_stats.txt
    在这里插入图片描述
  • 导入模板: 配置–> 模板–> 导入模板–>将下载好的导入 --> 聚合图形选中 – > 主机–>模板-> 添加上就可以了
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 此时添加成功,可见监控项变成了279,监控的项目多了。
    在这里插入图片描述
    在这里插入图片描述
;