nginx配置文件修改
#匹配连接次数
curl -s http://127.0.0.1/nginx_status | awk '/Active/ {print $3}'
which curl 查看命令路径
nginx性能监控脚本
nginx_active() {
/usr/bin/curl -s http://127.0.0.1/nginx_status | awk '/Active/ {print $NF}' #$NF最后一个
}
nginx_reading(){
/usr/bin/curl -s http://127.0.0.1/nginx_status | awk '/reading/ {print $3}'
}
nginx_accepts(){
/usr/bin/curl -s http://127.0.0.1/nginx_status | awk '/NR==3 {print $1}'
}
nginx_check() {
pro_num=$(ps aux | grep -v grep |grep -c "nginx:")
if [ $pro_num -le 0 ];then
echo "nginx is down"
else
echo "nginx is runing"
fi
}
###main###
cmd=¥1
case $cmd in
check)
nginx_check
;;
active)
nginx_active
;;
accepts)
nginx_accepts
;;
requests)
nginx_requests
;;
*)
echo "$USAGE: $0 {check|active|reading|writing|waiting|accepts|handled|requests}"
esac
cd /etc/zabbixzabix_agent1.d
vim userpara,ter_nginx.conf
zabbix_get -s 127.0.0.1 -p 10050 -k 'nginx.status[check]'
检查ninx进程killall -0 nginx
echo $?
netstat -lntp | grep nginx
pidof nginx #有进程号产生说明有进程
函数:
ps aux | grep nginx
ps aux | grep -v grep |grep -c "nginx:"
模板--监控项
触发器1
nginx down on {HOST,NAME}
表达式
触发器2一样
图像
主机更新一下
自动发现
修改配置文件
system.uname获取内核版本也行
动作--->启用
配置 auto dis
服务端找客户端
zabbix自动注册
客户端配置文件
152行注释项取消
egrep -v“^$|^#”!$
分布式监控负载均衡
systemctl restart agent和zabbix
数据库高mmm,mha
前端keepalive,haproxy做高可用
zabbix官方的高可用仅仅针对 Zabbix Server 部分高可用
注意配置文件中分隔符不一样
java插件
总结
zabbix自动发现,server端主动去发现agent客户端
自动注册 agent客户端主动找server端注册
zabbix-proxy 代理服务器 代为接收agent收集的监控数据,载转发给server端
zabbix HA 主备节点都要配置相同的数据库地址,库名,用户名,密码。
配置HANodeName= 指定集群节点名称或ip,要求每个节点唯一
NodeAddreess 指定集群节点的ip:端口
zabbix 监控 windows 安装windows版本的agent
zabbix 监控 java应用 需要先在java应用启动时添加JMX监控配置参数
-Dcom.sun.management.jmxremote.port=12345 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-Djava.rmi.server.hostname=客户端IP地址" \
-jar XXX.jar
再在服务端安装zabbix-java-gateway,然后在管理页面中使用JMX监控类型添加主机
zabbix 监控 SNMP 在管理页面中使用SNMP监控类型添加主机,默认端口使用161端口
添加被监控的网络设备的暗号值(团体名)