linux服务器监控zabbix,Linux监控之--使用ZABBIX监控web服务器
使用ZABBIX监控web
服务器
实验拓扑图:
实验思路:
nginx添加状态统计模块,编写nginx对应的状态统计脚本。
zabbix-server
导入nginx模板,并对主机实现监控。
实验环境
角色
IP地址
操作系统版本
软件包
Zabbix_server
192.168.0.158/24
Centos
6.5_X86_64
Zabbix3.0.4
Zabbix_agentd(nginx)
192.168.0.125/24
Centos
6.5_X86_64
Zabbix3.0.4
nginx1.11
实验效果:
实验步骤如下
一.安装部署zabbix_server
(参考lamp+zabbix3.0.4 脚本一键安装即可)
二.zabbix-agentd端的配置
1.创建运行账号
[root@centos6 ~]# useradd zabbix -s
/sbin/nologin
2.安装依赖
[root@centos6 ~]# yum -y install gcc curl
上传软件包
3.编译安装agent
[root@centos6 ~]# tar zxf zabbix-3.0.4.tar.gz -C
/usr/src/
[root@centos6 ~]# cd
/usr/src/zabbix-3.0.4/
[root@centos6
zabbix-3.0.4]# ./configure --prefix=/usr/local/zabbix
--enable-agent
[root@centos6
zabbix-3.0.4]# make -j 4
[root@centos6
zabbix-3.0.4]# make install
4.配置客户端
[root@centos6 ~]# vim
/usr/local/zabbix/etc/zabbix_agentd.conf
Server=192.168.0.158 #被动模式,允许哪台zabbix服务器连接,如有DNS解析可填主机名
ServerActive=192.168.0.158 #主动模式,允许向哪台zabbix服务器上报,如有DNS解析可填主机名
Hostname=192.168.0.125 #客户端本机IP,如有DNS解析可填主机名
UnsafeUserParameters=1 #允许用户自定义参数
EnableRemoteCommands=1 #允许执行远程命令
5.创建init服务
[root@centos6
~]#
cp
/usr/src/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_agentd
/etc/init.d/
[root@centos6 ~]# ll
/etc/init.d/zabbix_agentd
-rwxr-xr-x.
1 root root 2170 Oct 7 22:10
/etc/init.d/zabbix_agentd
[root@centos6 ~]#
chkconfig zabbix_agentd on
[root@centos6 ~]# service
zabbix_agentd start
Starting
zabbix_agentd: /etc/init.d/functions: line 546:
/usr/local/sbin/zabbix_agentd: No such file or
directory
[FAILED]
[root@centos6 ~]# vim
/etc/init.d/zabbix_agentd
[root@centos6 ~]# service
zabbix_agentd start
关闭selinux
和iptables
如果遇到没有数据的问题可能是mysql数据库的问题
可以尝试重新启动服务
三.客户端安装nginx服务器
在zabbix
agentd客户端上,查看nginx是否加载了--with-http_stub_status_module。因为zabbix监控nginx是根据nginx的Stub
Status模块,抓取Status模块所提供的数据。假如以前没开启,现在想启用StubStatus 模块,在编译nginx
的时候要加上参数 --with-http_stub_status_module,执行./configure &&
make就可以了,不用make install。不过,一般情况下都是安装了的。
[root@centos6 ~]# yum -y
install pcre-devel zlib-devel lrzsz
[root@centos6 ~]# useradd
-s /sbin/nologin nginx -M
[root@centos6 ~]# tail -1
/etc/passwd
[root@centos6 ~]# tar zxf
nginx-1.11.2.tar.gz -C /usr/src/
[root@centos6 ~]# cd
/usr/src/nginx-1.11.2/
[root@centos6
nginx-1.11.2]# ./configure --prefix=/usr/local/nginx --user=nginx
--group=nginx --with-http_stub_status_module
--with-http_ssl_module
[root@centos6
nginx-1.11.2]# make -j 4 && make
install
nginx服务器的配置
[root@centos6 ~]# ln -s
/usr/local/nginx/sbin/nginx /usr/sbin/
[root@centos6 ~]# 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@centos6 ~]#
nginx
配置nginx状态统计功能
在nginx的配置文件中,添加status配置。
location/nginx-status
{
stub_status on;
access_log off;
}
[root@centos6 ~]# nginx
-t
[root@centos6 ~]# nginx
-s reload
验证
参数解释:
Activeconnections:对后端发起的活动连接数;
server
accepts 4:nginx 总共处理了4个连接;
handled:成功创建了4次握手;
requests:总共处理了4请求。
Reading:nginx读取客户端的header数;
Writing:
nginx 返回给客户端的header数;
Waiting:
nginx 请求处理完成,正在等待下一请求指令的连接。
在agentd上编写监控nginx的脚本(参考nginx.txt文档)
并且设置属主和属组为zabbix,赋予执行权限。
[root@centos6 ~]# mkdir
-p /data/log/zabbix/
[root@centos6 ~]# touch
/data/log/zabbix/webstatus.log
[root@centos6 ~]# vim
/usr/local/zabbix/nginx-status.sh
[root@centos6 ~]# chmod
o+x /usr/local/zabbix/nginx-status.sh
[root@centos6 ~]# chown
zabbix:zabbix /usr/local/zabbix/nginx-status.sh
修改nginx服务器上zabbix客户端的zabbix_agentd.conf配置文件,然后重启zabbix
agentd客户端
[root@centos6
~]# vim
/usr/local/zabbix/etc/zabbix_agentd.conf
添加以下内容
UserParameter=nginx.accepts,/usr/local/zabbix/nginx_status.sh
accepts
UserParameter=nginx.handled,/usr/local/zabbix/nginx_status.sh
handled
UserParameter=nginx.requests,/usr/local/zabbix/nginx_status.sh
requests
UserParameter=nginx.connections.active,/usr/local/zabbix/nginx_status.sh
active
UserParameter=nginx.connections.reading,/usr/local/zabbix/nginx_status.sh
reading
UserParameter=nginx.connections.writing,/usr/local/zabbix/nginx_status.sh
writing
UserParameter=nginx.connections.waiting,/usr/local/zabbix/nginx_status.sh
waiting
[root@centos6 ~]# service
zabbix_agentd restart
在zabbix
server 端进行zabbix_get测试,取到数据了,说明没问题。
/usr/local/zabbix/bin/zabbix_get
-s 192.168.0.125 -p 10050 -k
"nginx.connections.active"
/usr/local/zabbix/bin/zabbix_get
-s 192.168.0.125 -p 10050 -k
"nginx.connections.waiting"
/usr/local/zabbix/bin/zabbix_get
-s 192.168.0.125 -p 10050 -k
"nginx.connections.writing"
/usr/local/zabbix/bin/zabbix_get
-s 192.168.0.125 -p 10050 -k "nginx.accepts"
/usr/local/zabbix/bin/zabbix_get
-s 192.168.0.125 -p 10050 -k "nginx.requests"
使用浏览器访问zabbix
导入模版(我的是xml文件)
(参考nginx-status.xml)
步骤:
configurationàTemplates
选择导入模版
上传nginx-status.xml文件(文件中的IP地址是这个环境中的没错,若切换IP则必须修改)
并导入
导入成功
选择模版
选择nginxstatus模版
添加关联主机 nginx
只是我的主机名
MonitoringàLatest data à选择nginx主机—》filter过滤
查看监控项的图形
以上就是关于监控nginx的实验
完成
linux服务器监控zabbix,Linux监控之--使用ZABBIX监控web服务器相关推荐
- 服务器应用程序不可用您试图在此 Web 服务器上访问的 Web 应用程序当前不可用。请点击 Web 浏览器中的“刷...
错误提示: 服务器应用程序不可用您试图在此 Web 服务器上访问的 Web 应用程序当前不可用.请点击 Web 浏览器中的"刷新"按钮重试您的请求. 管理员注意事项:详述此特定请求 ...
- asp.net配置IIS后服务器应用程序不可用的解决办法 服务器应用程序不可用 您试图在此Web服务器上访问的Web应用程序当前不可用。
错误:服务器应用程序不可用 您试图在此Web服务器上访问的Web应用程序当前不可用. 请点击Web浏览器中的"刷新"按钮重试您的请求.管理员注意事项:详述此特定请求失败原因的错误 ...
- linux web故障,网络故障处理与优化 linux服务器配置及故障排除 项目9 配置与管理web服务器.docx...
配置与管理WEB服务器 准备工作: 先切换到root账号: 执行以下两条命令,临时关闭防火墙和selinux: systemctl stop firewalld.service setenforce ...
- c语言服务器制作,C语言写的简易实用的web服务器
码农公社 210.net.cn 210是何含义?10月24日是程序员节,1024 =210.210既 210 之意. Apache在码农界是比较知名的,它也是目前最接地气.使用最广泛的Web服务器 ...
- 服务器信息安全策略,信息安全工程师考试重点之定制Web服务器的安全策略和安全机制...
信息安全工程师考试重点之定制Web服务器的安全策略和安全机制 安全策略是由个人或组织针对安全而制定的一整套规则和决策.每个Web站点都应有一个安全策略,这些安全策略因需而异.对Web服务提供者来说,安 ...
- PHP服务器脚本实例,Shell脚本实现的一个简易Web服务器例子分享_linux shell
这篇文章主要介绍了Shell脚本实现的一个简易Web服务器例子分享,本文实现的Web服务器非常简单实用,可以在你不想安装nginx.apache等大型WEB服务器时使用,需要的朋友可以参考下 假设你想 ...
- rust自创服务器_用Rust写了一个简单的Web服务器
Rust 最近学了一阵Rust,这个语言的目的是系统编程,卖点是无GC的内存安全.为了实现这一点,Rust引入了所有权.借用.生命周期的概念.可以在编译器检查出可能的内存问题,如野指针.局部变量指针等 ...
- 本地计算机架设http服务器,多维互联网(在本地电脑上架设web服务器软件)
如何在本地电脑上架设web服务器呢?虽然在网上我们就能搜到方法,可是小编觉得手动设置比较麻烦,不如让一款软件来帮我们搞定这个问题! 多维互联网介绍: 是一款可以完成对本地电脑进行动态dns解决的软件, ...
- web服务器角色源文件,IIS 7.5中提供的Web服务器(IIS)角色服务详请
Internet 信息服务 (IIS) 7.5 是 Windows 7 中的 Web 服务器 (IIS) 角色和 Windows Server? 2008 R2 中的 Web 服务器.Web 服务器在 ...
- 服务器能ping通但是不能访问网页,解惑:Web服务器能Ping通但不能访问
[IT168 专稿]访问Web服务器是许多局域网用户经常要做的一项"功课",在频繁访问过程中,不少朋友积累了一些Web服务器访问经验,这些经验常常会帮助他们快速解决一些无法访问的小 ...
最新文章
- Intel 6系列芯片组设计缺陷 全球出货暂停
- 扛住 100 亿次请求?我们来试一试
- SLP是最近在BCH中引入的一个功能,它允许创建定制令牌。
- (转)Spring定时任务的几种实现
- boost::core模块实现np地址
- 前端学习(3311):redux的state hook对象
- ns3 统计一个包所经历的时延_【直击UDE2020】显示链接的智慧生活,你我正在经历...
- 配置了坐标还是找不到serv_你那么努力,为何还是找不到工作?从优势发展观来看个人职业发展...
- 笨办法学 Python · 续 练习 48:`ed`
- JS高级程序设计2nd部分知识要点3
- 【优化算法】非洲秃鹫优化算法(AVOA)【含Matlab源码 1805期】
- 智能门禁人脸识别小程序开发制作
- 【故障分析】基于matlab GUI蚁群算法故障诊断【含Matlab源码 931期】
- 《遥远的救世主》(摘录)
- 2021高考体检成绩查询,2021年重庆高考体检报告结果查询时间及查询网址入口
- Java获取三个月的时间
- 我的沪漂第一天,值得纪念的一天!
- 什么是接口测试?测试人员为什么要做接口测试?
- C语言头文件路径相关问题总结说明
- 安装一套无人值守称重系统需要多少人