使用 Zabbix 监控 Nginx 服务与 80 端口状态

来自AI助手的总结
介绍了Zabbix监控Nginx状态、80端口及告警图形的配置流程
使用 Zabbix 监控 Nginx 服务与 80 端口状态

一、自定义nginx模板

1.1 客户端安装nginx

1、进入nginx官网,复制官方yum源

Nginx官网链接:https://nginx.org/en/linux_packages.html

[root@zabbix-client01 ~]# cat /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

图片[2]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

2、安装nginx

#查看支持安装的所有版本
[root@zabbix-client01 ~]# yum list nginx --showduplicates | sort -r
#选择安装nginx-1.20.1-1.el7.ngx
[root@zabbix-client01 ~]# yum install -y nginx-1.20.1-1.el7.ngx
#查询系统上已经安装的 nginx 软件包的版本
[root@zabbix-client01 ~]# rpm -qa nginx
nginx-1.20.1-1.el7.ngx.x86_64

3、修改配置文件

[root@zabbix-client01 ~]# vim /etc/nginx/conf.d/status.conf
server {
listen 8000;
location / {
stub_status;
}
}

4、启动nginx

[root@zabbix-client01 ~]# systemctl start nginx
#测试配置是否成功
[root@zabbix-client01 ~]# curl http://localhost:8000/
Active connections: 1
server accepts handled requests
1 1 1
Reading: 0 Writing: 1 Waiting: 0

1.2 web界面调试

说明:在此之前需要提前配置客户端

1、给主机添加模板

依次点击【配置】-【主机】-【zabbix-client01】

图片[3]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

添加【Nginx by Zabbix agent】模板后,选择【更新】

图片[4]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

2、修改nginx模板的宏

依次点击【配置】-【模板】-【Nginx by Zabbix agent】

图片[5]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

修改宏{\$NGINX.STUB_STATUS.PATH}的值为/,宏{\$NGINX.STUB_STATUS.PORT}的值为8000,点击【更新】

图片[6]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

3、查看主机监控项

依次点击【配置】-【主机】-【监控项】

图片[7]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

填写【名称】nginx后,点击【应用】

图片[8]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

二、监控nginx80端口状态

2.1 自定义监控全流程

客户端:书写命令或脚本,修改配置文件.

服务端:测试,web页面操作

步骤 流程 相关说明
客户端 linux: 通过命令、脚本取出对应的值
linux:根据zbx要求按照格式,书写配置文件,创建键值 键值key用于获取客户端数据
linux:重启客户端客户端测试键值是否可用 zabbix_agent2 -t
服务端 linux:服务端测试键值是否可用 zabbix_get
Web界面 实现键值与监控项关联
进行测试
图形化展示
触发器

是否发出警告

需要根据情况决定是否设置

2.2 客户端

1、通过命令取出对应的值

[root@zabbix-client01 ~]# ss -lntup | grep -w 80 | wc -l
1

2、创建键值

[root@zabbix-client01 ~]# vim /etc/zabbix/zabbix_agent2.d/web.conf
UserParameter=ngx.port,ss -lntup|grep -w 80|wc -l

3、重启客户端

[root@zabbix-client01 ~]# systemctl restart zabbix-agent2.service

4、客户端本地测试键值

#下面回显中s表示类型,1表示结果
[root@zabbix-client01 ~]# zabbix_agent2 -t ngx.port
ngx.port [s|1]

2.3 服务端

1、安装zabbix-get

[root@zabbix-server01 ~]# yum install -y zabbix-get

zabbix-get命令选项说明:

zabbix-get命令 命令说明
-s 客户端ip地址
-p 客户端端口号(默认是10050)
-k 指定键值

2、使用zabbix-get向客户端要指定键值的数据

[root@zabbix-server01 ~]# zabbix_get -s 172.16.1.41 -p 10050 -k ngx.port
1

2.4 添加监控项

1、创建监控项

(1)依次点击【配置】-【主机】-【监控项】

图片[9]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

(2)点击【创建监控项】

图片[10]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

(3)填写名称、键值后,点击【测试】

图片[11]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

知识点补充:对比历史数据与趋势数据

历史数据与趋势数据 说明 推荐配置
历史数据保留时长 每个更新间隔获取到的数据 推荐空间不乐观 可以设置为30d
趋势数据保留时长 记录数据变化的趋势,占用空间较少 推荐保留更长时间 3650d

(4)点击【获取值并进行测试】

图片[12]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

(5)测试成功后,点击【添加】

图片[13]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

2、查看最新数据与图形

依次点击【监测】-【最新数据】,在【名称】位置处填写ngx服务80端口的状态后,点击【应用】

图片[14]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

继续点击【图形】,查看图形

图片[15]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

图片[16]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

2.5 添加触发器

根据监控项获取的数值(内容),决定是否要告警、是否要提示异常。

1、创建触发器

依次点击【配置】-【主机】-【触发器】

图片[17]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

点击【创建触发器】

图片[18]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

填写相关内容后,点击【添加】

#名称
网站ngx挂了
#填写问题表现形式
last(/zabbix-client01/ngx.port)=0
#填写恢复表达式
last(/zabbix-client01/ngx.port)<>0

图片[19]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

其中问题表现形式添加方式如下:

图片[20]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

2、添加触发器完成后,进行验证

填写名称后,点击【应用】进行过滤

图片[21]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

3、模拟告警

在客户端关闭nginx

[root@zabbix-client01 ~]# systemctl stop nginx

4、查看并确认告警

设置web界面刷新时间

图片[22]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

在仪表板中观察,发现报警信息

图片[23]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

确认故障

图片[24]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

图片[25]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

图片[26]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

2.6 添加图形

1、添加图形

依次点击【配置】-【主机】-【图形】

图片[27]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

点击【创建图形】

图片[28]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

2、配置图形名字与添加监控项

配置图形名字为ngx80端口是否存在

图片[29]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

添加监控项

图片[30]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

点击【添加】

图片[31]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

点击【预览】查看

图片[32]-使用 Zabbix 监控 Nginx 服务与 80 端口状态-AI运维探索者

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容