一.部署zabbix客户端
端口号10050
zabbix 5.0 版本采用 golang 语言开发的新版本客户端 agent2 。
zabbix 服务端 zabbix_server 默认使用 10051 端口,客户端 zabbix_agent2 默认使用 10050 端口。
1.1.关闭防火墙和selinux安全模块
systemctl disable --now firewalld
setenforce 0
1.2.服务端和客户端,配置时间同步
yum install -y ntpdate
ntpdate -u ntp.aliyun.com
客户端配置时区,与服务器保持一致
mv /etc/localtime{,.bak}
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
1.3.设置Zabbix的下载源,安装Zabbix-agent2
#设置zabbix的下载源
rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm #更改
cd /etc/yum.repos.d/
sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
1.4.安装Zabbix-agent2,并修改配置文件
#安装zabbix-agent2
yum install -y zabbix-agent2 #修改配置文件
vim /etc/zabbix/zabbix_agent2.conf
-------------------------------------------
Server=192.168.79.210 #80行,指定 zabbix 服务端的 IP 地址
ServerActive=192.168.79.210 #125行,指定 zabbix 服务端的 IP 地址
Hostname=agent1 #136行,指定当前 zabbix 客户端的主机名
---------------------------------------------
1.5.启动Zabbix-agent2
systemctl start zabbix-agent2.service
systemctl enable zabbix-agent2.service
ss -natp | grep zabbix
1.6.在服务端验证Zabbix-agent2 的连通性
yum install -y zabbix-get.x86_64
zabbix_get -s '192.168.190.106' -p 10050 -k 'agent.ping'
zabbix_get -s '192.168.190.106' -p 10050 -k 'system.hostname'
二、将客户端加入服务端的监控主机
2.1.在Web界面添加agent主机
点击左边菜单栏【配置】中的【主机】,点击【创建主机】
2.2.在Web页面创建自定义监控项模板
客户端操作
#切换目录
cd /etc/zabbix/zabbix_agent2.d/#修改
vim UserParameter_login.conf
----------------------------------
UserParameter=login.user,who|wc -l
-----------------------------------------#重启服务
systemctl restart zabbix-agent2
2.3.创建模板
点击左边菜单栏【配置】中的【模板】,点击【创建模板】
【模板名称】设置成 Template Login User
【可见的名称】设置成 Template Login User
【群组】选择 Template
【描述】可自定义
点击 【添加】,此时就可在【名称】中搜索到 Template Login User 了
2.4.创建应用集(用于管理监控项的)
点击上方菜单栏【应用集】,点击【创建应用集】、【名称】设置成 Login User、点击 【添加】
2.5.创建监控项
点击上方菜单栏【监控项】,点击【创建监控项】
【名称】设置成 Number of login users
【键值】设置成 login.user #键值必须要与自定义的监控项配置文件中设置的保持一致
【更新间隔】设置成 10s
【历史数据保留时长】Storage period 30d #保留时间可自定义设置
点击 【添加】
2.5.创建触发器
当监控项获取到监控的值后和触发器预设的值进行对比,判断是否报警
点击上方菜单栏【触发器】,点击【创建触发器】
【名称】设置成 Number of login users is greater than 3
【严重性】设置成 一般严重
【表达式】点击添加
【监控项】点击选择 Number of login users
【功能】选择 last(),【结果】选择 > 3,点击 【插入】
2.6.创建图形
点击上方菜单栏【图形】,点击【创建图形】
【名称】设置成 Number of login users
【宽】、【高】可直接采用默认值
【监控项】点击添加勾选相关监控项 Number of login users
【功能】选择 最大,其它可保持默认值
点击 【添加】
2.7.将主机与模板关联起来(一个主机可以关联多个模板)
点击左边菜单栏【配置】中的【主机】,点击你要关联的主机
此时就点击【监测】中的【主机】,点击你关联主机的【图形】,即可查看到相关的监控项指标
测试:多开几个终端
2.8.设置邮件报警
点击左边菜单栏【管理】中的【报警媒介类型】,点击【创建媒体类型】
【名称】设置成 qq_Email
【SMTP服务器】设置成 smtp.qq.com
【SMTP服务器端口】设置成 25
【SMTP HELO】设置成 qq.com
【SMTP电邮】设置成自己的邮箱地址,例 00000000@qq.com
【认证】选择 用户名和密码
【用户名称】设置成自己的邮箱地址,例 0000000@qq.com
点击左边菜单栏【用户设置】–>【报警媒介】,点击【添加】
【类型】选择 qq_Email
【收件人】设置成1849752106@qq.com
【当启用时】设置成 1-7,00:00-24:00
点击 【添加】
再点击 【更新】
点击左边菜单栏【配置】中的【动作】,选择相对应的动作名称,点击【启用】
三、Zabbix自动发现与自动注册
3.1.zabbix自动发现(对于agent2是被动模式)
zabbix server 主动的去发现所有的客户端,然后将客户端的信息登记在服务端上。
缺点是如果定义的网段中的主机数量多,zabbix server 登记耗时较久,且压力会较大。
3.2. 确保客户端上的 zabbix-agent2 服务状态正常
systemctl is-active zabbix-agent2.service
3.3.在 Web 页面删除原有的客户端主机
点击左边菜单栏【配置】中的【主机】,勾选原有的客户端主机,点击 删除
.3.4.在服务端和客户端上配置 hosts 解析
vim /etc/hosts
192.168.190.105 localhost
192.168.190.106 agent1
3.5.在 Web 页面配置自动发现
点击左边菜单栏【配置】中的【自动发现】,点击【创建发现规则】
【名称】设置成 mynetwork
【IP范围】设置成 192.168.190.1-254
【更新间隔】设置成 30s
【检查】点击【添加】,【检查类型】选择 Zabbix 客户端,【端口范围】设置成 10050,【键值】设置成 system.uname
点击左边菜单栏【配置】中的【动作】,上方菜单选择 【触发器动作】
勾选 【发现动作】
点击 【启用】