Zabbix监控Linux

解决: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客户端编译安装

添加监控项目有多种方式

  • simple check,被监控的服务器无需安装客户端,如ping,端口检测之类的
  • zabbix agent,被动式监控服务器
  • zabbix agent(active),主动式监控服务器
  • snmp check,使用snmp协议去获取监控信息
  • zabbix trapper,主动式监控
  • External check,zabbix server上可编写监控脚本
  • Jmx agent,监控java进程

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

  • 能获取到更多的监控信息,例如cpu、内存等
  • zabbix客户端内置了很多key,方便我们监控基本硬件信息
  • 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_get工具,可以跟zabbix agent通讯获取监控信息
  • 使用方式:zabbix_get -s 监控主机IP -k 可监控项目的key

  • zabbix agent查看所有可监控项目key:zabbix_agentd -p

 

监控cpu负载

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

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型

 

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

vm.memory.size[available]

定义trigger

监控磁盘

名称: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"

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值