IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Nginx配置文件详解(2) -> 正文阅读

[系统运维]Nginx配置文件详解(2)

Nginx配置文件详解(2)

开启状态界面

[root@localhost ~]# nginx -V
nginx version: nginx/1.20.1
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --user=nginx --group=nginx --with-debug --with-http_ssl_module --with-http_realip_module --with-http_image_filter_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_stub_status_module --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --add-module=../echo-nginx-module-0.61
在编译nginx的时候安装相应的软件包--with-http_gzip_static_module,然后去配置文件中添加内容,最后去浏览器中去访问即可
[root@localhost conf]# pwd
/usr/local/nginx/conf
[root@localhost conf]# vim nginx.conf
//添加一下三行内容
        location /status {   
                stub_status;
}
 ......
[root@localhost conf]# nginx -s reload

去网页查看
在这里插入图片描述

状态页面信息详解:

状态码表示的意义
Active connections 2当前所有处于打开状态的连接数
accepts总共处理了多少个连接
handled成功创建多少握手
requests总共处理了多少个请求
Readingnginx读取到客户端的Header信息数,表示正处于接收请求状态的连接数
Writingnginx返回给客户端的Header信息数,表示请求已经接收完成, 且正处于处理请求或发送响应的过程中的连接数
Waiting开启keep-alive的情况下,这个值等于active - (reading + writing), 意思就是Nginx已处理完正在等候下一次请求指令的驻留连接

使用zabbix监控nginx页面状态信息

在nginx服务器安装zabbix_agent客户端

下载依赖包,解压zabbix到/usr/src, 创建用户 编译安装zabbix-agent 修改配置文件
[root@localhost ]# yum -y install gcc gcc-c++ make pcre-devel openssl openssl-devel
[root@localhost src]# useradd -r -M -s /sbin/nologin zabbix
[root@localhost src]# tar xf zabbix-5.4.4.tar.gz 
[root@localhost src]# cd zabbix-5.4.4/
[root@localhost zabbix-5.4.4]# ./configure --enable-agent
[root@localhost zabbix-5.4.4]# make install
#安装完过后在/usr/local/etc/下会有agent配置文件
[root@localhost zabbix-5.4.4]# ls /usr/local/etc/
zabbix_agentd.conf  zabbix_agentd.conf.d

[root@localhost zabbix-5.4.4]# vim /usr/local/etc/zabbix_agentd.conf
......
Server=192.168.136.131   //被动模式
ServerActive=192.168.136.131  //主动模式
Hostname=Nginx
......
关闭防火墙和selinx
[root@localhost zabbix-5.4.4]# systemctl disable firewalld
[root@localhost zabbix-5.4.4]# setenforce 0
setenforce: SELinux is disabled

[root@localhost zabbix-5.4.4]# zabbix_agentd 
[root@localhost zabbix-5.4.4]# ss -antl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN      0      128     *:10050               *:*                  
LISTEN      0      128     *:80                  *:*                  
LISTEN      0      128     *:22                  *:*                  
LISTEN      0      100    127.0.0.1:25                  *:*                  
LISTEN      0      128     *:443                 *:*                  
LISTEN      0      128    :::22                 :::*                  
LISTEN      0      100       ::1:25                 :::*                  

zabbix服务端添加主机
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

编写监控脚本 让zabbix监控nginx状态

reading大 很多请求在等待接受 处理能力不够
waiting 越小越好 工作饱和 只有几个人在等待,如果没有人等待表示工作不饱和很闲,实际中不会这么浪费 会近可能的给机器安排工作。

[root@localhost ~]# mkdir /scripts
[root@localhost ~]# cd /scripts/
[root@localhost scripts]# ls
[root@localhost scripts]# curl http://192.168.136.250/status
Active connections: 1 
server accepts handled requests
 3 3 3 
Reading: 0 Writing: 1 Waiting: 0 

[root@localhost scripts]# vim writing.sh
[root@localhost scripts]# vim waiting.sh 
[root@localhost scripts]# vim reading.sh 
[root@localhost scripts]# cat reading.sh 
#/bin/bash

Reading=$(curl  -s http://192.168.136.250/status | awk 'NR==4{print $2}')
if [ $Reading -gt 80 ];then
        echo "1"
else
        echo "0"
fi
[root@localhost scripts]# cat writing.sh 
#/bin/bash
writing=$(curl  -s http://192.168.136.250/status | awk 'NR==4{print $4}')
if [ $writing -gt 50 ];then
        echo "1"
else
        echo "0"
fi
[root@localhost scripts]# cat waiting.sh 
#/bin/bash
waiting=$(curl  -s http://192.168.136.250/status | awk 'NR==4{print $6}')
if [ $waiting -gt 30 ];then
        echo "1"
else
        echo "0"
fi
[root@localhost scripts]# 

修改zabbix_agentd.conf文件

[root@localhost ~]# vim /usr/local/etc/zabbix_agentd.conf
......
UnsafeUserParameters=1
......
# 配置文件最后面添加一下内容
UserParameter=check_reading,/scripts/reading.sh   
UserParameter=check_waiting,/scripts/waiting.sh
UserParameter=check_writing,/scripts/writing.sh

重启zabbix-agentd 验证

[root@localhost ~]# pkill zabbix
[root@localhost ~]# zabbix_agentd 
[root@localhost ~]# ss -antl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN      0      128     *:10050               *:*                  
LISTEN      0      128     *:80                  *:*                  
LISTEN      0      128     *:22                  *:*                  
LISTEN      0      100    127.0.0.1:25                  *:*                  
LISTEN      0      128     *:443                 *:*                  
LISTEN      0      128    :::22                 :::*                  
LISTEN      0      100       ::1:25                 :::*                  
[root@localhost ~]# chmod 755 /scripts/
[root@localhost scripts]# chmod +x reading.sh waiting.sh writing.sh 

[root@localhost ~]# zabbix_get -s 192.168.136.250 -k check_reading
0

本文只演示一个监控,其他两个配置与这个配置相同

添加监控项
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

添加触发器
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

验证

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章           查看所有文章
加:2021-10-30 12:50:23  更:2021-10-30 12:52:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 22:49:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码