zabbix的字段发现机制:
zabbix客户端主动和服务端联系,将自己的地址和端口发送服务端实现字段添加监控主机。
客户端是主动一方。
缺点:自定义网段中主机数量太多,登记耗时会很久,而且这个自动发现机制不是很稳定。
zabbix的代理功能:
代理功能的核心:代替服务端收集客户端的数据,然后把数据传送给服务端。
客户端:72
代理服务器:71
服务端:10
设置 zabbix 的下载源,按照 zabbix-proxy
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#Zabbix Official Repository' /etc/yum.repos.d/zabbix.repo
yum clean all && yum makecache
yum install -y zabbix-proxy-mysql zabbix-get
#安装 Zabbix 代理(zabbix-proxy-mysql)和 Zabbix 客户端工具(zabbix-get)
安装 zabbix 所需的数据库
yum install -y mariadb-server mariadb
systemctl enable --now mariadb
mysql_secure_installation #初始化数据库,并设置密码,如123456
添加数据库用户,以及 zabbix 所需的数据库信息
mysql -u root -p123456
CREATE DATABASE zabbix_proxy character set utf8 collate utf8_bin;
GRANT all ON zabbix_proxy.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix';
flush privileges;
导入数据库信息
rpm -ql zabbix-proxy-mysql #查询 sql 文件的位置
zcat /usr/share/doc/zabbix-proxy-mysql-5.0.40/schema.sql.gz | mysql -uroot -p123456 zabbix_proxy
修改 zabbix-proxy 配置文件
vim /etc/zabbix/zabbix_proxy.conf
Server=192.168.233.10 #30行,指定 zabbix 服务端的 IP 地址
Hostname=zbx-proxy #49行,指定当前 zabbix 代理服务器的主机名
DBPassword=zabbix #196行,指定当前数据库 zabbix 用户的密码
HostnameItem=system.hostname 取消注释:
启动 zabbix-proxy
systemctl start zabbix-proxy
systemctl enable zabbix-proxy
在所有主机上配置 hosts 解析
在客户端进行安装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#Zabbix Official Repository' /etc/yum.repos.d/zabbix.repo
yum clean all && yum makecache
yum install -y zabbix-agent2
vim /etc/zabbix/zabbix_agent2.conf
Server=192.168.176.71
ServerActive=192.168.176.71
Hostname=test4
HostnameItem=system.hostname 取消注释:
systemctl restart zabbix-proxy
在web页面添加
添加完之后给主机添加个模板
标识连接成功
agent--->proxy---->服务器
减轻服务端收集数据的压力
zabbix的SNMP监控:
SNMP:simple network managemnet protocol
简单网络管理协议。
监控和管理网络设备的标准协议。
工作中主要来监控交换机和路由器网络设备。
设备监控:路由器,交换机,服务器,打印机,三层交换机。
性能监控:带宽利用率。CPU利用率等等,可以提高图形了解网络的负载情况。
故障告警:邮件,短信。
作业:在zabbix中使用SNMP,监控ens33的数据流量,如果设备故障,发送邮件。
view systemview included .1
SNMP是一个树形结构,.1监控所有的SNMP的协议数。
zabbix:就是一个监控服务程序 网络设备,主机的软件。但是不能很好的监控容器的运行。
市面上zabbix是一款成熟的监控软件,有所有一切的模板,脚本。docker和k8s容器化运行yaml。
zabbix的组成部分:zabbix-server(收集和监控)
zabbix-agent (客户端,发送数据服务端)
zabbix-proxy (代理服务器,代理服务器也要安装数据库,保存客户端的数据,然后再发送给服务端(代收器。)
zabbix的配置:先有主机,再有模版,模版当中设置应用集,在应用集当中配置监控项,在监控项之后配置触发器,图形(可选。)
服务端安装 snmp 监控程序
yum install -y net-snmp net-snmp-utils
修改 snmp 的配置文件,并启动服务
vim /etc/snmp/snmpd.conf
......
view systemview included .1
systemctl start snmpd
使用 snmp 命令测试
snmpwalk -v 2c -c public 192.168.176.10 sysname
--v 1|2c|3:指定SNMP协议版本
--c:指定共同体字符串
sysname:为 snmp 的 key
显尿firewalld的公共区域pubic的主机名。
使用的是snmpv2
通过协议获取主机名
在 Web 页面配置 snmp 方式监控
点击左边菜单栏【配置】中的【主机】,点击 Zabbix server
【接口】点击【添加】选择 SNMP ,端口设置成 161
点击上方菜单栏【模板】,【链接的模板】中的所有 agent 模板选择取消链接并清理
再在【Link new templates】中搜索 Linux SNMP,选择 Template OS Linux SNMP
点击 【更新】,等待一段时间后 Zabbix server 的可用性就变成了 SNMP 监控方式。