一、zabbix支持的主要监控方式:
zabbix主要Agent,Trapper,SNMP,JMX,IPMI这几种监控方式,本文章主要通过监控理论和实际操作测试等方式来简单介绍这几种方式的监控原理和优缺点等 。下面对几种监控方式的监控原理进行介绍:
1、Agent监控方式
在Agent监控方式下,zabbix-agent会主动收集本机的监控信息并通过TCP协议与zabbix-server传递信息。Agent监控方式分为主动和被动模式。在被动模式下,zabbix-agent监听10050端口,等待zabbix-server的监控信息收集信息请求;在主动模式下,zabbix-agent收集监控信息并通过10050端口主动将数据传给zabbix-server所在服务器的10051端口。
优点:
(1)是zabbix最常用的监控方式,监测指标深入细致有针对性。
(2)内置监控功能强大,内置监控项目丰富。
(3)TCP方式实现通讯,可靠性也有保证。
缺点:
(1)需要在被监控机器上安装zabbix-agent客户端,部署相对麻烦,最初需要逐个机器安装代理软件
(2)zabbix-agent客户端运行在被监控机上,会收集本机信息
2、Trapper监控方式
Trapper监控方式使用zabbix-sender程序主动向zabbix-server发送数据。key的名称和发送的数据内容都可以灵活定义。发送的信息采用JSON格式,遵循zabbix-sender协议。可以自定义脚本利用zabbix-sender协议来zabbix-server发送信息。
优点:
(1)不需要在被监控机器上安装zabbix-agent
(2)不收集被监控机器的信息
(3)可以自定义发送的信息内容
(4)可以使用自定义脚本发送信息
缺点:
(1)需要自定义发送的信息内容
(2)无内置监控项目
3、SNMP监控方式
SNMP全称Simple Network Management Protocol,即网络管理协议,包括进程管理和被管理设备两部分。作为一种国际通用的网络管理协议被广泛的应用于各种交换机,路由器等网络设备的管理上,而现在也越来越多被用于对服务器的监控上。
优点:
(1)服务器一旦部署SNMPAgent,任何能实现SNMP协议的软件都可以对其进行监测。
(2)通过这种手段进行监测不需知道被监测服务器的用户名和密码,比较安全。
缺点:
(1)很多服务器并非默认安装SNMPAgent,如果通过这种方式监测则需要对所有服务器安装部署。
(2)能监测的参数指标比较固定不够深入,无法满足用户的特殊需求。
(3)由于SNMP协议是通过UDP方式实现的。在网络状况不佳的情况下其可靠性能以保证。
4、JMX监控方式
JMX,全称Java Management Extensions,即Java管理拓展,是Java平台为应用程序,设备,系统等植入管理功能的框架。在zabbix中,JMX数据的获取由zabbix-java-gateway代理程序来负责数据的采集。
优点:
(1)可以详细的监控各类Java程序的运行状态
缺点:
(1)被监控机上需要安装zabbix-java-gateway
5、IPMI监控方式
IPMI,全称Interlligent Platform Management Interface,即智能平台管理接口,原本是Intel架构中企业系统的周边设备所采用的一种工业标准,以后成为业界通用的标准。用户可以利用IPMI监控服务器的物理特性,如温度,电压,电扇工作状态,电源供应以及机箱***等指标。
根据以上对zabbix各主要监控方式的梳理,结论如下:
(1)根据被监控机器的环境和客户要求选用适当的监控方式,可同时配合多种监控方式。
(2)有条件在监控机上部署zabbix-agent客户端时,该方法为第一选择,因为其功能强大且配置相对简便。
(3)需要自定义脚本或者监控信息时,可使用Trapper方式,即使用zabbix-sender程序或者自定义脚本遵循zabbix-sender协议,已JSON形式,通过TCP发送自定义信息。
二、Agent监控方式
1、通过Agent方式监控Linux服务器
(1)需要在Linux服务器上安装zabbix-agent客户端安装包,需要先导入软件安装源:
rpm -ivh
(2)安装zabbix-agent客户端服务:
yum -y install zabbix-agent
(3)zabbix 客户端配置:
配置zabbix_server配置文件:
vim /etc/zabbix/zabbix_agentd.conf
修改以下配置信息:
EnableRemoteCommands=1 #允许zabbix服务器端远程操作
LogRemoteCommands=1 #开启远程执行命令日志
Server=192.168.181.136 #zabbix服务器端IP地址
ServerActive=192.168.181.136 #zabbix服务器端IP地址
Hostname=zabbix_agent #该值跟zabbix web上配置的主机名称要一致 :(配置-》主机-》主机名称)
ListenPort=10050 #监控服务端口
systemctl start zabbix-agent 启动zabbix-agent服务
(4)zabbix服务器端添加被监控主机
选择“配置”-“主机”,然后选择“创建主机”;选择添加的模板
2、通过Agent方式监控windows服务器 :
(1)下载Windows的zabbix客户端
下载地址:https://www.zabbix.com/download_agents
(2)windows上安装agent:
准备好安装文件zabbix_agents-4.0.5-win-amd64-openssl.zip,可以从官网上下载,在此需要注意和server端一致。然后解压,解压后的文档结构(bin conf)
(3)进入conf目录,对配置文件进行配置:
找到conf下的配置文件zabbix——agent.win.conf,需要修改的内容为:LogFile、Server、Hostname、ServerActive这几个参数。具体配置如下:
EnableRemoteCommands=1
LogRemoteCommands=1
Server=192.168.181.136
ServerActive=192.168.181.136
Hostname=windows-host
ListenPort=10050
(4)确定被监控主机的系统是32位还是64位
右键“此电脑”,查看操作系统版本,如果是32位,用bin\win32下的应用程序,否则用bin\win64下的应用程序。
(5)安装zabbix-agent客户端程序
用管理员权限打开CMD,进入到zabbix的应用程序目录,执行安装命令:
zabbix_agentd.exe -c D:\zabbix-agent\conf\zabbix_agentd.win.conf -i
安装成功后,执行运行命令:
zabbix_agentd.exe -c D:\zabbix-agent\conf\zabbix_agentd.win.conf -s