现在有这样一个需求,公司采购了100台主机,并且需要监控这100台主机,这个工作量有点大。如果真是一台一台的去弄的话,最近这一两天就什么都别做了,而且效率还低。我们可以把这100台连好网络,在部署系统的过程中让这些主机自动配置并启动好zabbix-agent服务。然后让zabbix server自动添加这100台主机,这样的话不仅提升效率,还能节省下大量时间,这个自动添加有两种方式:
- 自动发现
- 自动注册
一、自动发现
自动发现是由服务端主动发起,Zabbix Server开启发现进程,定时扫描(非常消耗资源)本网络中符合条件的主机。发现了相应的主机后,通过“动作”来添加监控主机、链接模板。这样我们就可以看到了
教学案例:通过自动发现自动添加业务机器
- 设置被监控机配置文件
- 配置自动发现发现主机
- 配置动作添加主机
1.1、设置被监控机配置文件
代码语言:javascript复制[root@node2 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/8/x86_64/zabbix-release-4.4-1.el8.noarch.rpm
[root@node2 ~]# dnf -y install zabbix-agent
[root@node2 ~]# egrep "^(Server|Hostname)" /etc/zabbix/zabbix_agentd.conf
Server=192.168.98.200 #被动模式zabbix服务器的IP
ServerActive=192.168.98.200 #主动模式zabbix服务器的IP
Hostname=node2
[root@node2 ~]# systemctl start zabbix-agent.service
[root@node2 ~]# systemctl enable zabbix-agent.service
1.2、配置自动发现-发现机器
配置—自动发现—创建发现规则
该页面是自动发现管理页面,可以看到系统提供了一个demo,我们不用他提供的,因为网段不对,所以我打算在创建一个
关于IP范围,我不建议大家写整个网段。因为zabbix-server针对会对全网段做扫描的,那样对zabbix-server压力是很大的。所以大家尽可能写的范围小一点。
- 更新间隔:代表扫描的频率,这里千万不要设置过小,频繁扫描会造成服务器压力巨大。
- 键值:定义的是zabbix需要获取到的被监控主机的什么信息,可以按照如下步骤操作,找到zabbix的键值。
点击完监控项之后,选择右上角的创建监控项,在新的页面中“键值”的位置点击选择,就能看到系统中的键值及作用了。
主机名称和可见的名称这两部分建议选择IP地址,相信大家装系统的时候很少有特意设置主机名的吧?如果选择DNS或者是主机名的话,一会测试结果的时候看到的都是localhost,你根本不知道谁是谁
如上图设置完成后,我们可以验证一下。看看是否真的发现了我们的主机:监测—自动发现
发现主机了,第一步完成了。
主机是发现了,但是并没有添加到监控队列中,原因是我们还没有设置要求监控平台将符合的机器加入监控队列。如果需要设置,就要通过配置—动作 来完成。
1.3、配置自动发现动作,实现机器自动添加到监控队列
为了让发现的机器自动添加到监控队列,需要在zabbix-server监控平台设置动作来完成添加。
具体方法如下:
配置—动作在动作管理页面,该页面中为自动发现提供了一个动作模板,点击这个模板,选择克隆
然后取个名字,选择已启用,在这个模板中的A,B,C三个条件是与的关系,也就是说满足这三个条件 客户端系统是linux,状态是UP的状态,并可装的是zabbix客户端,你也可以再添加,这三条已经够了
如果这三个条件都匹配的话,就执行操作,执行什么操作呢?我们点击动作胖点的“操作”按钮,点击“新的”加入两步操作“添加主机”和“启用主机”,加上原来的一共是四步
所以说自动发现呢分为这么几个步骤,先自动发现主机,然后根据动作去匹配,如果匹配我给出的条件就会执行操作中所定义的工作,从添加主机一直到启用主机
以上是使用原有的模板克隆,现在我们自己新建一个
选择右上角 事件源: 自动发现 然后点击创建动作, 进入自动发现 动作创建页面
这里要做条件匹配,只有匹配添加的机器才会被执行对应的操作
我这里条件是根据IP地址来匹配的,也就是被监控机的IP地址必须是192.168.98.199-220之间,除此之外还可以和demo动作中的一样,也可以做匹配。
选择操作来定义如何将符合条件的机器加入到监控队列
注意操作选项,我添加了四个动作:
- 添加主机
- 添加到主机群组
- 链接到模板
- 启用主机
顺序不能错的,大家想想是不是我们手动添加也是这个顺序啊?
完成后选择添加,自动发现动作就完成了,
注意 关于自动发现主机添加问题 可能时间会比较长,实验中需要等一会,过一会儿你就会点击检测–图形就可以查看到自动添加的主机了。同时你也会发现多了一个叫“Discovered hosts”的主机群组,如果不喜欢可以选择管理–一般–其他,然后去调整设置
二、自动注册
自动发现是主动去扫描对应的网段的IP段,带来的问题是比较浪费监控平台资源且不能实时添加,而且遇到不在同一网段的主机显得比较无力,为了解决这个问题,我们换一种方式:自动注册
自动注册是被监控机主动找监控平台,监控平台发现其满足自动注册的条件后就直接根据操作添加到监控队列了。
自动注册不需要配置自动发现,监控平台被动等待被监控机向其发起连接;只需要配置动作即可
自动注册步骤
- 客户端配置文件设置
- 设置动作
2.1、客户端配置文件
代码语言:javascript复制[root@node2 ~]# egrep "^(Server|Hostname)" /etc/zabbix/zabbix_agentd.conf
Server=192.168.98.200
ServerActive=192.168.98.200
Hostname=node2
2.2、设置动作
配置—动作
事件源: 自动注册
点击创建动作,进入动作菜单
这里的条件是根据计算机名来匹配的
操作中没有启用主机,默认自动注册就会启用主机,所以操作中没有该选项。
配置完成后,点击配置—主机。可以看到主机已经添加成功了。