共计 3642 个字符,预计需要花费 10 分钟才能阅读完成。
Tengine 是由淘宝网发起的 Web 服务器项目。它在 Nginx 的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine 的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。现在作为一个开源项目,也越来越多的人使用它代替 nginx。
1. 添加 Tengine 配置
tengine 配置文件添加如下 server
server {
listen 80 ;
server_name 127.0.0.1 ;
location /nginx-status {
stub_status on;
allow 127.0.0.1;
deny all;
access_log off;
}
location /check-status {
check_status;
allow 127.0.0.1;
deny all;
access_log off;
}
}
重载 Tengine 后,本机查看结果:# curl 127.0.0.1/nginx-status
Active connections: 1
server accepts handled requests
1805146 1805146 1805167
Reading: 0 Writing: 1 Waiting: 0
以上为正常显示结果。
2. 添加 nginx 监控源脚本
cat /usr/local/zabbix/shell/nginx_status.sh
#!/bin/bashHOST="127.0.0.1"PORT="80"
# Functions to return nginx stats function active {/usr/bin/curl "http://$HOST:$PORT/nginx-status" 2>/dev/null| grep 'Active' | awk '{print $NF}'
} function reading {/usr/bin/curl "http://$HOST:$PORT/nginx-status" 2>/dev/null| grep 'Reading' | awk '{print $2}'
} function writing {/usr/bin/curl "http://$HOST:$PORT/nginx-status" 2>/dev/null| grep 'Writing' | awk '{print $4}'
} function waiting {/usr/bin/curl "http://$HOST:$PORT/nginx-status" 2>/dev/null| grep 'Waiting' | awk '{print $6}'
} function accepts {/usr/bin/curl "http://$HOST:$PORT/nginx-status" 2>/dev/null| awk NR==3 | awk '{print $1}'
} function handled {/usr/bin/curl "http://$HOST:$PORT/nginx-status" 2>/dev/null| awk NR==3 | awk '{print $2}'
} function requests {/usr/bin/curl "http://$HOST:$PORT/nginx-status" 2>/dev/null| awk NR==3 | awk '{print $3}'
} # Run the requested function $1
3. 编辑 zabbix agentd 配置文件
修改如下:vim /usr/local/zabbix/etc/zabbix_agentd.conf
添加 zabbix 自定义 key,重启 zabbix agentdvim /usr/local/zabbix/etc/zabbix_agentd.conf.d/nginx_status_key
#nginx_status_key UserParameter=nginx.accepts,/usr/local/zabbix/shell/nginx_status.sh accepts
UserParameter=nginx.handled,/usr/local/zabbix/shell/nginx_status.sh handled
UserParameter=nginx.requests,/usr/local/zabbix/shell/nginx_status.sh requests
UserParameter=nginx.connections.active,/usr/local/zabbix/shell/nginx_status.sh active
UserParameter=nginx.connections.reading,/usr/local/zabbix/shell/nginx_status.sh reading
UserParameter=nginx.connections.writing,/usr/local/zabbix/shell/nginx_status.sh writing
UserParameter=nginx.connections.waiting,/usr/local/zabbix/shell/nginx_status.sh waiting
从 zabbix server 端获取监控数据,结果如下为正常:
4. 导入 zabbix 监控 Tengine 模板
5.Zabbix 主机链接模板
6. 监控成功
总结
从上文看到,Zabbix 添加自定义监控数据,需要做到:
Zabbix agentd 添加自定义 key;
自定义 key 调用的是获取监控数据源脚本等;
添加 Zabbix 主机数据源模板,主机链接模板。
相关文档可以到 Linux 公社资源站下载:
—————————————— 分割线 ——————————————
免费下载地址在 http://linux.linuxidc.com/
用户名与密码都是www.linuxidc.com
具体下载目录在 /2017 年资料 / 5 月 / 7 日 /Zabbix 监控 Tengine 详解 /
下载方法见 http://www.linuxidc.com/Linux/2013-07/87684.htm
—————————————— 分割线 ——————————————
一些 Zabbix 相关教程集合:
Ubuntu 14.04 下 Zabbix2.4.5 源码编译安装 http://www.linuxidc.com/Linux/2015-05/117657.htm
CentOS 7 LNMP 环境搭建 Zabbix3.0 http://www.linuxidc.com/Linux/2017-02/140134.htm
Ubuntu 16.04 安装部署监控系统 Zabbix2.4 http://www.linuxidc.com/Linux/2017-03/141436.htm
Zabbix 监控安装部署及警报配置 http://www.linuxidc.com/Linux/2017-03/141611.htm
Zabbix 触发器表达式详解 http://www.linuxidc.com/Linux/2017-03/141921.htm
Ubuntu 16.04 下安装部署 Zabbix3.0 http://www.linuxidc.com/Linux/2017-02/140395.htm
CentOS 6.3 下 Zabbix 监控 apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm
CentOS 7 下 Zabbix 3.0 安装详解 http://www.linuxidc.com/Linux/2017-03/141716.htm
64 位 CentOS 6.2 下安装 Zabbix 2.0.6 http://www.linuxidc.com/Linux/2014-11/109541.htm
ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-05/143537.htm