Nginx 故障自治愈及监控linux tcp连接数(小节7)

142 阅读1分钟

图片.png

图片.png

图片.png

图片.png

图片.png

106

/apps/nginx/sbin/nginx -s stop

报错 图片.png

106

/apps/nginx/sbin/nginx
vim /etc/zabbix/zabbix_agentd.conf

EnableRemoteCommands=1    <--开启远程命令、1允许、0拒绝
UnsafeUserParameters=1    <--允许特殊字符、1允许、0拒绝

重启服务

systemctl restart zabbix-agent

停止服务

/apps/nginx/sbin/nginx -s stop

图片.png

查看文件是否创建、发现已经有了

ll /tmp/linux01.txt 
-rw-rw-r-- 1 zabbix zabbix 0 Jan 12 01:11 /tmp/linux01.txt

修改后强制保存

vim /etc/sudoers

zabbix  ALL=(ALL)     NOPASSWD: ALL

启动服务

/apps/nginx/sbin/nginx

图片.png

图片.png

停止服务

/apps/nginx/sbin/nginx -s stop

#一直过滤nginx、可以看到重新启动
ps -ef|grep nginx
root      58430      1  0 01:32 ?        00:00:00 nginx: master process /apps/nginx/sbin/nginx
nobody    58431  58430  0 01:32 ?        00:00:00 nginx: worker process
root      58433   2113  0 01:32 pts/0    00:00:00 grep --color=auto nginx

或者网页一直刷新 图片.png

创建nginx用户

useradd nginx -u 2019

id nginx
uid=2019(nginx) gid=2019(nginx) groups=2019(nginx)

将nginx改为默认用户

vim /apps/nginx/conf/nginx.conf

user  nginx;   <--
/apps/nginx/sbin/nginx -s reload
ps -ef|grep nginx
root      58430      1  0 01:32 ?        00:00:00 nginx: master process /apps/nginx/sbin/nginx
nginx     63122  58430  0 01:39 ?        00:00:00 nginx: worker process
root      63363   2113  0 01:39 pts/0    00:00:00 grep --color=auto nginx
/apps/nginx/sbin/nginx -s stop
ps -ef|grep nginx
root      65946      1  0 01:43 ?        00:00:00 nginx: master process /apps/nginx/sbin/nginx
nginx     65947  65946  0 01:43 ?        00:00:00 nginx: worker process
root      65954   2113  0 01:43 pts/0    00:00:00 grep --color=auto nginx

监控TCP脚本

106

cd /etc/zabbix/zabbix_agentd.conf.d/

#监控脚本
cat tcp_conn.sh

#!/bin/bash
tcp_conn_status(){
        TCP_STAT=$1
        ss -ant | awk 'NR>1 {++s[$1]} END {for(k in s) print k,s[k]}' > /tmp/tcp_conn.txt
        TCP_NUM=$(grep "$TCP_STAT" /tmp/tcp_conn.txt | cut -d ' ' -f2)
        if [ -z $TCP_NUM ];then
                TCP_NUM=0
        fi
        echo $TCP_NUM
}

main(){
        case $1 in
            tcp_status)
                tcp_conn_status $2;
                ;;
        esac
}

main $1 $2
ss -nat

#链接数
bash tcp_conn.sh tcp_status LISTEN
13
bash tcp_conn.sh tcp_status TIME-WAIT2
0

添加执行权限

chmod a+x tcp_conn.sh
pwd
/etc/zabbix/zabbix_agentd.conf.d    <--当前所在目录

#注释掉文件中信息、写到下面文件中
vim ../zabbix_agentd.conf
#UserParameter=nginx.status[*],/etc/zabbix/zabbix_agentd.conf.d/nginx_status.sh "$1" "$2" "$3"

vim linux01.conf
UserParameter=nginx.status[*],/etc/zabbix/zabbix_agentd.conf.d/nginx_status.sh "$1" "$2" "$3"
UserParameter=linux_status[*],/etc/zabbix/zabbix_agentd.conf.d/tcp_conn.sh "$1" "$2"

重启服务

systemctl restart zabbix-agent

101

#权限解决
zabbix_get -s 192.168.37.106 -p 10050 -k linux_status[tcp_status,ESTAB]
/etc/zabbix/zabbix_agentd.conf.d/tcp_conn.sh: line 4: /tmp/tcp_conn.txt: Permission denied
4

106

删除重新创建、或更改目录属主属组权限

rm -rf /tmp/tcp_conn.txt

101

zabbix_get -s 192.168.37.106 -p 10050 -k linux_status[tcp_status,ESTAB]
4

zabbix_get -s 192.168.37.106 -p 10050 -k linux_status[tcp_status,LISTEN]
13

新建模板

图片.png

图片.png

图片.png

图片.png

图片.png 关联模板

图片.png

图形

图片.png

图片.png

图片.png

查看是否有数据 图片.png

导入模板

模板下载:Template Linux TCP_CONN Status.xml.xml

图片.png

添加模板 图片.png

配置模板

图片.png

图片.png