前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS7一键安装Zabbix Agent 6.0并实现自动注册

CentOS7一键安装Zabbix Agent 6.0并实现自动注册

作者头像
yuanfan2012
发布2022-07-05 15:20:59
1.9K0
发布2022-07-05 15:20:59
举报
文章被收录于专栏:WalkingCloudWalkingCloud

CentOS7一键安装Zabbix Agent 6.0并实现自动注册

问题背景

手动添加Zabbix客户端非常耗时间,增加人力、时间成本。为了满足监控企业成千上万台服务器,zabbix提供了自动发现与自动注册的功能,自动批量发现局域网中的服务器,并自动添加到zabbix监控平台

  • 自动发现(被动模式):由服务端主动发起,Zabbix Server开启发现进程,定时扫描局域网中IP服务器、设备。实现自动将发现主机、自动将主机添加到主机组、自动加载模板、自动创建项目(item)、自动创建图像等功能。

缺点:当 Agent服务器过多的时候采用自动发现,zabbix-server压力会比较大,自动添加主机进度就会非常慢。

  • 自动注册(主动模式):Zabbix Server 等待 Zabbix Agent主动上报。由客户端主动发起,客户端必须安装并启动Agentd,否则无法被自动注册添加至主机列表。对于使用SNMP的要采用自动发现。

缺点:agent有可能找不到Server。

PS:主动还是被动是基于agent而言,不管是主动还是被动模式都是在agent端进行配置

代码语言:javascript
复制
以上概念来自本文为CSDN博主「途径日暮不赏丶」的原创文章
原文链接:https://blog.csdn.net/weixin_45880055/article/details/115361860

下面介绍Zabbix 6.0 Agent自动注册的实践过程

1、Zabbix Server上Web配置自动注册

1、 配置-->动作-->Autoregistration actions

(图片可点击放大查看)

2、定义自动注册主机的条件

(图片可点击放大查看)

3、定义注册上来的主机所要关联模板

(图片可点击放大查看)

(图片可点击放大查看)

2、CentOS7主机端一键自动化脚本安装并配置Zabbix Agent

代码语言:javascript
复制
cd /opt
rz 上传zabbix-agent-6.0.4-1.el7.x86_64.rpm
zabbix_install.sh

执行安装脚本
sh zabbix_install.sh

(图片可点击放大查看)

脚本部分内容如下

代码语言:javascript
复制
cat zabbix_install.sh 
#!/usr/bin/env bash
# Only RHEL7 system is supported
# Version: 2.0

#Set Monitor ADDRESS
SERVER_ADDRESS='192.168.31.47'

function GET_OS_Version() {
    OS_Version=$(cat /etc/redhat-release|sed -r 's/.* ([0-9]+)\..*/\1/')
}

function INIT_OS() {
  # disabled SELinux
  sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
  setenforce 0
}

function GET_OS_STATUS() {
Processes=$(ps -ef|grep -v grep|grep zabbix_agent|wc -l)
if [[ $Processes != '0' ]];then echo $(hostname -I ) 'Agent process already exists in the system!!!';exit 1;fi
}


function Install_7() {
    yum -y localinstall /opt/zabbix-agent-6.0.4-1.el7.x86_64.rpm &>/dev/null
    if [[ $? != '0' ]];then echo $(hostname -I ) 'Install failed!!!';fi
    systemctl start zabbix-agent
    systemctl enable zabbix-agent
    systemctl restart zabbix-agent
}

function Restart_AGENT7() {
  systemctl restart zabbix-agent
}

function Configure() {
cat << EOF > /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=$SERVER_ADDRESS
ServerActive=$SERVER_ADDRESS
HostnameItem=system.hostname
HostMetadataItem=system.uname
Include=/etc/zabbix/zabbix_agentd.d/*.conf
UnsafeUserParameters=1
EOF
}

function AGENT_RUN() {
  STATUS=$(ss -ntl|grep 10050|head -1|awk '{print $1}'|wc -l)
  if [[ $STATUS -eq 1 ]];then echo $(hostname -I ) 'Install OK!!!';else echo $(hostname -I ) 'Install failed!!!';fi
}

3、确认Agent是否正常注册上线

(图片可点击放大查看)

(图片可点击放大查看)

可以看到已经正常上线

Tips

如果出现如下报错时,检查firewalld防火墙是否开放10050端口

(图片可点击放大查看)

(图片可点击放大查看)

代码语言:javascript
复制
firewall-cmd --permanent --zone=public --add-port=10050/tcp
firewall-cmd --reload
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-05-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 WalkingCloud 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 问题背景
  • 下面介绍Zabbix 6.0 Agent自动注册的实践过程
    • 1、Zabbix Server上Web配置自动注册
      • 2、CentOS7主机端一键自动化脚本安装并配置Zabbix Agent
        • 3、确认Agent是否正常注册上线
          • Tips
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档