Zabbix-nginx监控项的添加
实验环境
server1:172.25.12.1 zabbix server,zabbix-get
server3:172.25.12.3 zabbix agent,nginx
1 agent端nginx监控项脚本
(1)server3:安装并启动nginx ,参考博客
- 关闭日志,只允许本机查看状态监控
编辑nginx的配置文件:vim /usr/local/nginx/conf/nginx.conf
location /status {
stub_status on;
access_log off;
allow 127.0.0.1;
deny all;
}
Active connections:正在活动的连接数
accepts :nginx启动的处理的连接数
handled :nginx启动后成功创建了多少次握手
requests:处理的请求总数目
(2)切换到agent的配置文件目录:cd /etc/zabbix/zabbix_agentd.d
- 创建脚本,自定义nginx的监控项
cp userparameter_mysql.conf userparameter_nginx.conf
- 编辑nginx监控项的配置文件:
vim /etc/zabbix/zabbix_agentd.d/userparameter_nginx.conf
UserParameter=nginx.active, curl -s http://127.0.0.1/status|grep Active|awk '{print $3}'
UserParameter=nginx.accept, curl -s http://127.0.0.1/status |awk 'NR==3{print $1}'
UserParameter=nginx.handled, curl -s http://127.0.0.1/status |awk 'NR==3{print $2}'
UserParameter=nginx.request, curl -s http://127.0.0.1/status |awk 'NR==3{print $3}'
- 重启agent服务:
systemctl restart zabbix-agent.service
2 zabbix_get的安装配置
zabbix_get 是 zabbix 服务端的一个命令,用于检测 agent 端的配置是否正确,可以很方便地知道 key 是否能正常获取到数据,在测试自定义监控的时候特别有用
-
安装zabbix-get:yum install zabbix-get -y
-
测试:在server3的zabbix
agent定义了对ngint的监控,比如查看nginx是否,对应的key是nginx.active,可以使用zabbix_get来验证nginx.active这个key是否可用 -
zabbix_get 参数
-s --host: 指定客户端主机名或者IP -p --port:客户端端口,默认10050,默认是10050端口,可不写 -k --key:你想获取的key
3 Zabbix界面添加监控项
3.1 zabbix添加nginx监控项
-
在zabbix界面为server3添加nginx的监控项 配置——>主机——>server3监控项——>创建监控项
-
填写监控项的名字、键值(必须在agent端的配置文件被定义过)、主机接口 更新间隔30s——>添加
-
添加完成后可以在界面看到nginx_active的监控项
- 同样的方法添加nginx.accept、nginx.request、nginx.handled
3.2 添加nginx监控项的图形
- 创建图像:名称(随意)——添加监控项——添加
- server3的nginx监控项已经在zabbix中添加成功