17_Linux下zabbix客户端编译安装

监控项目的多种方式

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

实战环境

  • zabbix server:192.168.3.111
  • 被监控服务器:192.168.3.199(www_001),192.168.3.198(www_002)

客户端监控优势(对比简单监控)

  1. 能获得更多的服务器信息,例如cpu、内存等
  2. zabbix客户端内置了很多key,方便我们监控基本硬件信息
  3. 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.4.4/zabbix-4.4.4.tar.gz"
tar -zxvf zabbix-4.4.4.tar.gz
cd zabbix-4.4.4
./configure --prefix=/usr/local/zabbix --enable-agent
make && make install
chown zabbix:zabbix -R /usr/local/zabbix

环境变量

echo "export PATH=$PATH:/usr/local/zabbix/sbin:/usr/local/zabbix/bin" >>/etc/profile && source /etc/profile

zabbix agent配置

Hostname建议跟web端配置相同,同时建议与被监控服务器系统主机名相同(设置主机名hostnamectl set-hostname www_001)
Server(被动式,允许serverIP来访问我)和ServerActive(主动式,将数据上传给serverIP)上配置的是zabbix server的ip

cat >/usr/local/zabbix/etc/zabbix_agentd.conf <<EOF
PidFile=/usr/local/zabbix/zabbix_agentd.pid
LogFile=/usr/local/zabbix/zabbix_agentd.log
Hostname=www_00
Server=192.168.3.111
ServerActive=192.168.3.111
UnsafeUserParameters=1 
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf
EOF

zabbix agent启动

mkdir /usr/local/zabbix/etc/zabbix_agentd.conf.d
zabbix_agentd

验证zabbix agent是否成功启动

  1. 日志 tail -f /usr/local/zabbix/zabbix_agentd.log
  2. 进程 ps auxf | grep zabbix
  3. 端口(10050) netstat -tulnp | grep zabbix

使用systemctl管理zabbix_agentd

cat >/usr/lib/systemd/system/zabbix_agentd.service <<EOF
[Unit]
Description=zabbix_agentd
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/php/sbin/zabbix_agentd
[Install]
WantedBy=multi-user.target
EOF