1、安装zabbix-agent zabbix-sender
yum -y install zabbix-agent zabbix-sender # 查看一下zabbix-agent都安装了哪些文件 rpm -ql zabbix-agent /etc/logrotate.d/zabbix-agent /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.d ...
核心文件zabbix_agentd.conf,打开这个文件,我们来配置一下最常用的agent端配置。首先,可以看到配置文件中有很多注释,打开配置文件,首先看到的就是”通用参数配置段”,我们可以在此配置段配置zabbix_agent进程的进程编号文件路径,存储日志方式,日志文件位置,日志滚动阈值等常用设定,细心如你一定已经发现,zabbix_agent配置文件的”通用配置段”中的参数大多数与zabbix_server配置文件中的常用参数意义相同,所以,此处不再过多赘述,如果没有特殊需要,保持默认即可。
被动模式相关参数如下:
Server:用于指定允许哪台服务器拉取当前服务器的数据,当agent端工作于被动模式,则代表server端会主动拉取agent端数据,那么server端的IP必须与此参数的IP对应,此参数用于实现基于IP的访问控制,如果有多个IP ,可以使用逗号隔开。
ListenPort:用于指定当agent端工作于被动模式时所监听的端口号,默认端口为10050,也就是说,server端默认访问10050端口,从而拉取数据。
ListenIP:用于指定agent端工作于被动模式时所监听的IP地址,默认值为0.0.0.0,表示监听本机的所有IP地址。
StartAgents:用于指定预生成的agent进程数量。
主动模式的常用参数如下:
ServerActive:此参数用于指定当agent端工作于主动模式时,将信息主动推送到哪台server上,当有多个IP时,可以用逗号隔开。
Hostname:此参数用于指定当前主机的主机名,server端通过此参数对应的主机名识别当前主机。
RefreshActiveChecks:此参数用于指明agent端每多少秒主动将采集到的数据发往server端。
因为与zabbix-server安装在同一台机器上,所以配置没怎么变动,直接启动即可,端口10050
简单修改的配置:
Server=hostip
ServerActive=hostip
systemctl start zabbix-agent.service
netstat -ntulp
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 97228/zabbix_agentd
2、在zabbix中添加主机
假设,我们想要使用zabbix监控一台linux服务器,那么,我们肯定要将这个服务器纳入zabbix的管理范围,而”添加主机”这个操作,就是将被监控的主机纳入zabbix管理范围的一个必须操作,如果我们有10台主机都需要被zabbix监控呢,没错,这10台主机都必须被添加到zabbix的监控列表中,在zabbix中,我们将被监控的对象称之为”主机”,”主机”不一定是服务器,也可以是路由器,交换机等网络设备,而且,根据主机的属性、角色、特征的不同,我们还能够将主机分组,比如,我们有10台服务器,10台服务器中,有3台windows服务器,有7台linux服务器,那么,我们可以按照操作系统的不同,将他们分成两组,windos服务器组与linux服务器组,或者我们不按照操作系统对主机进行分组,而是根据服务器的角色对主机分组,实际应用中,具体怎样分组,是根据实际需求视情况而定的,那么,为什么要将主机分组呢,这是为了方便管理,因为同一类主机需要被监控的指标很有可能都是相同的,所以将他们分为一组方便管理。
上面一段话中,我们提到了两个zabbix的常用术语,”主机”与”主机组”,我们再来总结一遍:
1、host(主机):需要被zabbix监控的对象,被称为主机,主机必须属于某个主机组。
2、hostgroup(主机组):”主机组”也被称为”主机群组”,是由具有相同属性、特征、角色的多个主机组成的逻辑单元。
点击 “配置” -> “主机群组” ,可以看到,系统默认已经为我们准备了一些主机组,如果这些主机组不满足我们的需要,我们也可以创建新的主机组,点击下图中的”创建主机群组”按钮,即可创建主机组。
同样,点击 “配置” -> “主机” ,即可查看已经被加入zabbix主机列表的主机,可以看到,zabbix默认将zabbix server添加为了一台主机,以便可以自己监控自己,但是此处,我们需要添加一台我们自己的主机。
点击”创建主机”按钮以后,即可看到类似如下界面,为了更好的描述每个步骤,具体解释参考下图后面的注释列表。
”可见名称”一般使用简短的、易读的、见名知义的名称表示主机即可。
我们可以选择将要创建的主机属于哪个主机组,当然,如果没有合适的主机组,我们也可以直接在创建主机时,直接新建主机组,我们说过,每个主机必须存在于某个主机组中,所以,主机组是必须的,没有对应的、可用的、合适的主机组,我们可以直接在”新的群组”中创建符合当前主机需要的主机组。
选择通过哪种接口监控当前主机,可选的方式有IPMI接口、JMX接口、SNMP接口、agent接口,我们说过,”主机”在zabbix中,可以是服务器,路由器,交换机等等硬件设备,有的硬件设备只支持某种接口,所以,当我们添加主机时,会让我们选择通过哪种合适的接口监控它,具体各接口的适用场景我们已经在第一篇介绍zabbix概念的文章中描述过,此处不再赘述,当然,如果一台主机能被多种接口所监控,也可以同时配置多个接口监控这台主机,但是当前,我们需要监控的主机是一台Linux服务器,而且已经安装了对应的agent端,所以,此处,我们只使用agent接口对当前主机进行监控,而使用agent接口时,可以通过IP连接到对应agent,也可以使用主机名连接到对应agent,而此处,我们选择使用IP地址连接到对应的agent,IP地址就是我们将要添加的主机的IP,113.31.169.16,对应端口为默认的10050,如果你想要使用主机名连接到对应的agent,那么需要保证主机名能够被正常解析到113.31.169.16上,此处不再赘述,如果有多个IP可以连接到对应agent,可以点击”添加”,添加一条新的IP。
好了,按照上述界面中的配置进行设置以后,点击”添加”按钮,即可简单的添加一台主机,可以看到,113.31.169.16已经被添加到了主机列表中。
而且,如果此时我们再次查看主机组,已经发现,TestHost主机组已经被添加了,而且其中的成员已经包含了test01主机。
回到主机列表,可以看到我们刚才添加的test01主机,但是test01主机的”可用性”对应的4中接口都是灰色的。
上图中,ZBX就代表agent接口,虽然我们在添加主机时,配置了通过agent监控对应主机,但是,由于我们并没有配置监控主机的任何指标,所以,ZBX仍然是灰色的,也就是说,我们现在只是将113.31.169.16加入了zabbix的监控范围,但是并没有对它进行任何实际的监控,因为我们还没有配置任何”监控项”,至于怎样配置监控项,且继续下文。
【参考:https://www.zsythink.net/archives/519】