最近新搭建了一台zabbix监控中心,陆续给公司的服务器装上zabbix-agent监控,刚好有点时间,偷闲记录下安装的过程。

zabbix agent2安装

zabbix server端在这里就不在赘述,本文主讲的是agent端搭建,可自行浏览其他文章学习搭建zabbix server端。

Linux下安装zabbix agent2

本文所述的Linux端为Centos7环境,可根据自身需求适当修改。

在线安装

先临时关闭selinux

setenforce 0

在服务器连网情况下,推荐采用在线安装方式安装,先获取zabbix阿里云源

rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
yum clean all

然后直接安装

yum install zabbix-agent2  -y

记得备份一份agent2的配置文件

cp  /etc/zabbix/zabbix_agent2.conf /etc/zabbix/zabbix_agent2.conf.bak

然后重点来了,vim进入/etc/zabbix/zabbix_agent2.conf
找到如下几行进行编辑

Server=   # 服务器地址,填写zabbix server所在ip
ServerActive=  # 主动注册地址,同zabbix server所在ip
Hostname=  # 客户端名字,供主动注册时使用,自己取名
HostMetadata=  # 默认元数据,主动注册需要,自己定义

HostMetadata 需要去除#的注释并自己定义,否则无法使用本文章的主动注册方法。如我定义的是Linux。
Hostname不能取中文名,不然客户端启不来。

做完这些后就可以重启客户端了

systemctl restart zabbix-agent2

然后放行15000端口,如不需要防火墙也可关闭防火墙

放行15000端口

firewall-cmd --zone=public --add-port=15000/tcp --permanent

关闭防火墙

systemctl stop firewalld
systemctl disable firewalld # 永久关闭防火墙

输入netstat -tunlp或systemctl status zabbix-agent2检查客户端是否正在运行
在这里插入图片描述
至此Linux下的zabbix agent2端在线安装完成,下见server端的主动注册配置。

离线安装

有些服务器不允许访问外网,却又需要使用zabbix进行监控,可以在能访问外网的服务器上先行下载zabbix rpm包,再离线导入安装。

先下载yum-plugin-downloadonly,供之后使用

yum install yum-plugin-downloadonly

然后如在线安装导入zabbix阿里云源

rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
yum clean all

然后使用yum仅下载不安装

yum install zabbix-agent2 --downloadonly --downloaddir=.

–downloaddir=. 表示下载到当前目录
ls发现rpm包已存在本目录
在这里插入图片描述
sz将其取出,并导入离线服务器

导入离线服务器后,在rpm包所在目录输入

rpm -ivh zabbix-agent2-5.0.16-1.el7.x86_64.rpm

即可安装zabbix agent2端,之后文件修改如在线安装。

Windows下安装zabbix agent2

Windows安装zabbix agent2端则需要去zabbix官网下载,这里的zabbix server为5.0tls版,所以选择相应的agent端。下载链接
在这里插入图片描述
下拉选择zabbix agent2端下载
在这里插入图片描述
将其导入Windows server,双击运行,前面一路next,直到这里,拿网上一张图参考下。
在这里插入图片描述
填写完毕后继续next安装,注意不要修改安装路径,除非你有记录。

之后打开C:\Program Files\zabbix agent2\zabbix_agent2.conf ,修改HostMetadata= ,然后在服务重启zabbix agent2服务即可。

主动注册

在服务器群中,在服务端手动添加监控主机极其繁琐,极大的降低了管理员的工作效率,也不够优雅,所以使用zabbix的主动注册功能,让主机在安装zabbix agent端后主动向zabbix server端汇报并被监控。
配置步骤:
在server端,选择配置动作
在这里插入图片描述
然后选择Autoregistration actions,选择右边创建动作
在这里插入图片描述
新建一个动作,填写名称,然后选择添加条件,选择主机元数据,选择包含,填入Linux,对应Linux zabbix agent端的HostMetadata=Linux
在这里插入图片描述
然后勾选操作,选择添加主机——添加主机群组——关联对应模板
在这里插入图片描述
即可实现Linux下的zabbix agent端主动注册,Windows同理,这里不在赘述。

Linux一键安装脚本

LInux一键安装脚本是根据我这边的情况来编写的,拿到脚本后需要自己修改相关数据,请勿直接使用。

脚本内容

#file:ssh.sh
#date:2021-10-12
#version 1.0
#authof:AZerork

echo "1-临时关闭selinux"
setenforce 0
#sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

echo "2-开始安装zabbix-agent2"
read -p "选择zabbix-agent2安装方式:1-在线,2-离线(默认在线):" install_input
ins=${install_input:-"1"}

if [ $ins == "1" ]
then
    echo "2.1-开始在线安装"
	echo "更换阿里云zabbix源"
	rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
	sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
	yum clean all	
	yum install zabbix-agent2  -y
else
    echo "2.2-开始离线安装"
	echo "请确保zabbix-agent2-5.0.16-1.el7.x86_64.rpm在当前目录下"
	sleep 1
	rpm -ivh zabbix-agent2-5.0.16-1.el7.x86_64.rpm
fi

echo "3-备份agent2.conf配置文件"
cp  /etc/zabbix/zabbix_agent2.conf /etc/zabbix/zabbix_agent2.conf.bak

echo '4-修改配置文件'
default_ip="10.203.1.246"

read -p "客户端名称(仅英文):" agent_hostname

read -p "zabbix server地址(默认为$default_ip):" ip_input
ip=${ip_input:-$default_ip}

default_data="Linux"
read -p "默认元数据(默认Linux):" data_input
data_d=${data_input:-$default_data}

sed -i "s/Server=127.0.0.1/Server=${ip}/" /etc/zabbix/zabbix_agent2.conf
sed -i "s/Hostname=Zabbix server/Hostname=${agent_hostname}/" /etc/zabbix/zabbix_agent2.conf
sed -i "s/^ServerActive=127.0.0.1/ServerActive=${ip}/" /etc/zabbix/zabbix_agent2.conf
sed -i "s/# HostMetadata=/HostMetadata=${data_d}/" /etc/zabbix/zabbix_agent2.conf

echo "5-启动zabbix-agent2&&配置开机自动启动zabbix-agent2"
systemctl start zabbix-agent2 && systemctl enable zabbix-agent2

echo "6-防火墙开放10050端口,重启防火墙后生效"
	

echo "7-检测是否存在agent端口"
port=$(netstat -nlp|grep 10050|wc -l)
if [ ${port} -ne 0 ];then
     echo "zabbix-agent安装成功"
   else
     echo "zabbix安装失败请检查"
fi

结尾

文章到这里就结束了,想来距上次发文章也有几个月了,本来还有一些其他的东西想写下来记录下的,但是由于自身原因,没什么时间来写博客(其实还是自己太懒)。下次再写也不清楚到什么时候了,笑,总之就这样先吧,有什么疑问可以留言或私信,觉得有用的也可以点赞收藏关注随便点点,甚至可以请我喝一杯咖啡?(瑞幸的生椰拿铁真的好喝!)
这里是AZerork的小窝,随机分享一些奇怪的知识。
循循而进,一往无前。

Logo

更多推荐