安装 Zabbix-Agent

前面我们已经知道了 Zabbix 可以采用 Agent/Server 的架构,客户端的采集方式分为 Agent、SNMP等,这里先学习用Agent方式对服务器进行监控,在后面,将对其他的监控方式(SNMP、JMX、IPMI)进行详细介绍,下面介绍Zabbix-Agent手动安装的方式。 这里的客户端采用源码包的方式安装

tar -zxf zabbix-3.0.7.tar.gz cd zabbix-3.0.7 yum -y install gcc ./configure --enable-agent make make install 防火墙设置

防火墙设置如下:

vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT -A OUTPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT systemctl restart iptables 配置 zabbix_agentd.conf

useradd -M -s /sbin/nologin -r zabbix

mkdir /var/run/zabbix

mkdir /var/log/zabbix

chown zabbix.zabbix /var/{run,log}/zabbix

egrep -v "(^#|^$)" /usr/local/etc/zabbix_agentd.conf

PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 Server=192.168.0.5 ServerActive=192.168.0.5 Hostname=CentOS7u2-1 Include=/usr/local/etc/zabbix_agentd.conf.d/ 需改变的参数如下

Server:被动模式,允许那台服务器连接Agent ServerActive:主动模式,向那台服务器传送数据 一个Agent是可以同时向多个服务器端发送数据的,多个IP用逗号分隔。 Server=127.0.0.1,192.168.0.240,表示Server的IP为127.0.0.1和192.168.0.240,这两台Zabbix-Server服务器端可获取此Agent端的监控数据。

egrep -v "(^#|^$)" /usr/local/etc/zabbix_agentd.conf

PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 Server=192.168.0.5 ServerActive=192.168.0.5:10051 Hostname=CentOS7u2-1 Include=/usr/local/etc/zabbix_agentd.conf.d/ SNMP 监控方式的配置

由于某些设备不能安装Agent,或者处于安装Agent不方便的因素考虑,将采用SNMP来监控。本节只介绍Linux下SNMP的配置。关于SNMP的原理、监控配置的知识。 下面配置Linux下SNMP的监控,语句如下:

yum -y install net-snmp

vim /etc/snmp/snmpd.conf

com2sec mynetwork 192.168.0.5 public_monitor com2sec mynetwork 127.0.0.1 public group MyROGroup v2c mynetwork access MyROGroup "" any noauth prefix all none none view all include .1 80

systemctl start snmpd

systemctl enable snmpd

在Windows中安装Zabbix-Agent

安装配置 下载 Zabbix-Agent 的 Windows 版本,这里以 Zabbix-Agent 3.0.4 为例,下载地址为http://www.zabbix.com/download 下载后,解压到 C:\Program Files\,如下图所示

解压Zabbix-Agent 到 Windows

zabbix_agent.conf 的配置和Linux中的配置一样,此处不再重复,步骤依然是先配置 Zabbix_agentd.conf 在启动服务。

注册服务 进入powershell命令行:

PS C:\Windows\system32> cd 'C:\Program Files\zabbix_agents_3.0.4.win\bin\win64' PS C:\Program Files\zabbix_agents_3.0.4.win\bin\win64> ls

目录: C:\Program Files\zabbix_agents_3.0.4.win\bin\win64

Mode LastWriteTime Length Name


d---- 2017/2/18 8:02 dev -a--- 2016/9/12 16:33 434688 zabbix_agentd.exe -a--- 2016/9/12 16:33 139776 zabbix_get.exe -a--- 2016/9/12 16:33 189440 zabbix_sender.exe

PS C:\Program Files\zabbix_agents_3.0.4.win\bin\win64> .\zabbix_agentd.exe --install -c 'C:\Program Files\zabbix_agents_ 3.0.4.win\conf\zabbix_agentd.win.conf' zabbix_agentd.exe [1756]: service [Zabbix Agent] installed successfully zabbix_agentd.exe [1756]: event source [Zabbix Agent] installed successfully PS C:\Program Files\zabbix_agents_3.0.4.win\bin\win64> 注册Zabbix-Agent服务,注意,路径中有空格,应该用双引号。

Windows 注册服务

在管理服务器中查看是否已经添加完成。

zabbix-agent 服务查看 启动服务 用Windows图形界面对服务进行控制。

启动Zabbix-Agent服务

Zabbix-Agent服务启动中

Zabbix-Agent服务属性 (1) 采用Windows的net命令进行控制 停止与启动服务

PS C:\Windows\system32> net stop "Zabbix Agent"

Zabbix Agent 服务已成功停止。

PS C:\Windows\system32> net start "Zabbix Agent" Zabbix Agent 服务正在启动 . Zabbix Agent 服务已经启动成功。 (2) 采用程序命令方式控制服务 启动服务

PS C:\Program Files\zabbix_agents_3.0.4.win\bin\win64> .\zabbix_agentd.exe -s -c "C:\Program Files\zabbix_agents_3.0.4.w in\conf\zabbix_agentd.win.conf" zabbix_agentd.exe [2024]: service [Zabbix Agent] started successfully 停止服务

PS C:\Program Files\zabbix_agents_3.0.4.win\bin\win64> .\zabbix_agentd.exe -x -c "C:\Program Files\zabbix_agents_3.0.4.w in\conf\zabbix_agentd.win.conf" zabbix_agentd.exe [2992]: service [Zabbix Agent] stopped successfully Zabbix-Get 的使用

Zabbix-Get 是Zabbix中的一个程序,用于Zabbix-Server到Zabbix-Agent 的数据获取,通常可以用来检测验证Agent的配置是否正确。 用法如下:

zabbix_get [-hV] -s <host name or IP> [-p <port>] [-I <IP address>] -k <key> -s 远程Zabbix-Agent的IP地址或者是主机名 -p 远程Zabbix-Agent 的端口 -I 本机出去的IP地址,用于一台机器中有多个网卡的情况 -k 获取远程Zabbix-Agent数据所使用的Key 示例如下:

[root@bogon ~]# /usr/local/bin/zabbix_get -s 192.168.0.71 -k system.uname Linux bogon 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 [root@bogon ~]# /usr/local/bin/zabbix_get -s 192.168.0.71 -p 10050 -k system.uname Linux bogon 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 [root@bogon ~]# /usr/local/bin/zabbix_get -s 192.168.0.71 -p 10050 -I 192.168.0.5 -k system.uname Linux bogon 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 用zabbix_get命令可以很方便地知道key是否能正常获取到数据,这在测试自定义监控的时候特别有用。

作者:湖里没有鱼 链接:http://www.jianshu.com/p/4eee7a80ddd4 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。