解决:Zabbix服务主机可用性ZBX红色不可用

配置了zabbix主机的监控服务过后,发现有部分主机的可用性ZBX那里是红色,鼠标移上去提示:Received empty response from Zabbix Agent at [x.x.x.x]. Assuming that agent dropped connection because of access permissions

因为agent没有启动

修改agent配置文件:/usr/local/zabbix/etc/zabbix_agentd.conf,正常的配置过程应该为下面的

mv zabbix_agentd.conf zabbix_agentd.conf.bak (保留一份原始配置文件,好习惯)

cat zabbix_agentd.conf.bak | grep -v ^# |grep -v ^$ >> zabbix_agentd.conf 

具体配置如下:

PidFile=/usr/local/zabbix/zabbix_agentd.pid

LogFile=/usr/local/zabbix/zabbix_agentd.log

#Server默认是127.0.0.1,改为server地址,可加上子网掩码,多个以英文,分隔
Server=127.0.0.1,10.10.10.130

#ServerActive默认是127.0.0.1,server服务端口是10051,客户端是10050
ServerActive=10.10.10.130:10051

#Hostname如果都是默认安装,保持不变
Hostname=Zabbix server

不过奇怪的是192.168.0.190是客户机IP,埴上去也可以变绿

#Server默认是127.0.0.1,改为server地址,可加上子网掩码,多个以英文,分隔。此处设置白名单,允许连接的服务器地址 Server=127.0.0.1,192.168.0.190/16 #ServerActive默认是127.0.0.1,server服务端口是10051,客户端是10050 ServerActive=127.0.0.1 #Hostname如果都是默认安装,保持不变 Hostname=Zabbix server

最后:切记切记启动agent

/usr/local/zabbix/sbin/zabbix_agentd

Linux下Zabbix客户端编译安装

添加监控项目有多种方式



客户端监控、简单监控比较



Zabbix Agent编译安装

yum install -y gcc gcc-c++ make pcre-devel
useradd -s /sbin/nologin zabbix
cd /usr/local/src/
wget 'https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.0.3/zabbix-4.0.3.tar.gz'
tar -zxvf zabbix-4.0.3.tar.gz
cd zabbix-4.0.3
./configure --prefix=/usr/local/zabbix --enable-agent
make && make install
chown zabbix:zabbix -R /usr/local/zabbix/


环境变量配置

PATH=$PATH:/usr/local/zabbix/sbin/:/usr/local/zabbix/bin/


zabbix agent配置,Server和ServerActive上配置的是zabbix server的ip
PidFile=/usr/local/zabbix/zabbix_agentd.pid
LogFile=/usr/local/zabbix/zabbix_agentd.log
Hostname=xxx(建议:和server的网页上监控法人主机名保持一致,如:www_001,同时和系统名保持一致:hostnamectl set-hostname www_001)
Server=xxx
ServerActive=xxx
UnsafeUserParameters=1
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf

zabbix agent启动
/usr/local/zabbix/sbin/zabbix_agentd

验证zabbix agent有没有成功启动


监控cpu内存磁盘流量

zabbix_get



zabbix在可用性显示灰色 zabbix主机可用性灰的_Server


 


监控cpu负载

key: system.cpu.load[all,avg1]     Float型

zabbix在可用性显示灰色 zabbix主机可用性灰的_客户端_02

key: system.cpu.load[all,avg5]  Float型

key: system.cpu.load[all,avg15] Float型


监控cpu使用和空闲

system.cpu.util[,iowait,] Float型

system.cpu.util[,system,] Float型

system.cpu.util[,user,] Float型

system.cpu.util[,idle,] Float型

zabbix在可用性显示灰色 zabbix主机可用性灰的_Server_03

 


监控剩余内存(buffers\cached实际上也是剩余的)

vm.memory.size[available]

定义trigger

zabbix在可用性显示灰色 zabbix主机可用性灰的_客户端_04


监控磁盘

名称:Disk pfree on $1

名称:inode pfree on $1

vfs.fs.size[/,pfree]  Float型
vfs.fs.inode[/,pfree]  Float型


监控流量

net.if.in[eth0]                     整形(每秒速率) 默认返回字节数,需要*8  
net.if.out[eth0]   整形(每秒速率) 默认返回字节数,需要*8


Shell计算流量

onetime=$(ifconfig|grep eth0 -A 6|grep 'RX packets'|awk '{print $5}')
sleep 30
twotime=$(ifconfig|grep eth0 -A 6|grep 'RX packets'|awk '{print $5}')
echo "incoming traffic is $((($twotime-$onetime)/30*8))bps"

onetime=$(ifconfig|grep eth0 -A 6|grep 'TX packets'|awk '{print $5}')
sleep 30
twotime=$(ifconfig|grep eth0 -A 6|grep 'TX packets'|awk '{print $5}')
echo "outer traffic is $((($twotime-$onetime)/30*8))bps"