部署
中间件搭建
前端管理LNMP
-
安装:
yum -y install gcc pcre-devel zlib-devel openssl-devel mariadb-devel php yum -y install php-fpm php-mysql mariadb-server mkdir /data tar -xvf nginx-1.12.2.tar.gz -C /data/ cd /data/nginx-1.12.2/ ./configure --with-http_ssl_module --prefix=/data/nginx make && make install
-
配置文件
vim /data/nginx/conf/nginx.conf http { fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; ... server { listen 80; server_name localhost; location / { root html/zabbix; index index.html index.htm; } location ~ \.php$ { root html/zabbix; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi.conf; }
-
启动
systemctl start php-fpm systemctl enable php-fpm
#/data/nginx/sbin/nginx #配置systemctl vim /usr/lib/systemd/system/nginx.service [Unit] #服务名 Description=nginx #在网络启动以后启动 After=network.target [Service] Type=forking ExecStart=/data/nginx/sbin/nginx ExecReload=/data/nginx/sbin/nginx -s reload ExecStop=/data/nginx/sbin/nginx -s quit [Install] WantedBy=multi-user.target systemctl daemon-reload /data/nginx/sbin/nginx -s stop systemctl start nginx.service systemctl status nginx.service systemctl enable nginx.service
Zabiix安装
-
创建zabbix用户
groupadd zabbix useradd -g zabbix -s /sbin/nologin zabbix mkdir /data/zabbix chown -R zabbix:zabbix /data/zabbix
-
安装:
yum -y install curl-devel net-snmp-devel libevent-devel go library libxml2 tar -xvf zabbix-4.4.0.tar.gz -C /data cd /data/zabbix-4.4.0/ ./configure --prefix=/data/zabbix --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy --enable-java make install
-
Zabiix初始化准备
#创建数据库与数据库连接账户 mysql -uroot -p'mtxx87668438' 4.4版本:create database zabbix character set utf8mb4; 4.4版本:create user 'zabbix'@'%' identified by 'zabbix'; 4.4版本:grant all privileges on zabbix.* to 'zabbix'@'%'; create database zabbix character set utf8 collate utf8_bin; create user 'zabbix'@'%' identified by 'zabbix'; grant all privileges on zabbix.* to 'zabbix'@'%';
cd /data/zabbix-4.4.0/database/mysql/ mysql -uroot -p'mtxx87668438' zabbix < schema.sql mysql -uroot -p'mtxx87668438' zabbix < images.sql mysql -uroot -p'mtxx87668438' zabbix < data.sql
-
上线zabbix页面
mkdir /data/nginx/html/zabbix 4.4版本:cp -a /data/zabbix-4.4.0/frontends/php/* /data/nginx/html/zabbix/ cp -a ui/* /home/nginx/html/zabbix5/ chmod -R 777 /data/nginx/html/zabbix
#图表字符乱码的解决办法
上传simkai.ttf到/data/nginx/html/zabbix/assets/fonts mv /data/nginx/html/zabbix/assets/fonts/DejaVuSans.ttf /data/nginx/html/zabbix/assets/fonts/DejaVuSans.ttf.bak mv simkai.ttf DejaVuSans.ttf vim /data/nginx/html/zabbix/include/defines.inc.php
-
解决zabbix依赖
yum -y install php-gd php-xml php-ldap php-bcmath php-mbstring vim /etc/php.ini date.timezone = Asia/Shanghai max_execution_time = 300 post_max_size = 32M max_input_time = 300 systemctl restart php-fpm
-
图形安装:访问
http://192.168.10.163:15010/setup.php
-
Zabbix配置文件:
vim /data/zabbix/etc/zabbix_server.conf DBHost=192.168.10.162 ListenPort=10051 #zabbix server监听端口 LogFile=/tmp/zabbix_server.log #zabbix server日志路径 DBName=zabbix #zabbix server连接MySQL数据库的数据库名 DBUser=zabbix #zabbix server连接MySQL数据库的用户名 DBPassword=zabbix #zabbix server连接MySQL数据库的密码 StartPollers=5 #用于设置zabbix server服务启动时启动Pollers(主动收集数据进程)的数 量,数量越多,则服务端吞吐能力越强,同时对系统资源消耗越大 StartTrappers=100 #用于设置zabbix server服务启动时启动Trappers(负责处理Agentd推送过 来的数据的进程)的数量。Agentd为主动模式时,zabbix server需要设置这 个值大一些。 StartDiscoverers=10 #用于设置zabbix server服务启动时启动Discoverers进程的数量,如果zabbix 监控报Discoverers进程忙时,需要提高该值。 ListenIP=0.0.0.0 #zabbix server启动的监听端口对哪些ip开放,Agentd为主动模式时,这个 值建议设置为0.0.0.0 AlertScriptsPath=/data/zabbix/share/zabbix/alertscripts #zabbix server运行脚本存放目录,一些供zabbix server使用的脚本,都可 以放在这里。 #JavaGateway=192.168.3.14 #JavaGatewayPort=10052 #StartJavaPollers=5 #Include=/usr/local/etc/zabbix_server.conf.d/*.conf CacheSize=2048M Timeout=30
修改日志级别
vim lib/logback.xml <root level="debug"> <appender-ref ref="FILE" /> </root>
-
加入service命令
cp /data/zabbix-4.4.0/misc/init.d/fedora/core/zabbix_server /etc/init.d/ cp /data/zabbix-4.4.0/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/ vim /etc/init.d/zabbix_server BASEDIR=/data/zabbix PIDFILE=/tmp/$BINARY_NAME.pid vim /etc/init.d/zabbix_agentd BASEDIR=/data/zabbix PIDFILE=/tmp/$BINARY_NAME.pid chkconfig --add zabbix_server chkconfig --add zabbix_agentd chkconfig zabbix_agentd on chkconfig zabbix_server on
vim /usr/lib/systemd/system/zabbix-server.service [Unit] Description=Zabbix Server After=syslog.target After=network.target [Service]Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_server.conf" EnvironmentFile=-/usr/local/zabbix/sbin/zabbix_server Type=forking Restart=on-failure PIDFile=/tmp/zabbix_server.pid KillMode=control-group ExecStart=/usr/local/zabbix/sbin/zabbix_server -c $CONFFILE ExecStop=/bin/kill -SIGTERM $MAINPID RestartSec=10s [Install] WantedBy=multi-user.target
vim /usr/lib/systemd/system/zabbix-agent.service [Unit] Description=Zabbix Agent After=syslog.target After=network.target [Service] Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_agentd.conf" EnvironmentFile=-/usr/local/zabbix/sbin/zabbix_agentd Type=forking Restart=on-failure PIDFile=/tmp/zabbix_agentd.pid KillMode=control-group ExecStart=/usr/local/zabbix/sbin/zabbix_agentd -c $CONFFILE ExecStop=/bin/kill -SIGTERM $MAINPID RestartSec=10s [Install] WantedBy=multi-user.target
vim /data/zabbix/etc/zabbix_agentd.conf Server=192.168.10.163 #主动监控时开启 #ServerActive=192.168.10.163 Hostname=Zabbix servers EnableRemoteCommands=1 UnsafeUserParameters=1 RefreshActiveChecks=120 #HostMetadataltem=System.uname Timeout=30
-
启动:
systemctl daemon-reload systemctl start zabbix-agent.service systemctl start zabbix-server.service
-
禁用该无用用户
ZabbixProxy分布式监控安装
-
安装相关依赖
yum -y install gcc pcre-devel zlib-devel openssl-devel mariadb-devel php yum -y install php-fpm php-mysql mariadb-server
-
ZabiixProxy安装
#创建zabbix用户 groupadd zabbix useradd -g zabbix -s /sbin/nologin zabbix mkdir /data/zabbix chown -R zabbix:zabbix /data/zabbix #安装: yum -y install curl-devel net-snmp-devel libevent-devel go library libxml2 tar -xvf zabbix-4.4.0.tar.gz -C /data cd /data/zabbix-4.4.0/ ./configure --prefix=/data/zabbix --with-mysql --with-net-snmp --with-libcurl --enable-agent --enable-proxy --enable-java make install
-
ZabiixProxy初始化准备
#创建数据库与数据库连接账户 mysql -uroot -p'mtxx87668438' 4.4版本:create database zabbixproxy character set utf8mb4; 4.4版本:create user 'zabbixproxy'@'%' identified by 'zabbixproxy'; 4.4版本:grant all privileges on zabbixproxy.* to 'zabbixproxy'@'%'; create database zabbixproxy character set utf8 collate utf8_bin; create user 'zabbixproxy'@'%' identified by 'zabbixproxy'; grant all privileges on zabbixproxy.* to 'zabbixproxy'@'%';
cd /data/zabbix-4.4.0/database/mysql/ mysql -uroot -p'mtxx87668438' zabbixproxy < schema.sql
-
zabbix-proxy的配置
vim etc/zabbix_proxy.conf Server=zabbixserver的ip ListenPort=10051 LogFile=/tmp/zabbix_proxy.log Hostname=XXXXzabbix_proxy DBHost=192.168.231.21 DBName=zabbix_proxy DBUser=zabbix_proxy DBPassword=zabbix_proxy #代理每120s内从zabbix服务器检索配置数据 ConfigFrequency=120 #代理每60s发送收集到的数据到服务器 DataSenderFrequency=60 #用于设置服务启动时启动Pollers(主动收集数据进程)的数 量,数量越多 #则服务端吞吐能力越强,同时对系统资源消耗越大 StartPollers=5 #用于设置服务启动时启动Trappers(负责处理Agentd推送过来的数据的进程)的数量。 #Agentd为主动模式时,需要设置这个值大一些。 StartTrappers=100 #用于设置服务启动时启动Discoverers进程的数量,如果zabbix监控报Discoverers进 #程忙时,需要提高该值。 StartDiscoverers=10 #zabbix server启动的监听端口对哪些ip开放,Agentd为主动模式时, #这个值建议设置为0.0.0.0 ListenIP=0.0.0.0 #Include=/usr/local/etc/zabbix_server.conf.d/*.conf CacheSize=2048M Timeout=30
-
加入service命令
vim /usr/lib/systemd/system/zabbix-proxy.service [Unit] Description=Zabbix Proxy After=syslog.target After=network.target [Service] Environment="CONFFILE=/codebackup/code/zabbix/etc/zabbix_proxy.conf" EnvironmentFile=-/codebackup/code/zabbix/sbin/zabbix_proxy Type=forking Restart=on-failure PIDFile=/tmp/zabbix_proxy.pid KillMode=control-group ExecStart=/codebackup/code/zabbix/sbin/zabbix_proxy -c $CONFFILE ExecStop=/bin/kill -SIGTERM $MAINPID RestartSec=10s [Install] WantedBy=multi-user.target
-
启动:
systemctl daemon-reload systemctl start zabbix-proxy.service
-
Server添加代理
Zabbix客户端安装
-
上传zabbix-agent-4.4.1-1.el7.x86_64.rpm
yum -y install zabbix-agent-4.4.10-1.el7.x86_64.rpm
-
配置
vim /etc/zabbix/zabbix_agentd.conf Server=192.168.10.163 #主动监控时开启 ServerActive=192.168.10.163 StartAgents=0 #120刷新频率 RefreshActiveChecks=120 Hostname=test2for221 ListenPort=10050 EnableRemoteCommands=1 UnsafeUserParameters=1 #HostMetadataltem=System.uname Timeout=30
-
启动
systemctl start zabbix-agent.service systemctl enable zabbix-agent.service
监控交换机路由器客户端安装(以snmp监控方式)
- 安装并开启
使用
服务器网络、硬件资源监控
-
添加监控主机
添加主机群组
添加主机
-
添加监控项
-
创建图形
-
创建触发器
-
创建告警
查看报警脚本存放位置
vim /data/zabbix/etc/zabbix_server.conf AlertScriptsPath=/data/zabbix/share/zabbix/alertscripts
创建告警脚本
-
创建监控模板
创建代理
agent代理程序名称要和zabbix-proxy配置文件中的Hostname相同,且代理地址是本机IP地址
创建完成,proxy会向server端主动发送数据,并拉取配置,可以从日志/var/log/zabbix/zabbix_proxy.log查看信息
-
创建聚合图形
Cpu
CPU utilization-CPU利用率
Load average (5m avg)-平均负荷(平均5m)
Number of CPU-CPU数量磁盘
Disk read rate-磁盘读取率
Disk utilization–磁盘利用率
Disk write rate-磁盘写入速率文件系统
Space utilization-空间利用率
Total space-总空间进程
Maximum number of open file descriptors-打开的文件描述符的最大数目
Maximum number of processes-最大进程数
Number of logged in users-登录用户数
Number of processes-进程数
Number of running processes-正在运行的进程数网卡
Bits received-接收的数据量
Bits sent-已发送的数据量内存
Available memory-可用内存
Free swap space in %-可用交换空间百分比
Memory utilization-内存利用率
数据库监控
Zabbix监控mysql-进入要监控mysql机器
-
添加Template DB MySQL模板
#mysql监控用户创建 GRANT USAGE ON *.* TO 'zabbixmonitor'@'%' IDENTIFIED BY 'a'; FLUSH PRIVILEGES;
-
配置
vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf UserParameter=mysql.ping[*], /data/mysql-5.7.22/bin/mysqladmin -h"localhost" -u"zabbixmonitor" -P"3306" -p"a" ping UserParameter=mysql.get_status_variables[*], /data/mysql-5.7.22/bin/mysql -h"localhost" -u"zabbixmonitor" -P"3306" -p"a" -sNX -e "show global status" UserParameter=mysql.version[*], /data/mysql-5.7.22/bin/mysqladmin -s -h"localhost" -u"zabbixmonitor" -P"3306" -p"a" version UserParameter=mysql.db.discovery[*], /data/mysql-5.7.22/bin/mysql -h"localhost" -u"zabbixmonitor" -P"3306" -p"a" -sN -e "show databases" UserParameter=mysql.dbsize[*], /data/mysql-5.7.22/bin/mysql -h"localhost" -u"zabbixmonitor" -P"3306" -p"a" -sN -e "SELECT SUM(DATA_LENGTH + INDEX_LENGTH) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='$3'" UserParameter=mysql.replication.discovery[*], /data/mysql-5.7.22/bin/mysql -h"localhost" -u"zabbixmonitor" -P"3306" -p"a" -sNX -e "show slave status" UserParameter=mysql.slave_status[*], /data/mysql-5.7.22/bin/mysql -h"localhost" -u"zabbixmonitor" -P"3306" -p"a" -sNX -e "show slave status"
-
重启zabbix agent
systemctl restart zabbix-agent
网络硬件监控
zabbix监控交换机路由器
要监控路由器交换机,需要使用到SNMP协议
SNMP是一个简单网络管理协议,他基于C/S模型实现的监控和管理.
-
服务器安装SNMP:
yum -y install net-snmp net-snmp-utils net-snmp-agent-libs net-snmp-libs echo "view systemview included .1" >> /etc/snmp/snmpd.conf systemctl start snmpd
-
web界面添加: 在zabbix server web添加监控机
点击 配置—>主机—>创建主机 开始添加被监控机
根据图示,填写主机的信息,这里监控方法选在SNMP,别忘了添加监控模板
模板选在根据自己的设备类型,一定选snmp类型的模板
添加成功了,可是还没有数据。稍等一会。需要刷新一下
如果你看不到数据,请检查防火墙、selinux。或者通过snmpwalk测试以下zabbix server 服务器的snmp 客户端是否能收到snmp服务器的数据
在zabbix server上执行.(如果没有这个命令,请安装net-snmp-utils)
snmpwalk -v 2c -c public 192.168.10.41
看是否有滚动数据输出,有说明ok,没有的话去检查两台机器的通信情况及snmp服务端是否启动
中间件监控
自定义监控docker
node配置
-
给zabbix 免密sudo的权限
vim /etc/sudoers zabbix ALL=(root) NOPASSWD:/usr/bin/docker,/usr/bin/bash 并且需要注释掉#Defaults requiretty这一行
-
添加脚本
/sh/dockerStatus/docker.sh
#!/bin/bash #获取网络发送超时包=NetTXOverruns(整数,个) #获取网络发送丢弃包=NetTXDropped(整数,个) #获取网络发送错误包=NetTXErrors(整数,个) #获取网络发送每秒流量=NetTXPackets(浮点数,单位M) #获取网络接收超时包=NetRXOverruns(整数,个) #获取网络接收丢弃包=NetRXDropped(整数,个) #获取网络接收错误包=NetRXErrors(整数,个) #获取网络接收每秒流量=NetRXPackets(浮点数,单位M) #获取容器cpu状态=CPUUsage(整数,单位%) #获取容器内存状态=MemUsage(整数,单位M) #######################初始化日志 #获取容器基础资源 sudo docker stats --no-stream | tail -n +2 > /sh/dockerStatus/dockerResources.cxk ifconfig > /sh/dockerStatus/dockerNet.cxk #chmod -R 777 /sh/dockerStatus/ #######################变量 #把容器名写入数组变量 containers=(`cat /sh/dockerStatus/dockerResources.cxk | awk '{print $2}'`) #获取容器数目,因为从0开始所以-1,${#containers[@]}数组值个数 let num=(${#containers[@]}-1) ###################################################自动发现函数 discover(){ #seq 0 $num一行一行列出个数 for i in `seq 0 $num` ; do containerName[i]="{\"{#CONTAINERNAME}\":\"${containers[$i]}\"}" done #输出赋值后的所有,值之间以,分隔 echo "{\"data\":[${containerName[@]}]}" |tr ' ' ',' } ####################################################资源使用查询函数 containerstatus(){ #根据第一个位置变量(容器名)获取容器id containerId=`sudo docker ps -a | grep $1 | head -n 1 | awk '{print $1}'` #根据容器id获取容器网络id前12位 containerNetId=`sudo docker inspect $containerId | grep NetworkID | awk -F':' '{print $2}' | awk -F'"' '{print substr($2,1,12)}'` #根据第二个位置变量(状态值)获取容器状态 #######################容器开启、关闭状态 if [ $2 == 'ping' ] ; then #获取容器状态,true statuscontainer=`sudo docker inspect --format="{{.State.Running}}" ${containerId}` if [[ ${statuscontainer} == 'true' ]] ;then #容器开启状态 echo 1 else #容器关闭状态 echo 0 fi #######################获取容器内存状态 elif [[ $2 == 'MemUsage' ]] ; then #sed -r "s#(.*)([A-Z])iB.*iB#\1 \2#"转换为(值 单位符) #判断单位符为M,输出值;为G,转换为M输出;为K转换为M输出 menValue=`cat /sh/dockerStatus/dockerResources.cxk | grep ${containerId} | awk -F '/' '{print $1}' | awk '{print $NF}' | sed -r "s#(.*)([A-Z])iB#\1 \2#" | awk '{if ($2=="M") print $1; else if ($2=="G") print $1*1024 ; else if ($2=="K") print $1/1024 }' | awk -F '.' '{print $1}'` echo ${menValue} #######################获取容器cpu状态 elif [[ $2 == 'CPUUsage' ]] ; then cpuValue=`cat /sh/dockerStatus/dockerResources.cxk | grep ${containerId} | awk -F '%' '{print $1}' | awk '{print $NF}' | awk -F '.' '{print $1}'` echo ${cpuValue} #######################获取网络状态 #获取网络接收每秒流量 elif [[ $2 == 'NetRXPackets' ]] ; then #网络接收每秒流量单位M NetRXPacketsValue=`cat /sh/dockerStatus/dockerNet.cxk | grep -A 7 $containerNetId | grep 'RX packets' | awk -F'RX packets' '{print $2}' | awk '{print $1/1024/1024}'` echo ${NetRXPacketsValue} #获取网络接收错误包 elif [[ $2 == 'NetRXErrors' ]] ; then NetRXErrorsValue=`cat /sh/dockerStatus/dockerNet.cxk | grep -A 7 $containerNetId | grep RX | grep errors | awk -F'errors' '{print $2}' | awk '{print $1}'` echo ${NetRXErrorsValue} #获取网络接收丢弃包 elif [[ $2 == 'NetRXDropped' ]] ; then NetRXDroppedValue=`cat /sh/dockerStatus/dockerNet.cxk | grep -A 7 $containerNetId | grep RX | grep dropped | awk -F'dropped' '{print $2}' | awk '{print $1}'` echo ${NetRXDroppedValue} #获取网络接收超时包 elif [[ $2 == 'NetRXOverruns' ]] ; then NetRXOverrunsValue=`cat /sh/dockerStatus/dockerNet.cxk | grep -A 7 $containerNetId | grep RX | grep overruns | awk -F'overruns' '{print $2}' | awk '{print $1}'` echo ${NetRXOverrunsValue} #获取网络发送每秒流量 elif [[ $2 == 'NetTXPackets' ]] ; then #网络发送每秒流量单位M NetTXPacketsValue=`cat /sh/dockerStatus/dockerNet.cxk | grep -A 7 $containerNetId | grep 'TX packets' | awk -F'TX packets' '{print $2}' | awk '{print $1/1024/1024}'` echo ${NetTXPacketsValue} #获取网络发送错误包 elif [[ $2 == 'NetTXErrors' ]] ; then NetTXErrorsValue=`cat /sh/dockerStatus/dockerNet.cxk | grep -A 7 $containerNetId | grep TX | grep errors | awk -F'errors' '{print $2}' | awk '{print $1}'` echo ${NetTXErrorsValue} #获取网络发送丢弃包 elif [[ $2 == 'NetTXDropped' ]] ; then NetTXDroppedValue=`cat /sh/dockerStatus/dockerNet.cxk | grep -A 7 $containerNetId | grep TX | grep dropped | awk -F'dropped' '{print $2}' | awk '{print $1}'` echo ${NetTXDroppedValue} #获取网络发送超时包 elif [[ $2 == 'NetTXOverruns' ]] ; then NetTXOverrunsValue=`cat /sh/dockerStatus/dockerNet.cxk | grep -A 7 $containerNetId | grep TX | grep overruns | awk -F'overruns' '{print $2}' | awk '{print $1}'` echo ${NetTXOverrunsValue} else echo '' > /dev/null fi } ###############当有位置变量传入执行查询函数,没有执行发现函数 if [ $# = 0 ];then discover else containerstatus $1 $2 fi
-
添加自定义监控
vim /etc/zabbix/zabbix_agentd.d/docker.conf UserParameter=docker.discovery,/bin/bash /sh/dockerStatus/docker.sh UserParameter=docker.[*],/bin/bash /sh/dockerStatus/docker.sh $1 $2
-
授权
chmod -R 777 /sh/dockerStatus/
-
重启zabbix
#Server端测试 ./zabbix_get -s 192.168.10.117 -p 10050 -k "docker.discovery" ./zabbix_get -s 192.168.10.117 -p 10050 -k "docker.[resin_15322,MemUsage]" ./zabbix_get -s 192.168.10.117 -p 10050 -k "docker.[resin_15322,CPUUsage]"
server配置
-
新建摸板
-
新建应用集
-
新建自动发现规则(因为第一个位置变量是server传过去的,所以需要配置自动发现)
-
监控项
-
触发器
-
图形
自定义监控web并发量
-
创建自定义key
#自定义key语法格式为:UserParameter=自定义key名称,命令 vim /etc/zabbix/zabbix_agentd.d/count.line.passwd UserParameter=count.line.passwd,wc -l /etc/passwd | awk ' {print $1} '
重启agent服务
测试自定义key是否正常工作zabbix_get -s 127.0.0.1 -k count.line.passwd
-
创建监控
创建应用
创建监控项目item(监控项)
创建图形
将模板链接到被监控主机
查看监控数据图形
-
Zabbix报警功能
创建触发器
触发器表达式格式如下:
{:.()}
{主机:key.函数(参数)}<表达式>常数
可以直接手写,也可以通过add选择表达式模板
案例:
{web1:system.cpu.load[all,avg1].last(0)}>5 //0为最新数据
如果web1主机最新的CPU平均负载值大于5,则触发器状态Problem
{vfs.fs.size[/,free].max(5m)}<10G //5m为最近5分钟
根分区,最近5分钟的最大容量小于10G,则状态进入Problem
{vfs.file.cksum[/etc/passwd].diff(0)}>0 //0为最新数据
最新一次校验/etc/passwd如果与上一次有变化,则状态进入Problem
#avg, count, last, min and max 等函数支持额外的第二个参数 time_shift(时间偏移量),这个参数允许从过去一段时间内引用 数据。
配置触发器
设置触发器名称,点击add添加表达式,填写表达式:监控项为账户数量,最 近300秒账户数量大于26(根据系统账户数量实际填写)
-
zabbix自定义监控端口并并发数
vim /sh/bf80.sh #!/bin/bash ##获取80端口并发连接数 netstat -ant |grep ':80' |grep -c ESTABLISHED chmod +x /sh/bf80.sh vim /etc/zabbix/zabbix_agentd.conf UserParameter=244.bf80.count[*],/sh/bf80.sh systemctl restart zabbix-agent #测试 ./zabbix_get -s 192.168
喜欢的亲可以关注点赞评论哦!以后每天都会更新的哦!本文为小编原创文章; 文章中用到的文件、安装包等可以加小编联系方式获得;
欢迎来交流小编联系方式VX:CXKLittleBrother 进入运维交流群