环境说明:
操作系统 主机名 IP地址 服务
Centos7(zabbix服务端) zabbix 192.168.217.104 zabbix_server
zabbix_agent
Centos7(zabbix客户端,MySQL从库) web01 192.168.217.103 zabbix_agent
mariadb
Centos7(MySQL主库) mysql 192.168.217.102 maridab
---------- 部署 zabbix 客户端 ---------- zabbix 5.0 版本采用 golang 语言开发的新版本客户端 agent2 。 zabbix 服务端 zabbix_server 默认使用 10051 端口,客户端 zabbix_agent2 默认使用 10050 端口。
systemctl disable --now firewalld
setenforce 0
//服务端和客户端都配置时间同步 yum install -y ntpdate
ntpdate -u ntp.aliyun.com
//客户端配置时区,与服务器保持一致 mv /etc/localtime{,.bak}
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
date
//设置 zabbix 的下载源,安装 zabbix-agent2 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
yum install -y zabbix-agent2
//修改 agent2 配置文件 vim /etc/zabbix/zabbix_agent2.conf ...... Server=192.168.10.22 #80行,指定 zabbix 服务端的 IP 地址 ServerActive=192.168.10.22 #120行,指定 zabbix 服务端的 IP 地址 Hostname=zbx-agent01 #131行,指定当前 zabbix 客户端的主机名
//启动 zabbix-agent2 systemctl start zabbix-agent2 systemctl enable zabbix-agent2
netstat -natp | grep zabbix tcp6 0 0 :::10050 :::* LISTEN 43654/zabbix_agent2
//在服务端验证 zabbix-agent2 的连通性 yum install -y zabbix-get #安装 zabbix 主动获取数据的命令
//在服务端验证 zabbix-agent2 的连通性
zabbix_get -s '192.168.217.103' -p 10050 -k 'agent.ping'
//在 Web 页面中添加 agent 主机
点击左边菜单栏【配置】中的【主机】,点击【创建主机】
【主机名称】设置成 zbx-agent01
【可见的名称】设置成 zbx-agent01-192.168.217.103
【群组】选择 Linux server
【Interfaces】的【IP地址】设置成 192.168.217.103
再点击上方菜单栏【模板】
【Link new tamplates】搜索 Linux ,选择 Template OS Linux by Zabbix agent
点击 【添加】
#
#
---------- 自定义监控内容 ---------- 案列:自定义监控客户端服务器登录的人数 需求:限制登录人数不超过 3 个,超过 3 个就发出报警信息
//在客户端创建自定义 key 1.明确需要执行的 linux 命令 who | wc -l
2.创建 zabbix 的监控项配置文件,用于自定义 key vim /etc/zabbix/zabbix_agent2.conf #可以将自定义的监控项配置文件创建在 zabbix_agent2.d 目录中 268 Include=/etc/zabbix/zabbix_agent2.d/*.conf #自定义监控项的格式如下 291 # Format: UserParameter=<key>,<shell command>
cd /etc/zabbix/zabbix_agent2.d/
vim UserParameter_login.conf
UserParameter=login.user,who|wc -l
systemctl restart zabbix-agent2
3.在服务端验证新建的监控项 zabbix_get -s '192.168.217.103' -p 10050 -k 'login.user'
//在 Web 页面创建自定义监控项模板 1.创建模板 点击左边菜单栏【配置】中的【模板】,点击【创建模板】 【模板名称】设置成 Template Login User 【可见的名称】设置成 Template Login User 【群组】选择 Template 【描述】可自定义 点击 【添加】,此时就可在【链接的模板】中搜索到 Template Login User 了
2.创建应用集(用于管理监控项的) 点击上方菜单栏【应用集】,点击【创建应用集】 【名称】设置成 Login User 点击 【添加】
3.创建监控项 点击上方菜单栏【监控项】,点击【创建监控项】 【名称】设置成 Number of login users 【键值】设置成 login.user #键值必须要与自定义的监控项配置文件中设置的保持一致 【更新间隔】设置成 10s 【历史数据保留时长】Storage period 30d #保留时间可自定义设置 点击 【添加】
4.创建触发器(当监控项获取到监控的值后和触发器预设的值进行对比,判断是否报警) 点击上方菜单栏【触发器】,点击【创建触发器】 【名称】设置成 Number of login users is greater than 3 【严重性】设置成 一般严重 【表达式】点击添加,【监控项】点击选择 Number of login users,【功能】选择 last(),【结果】选择 > 3,点击 【插入】 点击 【添加】
5.创建图形 点击上方菜单栏【图形】,点击【创建图形】 【名称】设置成 Number of login users 【宽】、【高】可直接采用默认值 【监控项】点击添加勾选相关监控项 Number of login users,【功能】选择 最大,其它可保持默认值 点击 【添加】
6.将主机与模板关联起来(一个主机可以关联多个模板) 点击左边菜单栏【配置】中的【主机】,点击你要关联的主机 点击上方菜单栏【模板】,【Link new tamplates】搜索 login,选择 Template Login User,点击【更新】
此时就点击【监测】中的【主机】,点击你关联主机的【图形】,即可查看到相关的监控项指标
7.设置邮件报警
点击左边菜单栏【管理】中的【报警媒介类型】,点击【创建媒体类型】
**【名称】设置成 qq_Email
【SMTP服务器】设置成 smtp.qq.com
【SMTP服务器端口】设置成 25
【SMTP HELO】设置成 qq.com
【SMTP电邮】设置成 自己的邮箱地址,例如 1234567@qq.com
【认证】选择 用户名和密码
【用户名称】设置成 自己的邮箱地址,例如 1234567@qq.com
【描述】可自定义
**