为了满足监控企业成千上万台服务器,因此我们需要使用Zabbix批量监控来实现。批量监控有两种方式:自动发现和自动注册。

前提

被监控服务器需安装、配置并启动zabbix-agent服务,附一个简单的脚本:

$ vim zabbix_agent_install.sh
#!/bin/bash
# 自动安装zabbix客户端

zabbix_agent_version=zabbix-agent-3.4.11-1.el7.x86_64.rpm
zabbix_sender_version=zabbix-sender-3.4.11-1.el7.x86_64.rpm
zabbix_dir=~
zabbix_server_ip=10.160.33.123
##########################
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
source /etc/rc.d/init.d/functions

function zabbix_agent_yum() {
    cd ${zabbix_dir}
    yum install ${zabbix_agent_version} ${zabbix_sender_version} -y
}

function zabbix_config() {
    sed -i "s#Hostname=Zabbix server#Hostname=${hostname}#g" /etc/zabbix/zabbix_agentd.conf
    sed -i "s#^Server=127.0.0.1#Server=${zabbix_server_ip}#g;s#^ServerActive=127.0.0.1#ServerActive=${zabbix_server_ip}#g" /etc/zabbix/zabbix_agentd.conf
    egrep -v "^$|#" /etc/zabbix/zabbix_agentd.conf
}

function zabbix_system() {
    SYSVS=$(cat /etc/redhat-release |grep "release 7"|wc -l)

    if [ ${SYSVS} -eq 1 ];
        then
            # 添加到系统服务7
            systemctl restart zabbix-agent.service
            systemctl status zabbix-agent.service
            systemctl enable zabbix-agent.service
    else
            # 添加到系统服务6
            service zabbix-agent restart
            service zabbix-agent status

            chkconfig zabbix-agent on
            chkconfig |grep zabbix
    fi
}

function zabbix_rm_file() {
    cd ${zabbix_dir}  && rm -f ${zabbix_agent_version} ${zabbix_sender_version} $0
}

function main() {
    zabbix_agent_yum
    zabbix_config
    zabbix_system
    zabbix_rm_file
}

main
echo -e "The result is $?"

自动发现

由服务端主动发起,Zabbix Server开启发现进程,定时扫描局域网中IP服务器、设备。

具体配置如下:

1、创建自动发现规则

“配置”->“自动发现”->“创建发现规则”

填入名称、需发现服务器、设备的IP范围、更新间隔、检查项(ssh和zabbix客户端(键值设置为“system.uname”))、设备唯一性准则

zabbix自动发现与自动注册_第1张图片
最后勾选已启用、点击添加。

2、创建自动发现动作

“配置”->“动作”->事件源“自动发现”->“创建动作”
zabbix自动发现与自动注册_第2张图片
点击操作配置,选择具体的操作类型:添加主机、添加到主机群组、与模板关联
最后点击添加即可。
zabbix自动发现与自动注册_第3张图片

3、在“检测中”->“自动发现”可以查看 已发现的设备

zabbix自动发现与自动注册_第4张图片

自动注册

由客户端主动发起,客户端必须安装并启动Agentd,否则无法被自动注册添加至主机列表。

具体配置如下:

1、创建自动注册动作

“配置”->事件源“自动注册”->“创建动作”
zabbix自动发现与自动注册_第5张图片
点击操作配置,选择具体的操作类型:添加主机、添加到主机群组、与模板关联
最后点击添加即可。
zabbix自动发现与自动注册_第6张图片

2、在“配置”->“主机”中查看注册的设备信息

只看到两台主机,因有一台未安装Agentd所以注册不了
zabbix自动发现与自动注册_第7张图片