首先将源码包从4.5拷贝到web1,web2上,安装zabbix agent软件
web1、web2 安装zabbix agent软件
4.5拷贝源码包
scp zabbix-3.4.4.tar.gz 192.168.4.100:/root/
scp zabbix-3.4.4.tar.gz 192.168.4.200:/root/
useradd -s /sbin/nologin zabbix #创建用户
yum -y install gcc pcre-devel autoconf #下载源码编译的包
tar -xf zabbix-3.4.4.tar.gz #解压源码包
cd zabbix-3.4.4/ #进入目录
./configure --enable-agent #编译
make && make install #安装
vim /usr/local/etc/zabbix_agentd.conf #修改配置文件
Server=127.0.0.1,192.168.2.5
#93行,谁可以监控本机(被动监控模式)
ServerActive=127.0.0.1,192.168.2.5
#134行,谁可以监控本机(主动监控模式)
Hostname=web1
#145行,被监控端自己的主机名
EnableRemoteCommands=1
#69行,监控异常后,是否允许服务器远程过来执行命令,如重启某个服务
UnsafeUserParameters=1
#280行,是否允许自定义key传参
firewall-cmd --set-default-zone=trusted #关闭防火墙
sed -i '/SELINUX/s/enforcing/permissive/' /etc/selinux/config #关闭SELinux
vim /usr/lib/systemd/system/zabbix_agentd.service
systemctl enable zabbix_agentd --now
ss -ntulp |grep :10050 查看服务是否开启
tcp LISTEN 0 128 *:10050 *:* users:(("zabbix_agentd",pid=9039,fd=4),("zabbix_agentd",pid=9038,fd=4),("zabbix_agentd",pid=9037,fd=4),("zabbix_agentd",pid=9036,fd=4),("zabbix_agentd",pid=9035,fd=4),("zabbix_agentd",pid=9034,fd=4),("zabbix_agentd",pid=9033,fd=4)
web2 操作同上!!!
自定义监控项目
查看当前系统有多少用户数量
[root@web1 ~]# cat /etc/passwd | wc -l
24
[root@web1 ~]# awk 'END{print NR}' /etc/passwd
24
[root@web1 ~]# sed -n '$=' /etc/passwd
24
[root@web1 ~]# vim /usr/local/etc/zabbix_agentd.conf
[root@web1 ~]# cd /usr/local/etc/zabbix_agentd.conf.d/自定义监控必须进到此目录下
[root@web1 zabbix_agentd.conf.d]# ls
[root@web1 zabbix_agentd.conf.d]# vim count.line.passwd
[root@web1 zabbix_agentd.conf.d]# systemctl restart zabbix_agentd
[root@web1 zabbix_agentd.conf.d]# zabbix_get -s 127.0.0.1 -k count.line.passwd
24
错误输入,以下报错
创建监控模板
实现zabbix报警机制
自定义监控默认不会自动报警
触发器(trigger)---表达式
动作(action)--动作是触发器的条件被触发后所执行的行为
如下操作步骤:
创建触发器并设置标记
设置邮箱(发件人,收件人)
创建Action动作
触发器格式
{<server>:<key>.<function>(<parameter>)}<operator><constant
{主机:key.函数(参数)}<表达式>常数
创建触发器 使用英文环境
自动发现
创建发现规则
创建动作
结果如下图
事件源选择--自动发现
Zabbix主动监控
默认zabbix采用的是被动监控,主动和被动都是对被监控端主机而言的!
被动监控:Server向Agent发起连接,索取监控数据。
主动监控:Agent向Server发起连接,Agent周期性地收集数据发送给Server。
web2主动监控
[root@web2 ~]# vim /usr/local/etc/zabbix_agentd.conf
#Server=127.0.0.1,192.168.2.5
#93行,注释该行,允许谁监控本机
StartAgents=0
#118行,被动监控时启动几个Agent进程监听10050端口
#设置为0,则禁止被动监控,不启动zabbix_agentd服务及端口
ServerActive=192.168.2.5
#134行,允许哪些主机监控本机(主动模式),一定要取消127.0.0.1
Hostname=web2
#145行,告诉监控服务器,是谁发的数据信息
#一定要和zabbix服务器配置的监控主机名称一致(后面设置)
RefreshActiveChecks=120
#183行,默认120秒检测一次
UnsafeUserParameters=1
#280行,允许自定义监控传参
Include=/usr/local/etc/zabbix_agentd.conf.d/
#264行,自定义监控的位置
[root@web2 ~]# vim /usr/lib/systemd/system/zabbix_agentd.service
[root@web2 ~]# systemctl restart zabbix_agentd
[root@web2 ~]# ss -ntulp |grep zabbix_agentd
查看没有端口则正确!!!!