zabbix
Zabbix的工作原理如下:
监控部分: Zabbix Agent安装在各个需要监控的主机上,它以主配置的时间间隔(默认60s)收集主机各项指标数据,如CPU占用率、内存使用情况等。
通讯部分: Agent会把收集的数据通过安全通道(默认10051端口)发送到Zabbix Server。Server会存储这些数据,用于定时触发器的判断和报表展示。
触发器机制: Zabbix Server会根据定义的各项指标的阈值触发器,比如CPU 5分钟平均值超过90%则报警。
报警动作: 当触发器被触发时,会设置预先定义的报警动作,如邮件通知、执行脚本等。
数据存储: Zabbix Server会定期将收集的数据存储在后端数据库(MySQL等)中,用于长期统计和报表展示。
Web界面: Zabbix提供基于WEB的管理界面,可以实时查看各项指标动态数据,查看历史趋势,设置触发器规则等。
所以简单来说,Zabbix通过Agent收集主机数据,Server运行收集分析报警,Web界面提供可视化查看,整体实现自动化监控管理。它采用主动推送的设计思路。
Zabbix 的主要功能特性有:
系统资源监控,如CPU、内存、磁盘使用率等 应用和服务监控,支持大量通用模板 网络设备监控,比如交换机、路由器等 虚拟环境监控,支持VMware、Hyper-V等 自定义监控,支持通过插件监控任意项目 多层次告警和通知功能 Web界面、报表和仪表盘展示 高可扩展性,支持汇集数以万计的监控对象
一、安装
a. 添加Zabbix YUM仓库
# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm # yum clean all
b. 安装Zabbix服务器、代理和Web界面套件
# yum install zabbix-server-mysql zabbix-agent
c. 安装Red Hat软件套件仓库,启用Zabbix WEB前端仓库
#yum install centos-release-scl
替换为阿里云源
重命名原来的文件:
cd /etc/yum.repos.d/ mv CentOS-SCLo-scl.repo CentOS-SCLo-scl.repo.bak mv CentOS-SCLo-scl-rh.repo CentOS-SCLo-scl-rh.repo.bak
粘贴以下内容:
[root@web254 yum.repos.d]# vim CentOS-SCLo-rh.repo
[centos-sclo-rh] name=CentOS-7 - SCLo rh baseurl=https://mirrors.aliyun.com/centos/7/sclo/x86_64/rh/ gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo
编辑配置文件 /etc/yum.repos.d/zabbix.repo and enable zabbix-frontend repository.
[zabbix-frontend] ... enabled=1 ...
yum install zabbix-web-mysql-scl zabbix-apache-conf-scl
d. 在数据库中创建Zabbix数据库及用户,导入数据架构
# mysql -uroot -p password mysql> create database zabbix character set utf8 collate utf8_bin; mysql> create user zabbix@localhost identified by 'password'; mysql> grant all privileges on zabbix.* to zabbix@localhost; mysql> set global log_bin_trust_function_creators = 1; mysql> quit;
导入初始架构和数据,系统将提示您输入新创建的密码。
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
# mysql -uroot -p password mysql> set global log_bin_trust_function_creators = 0; mysql> quit;
e. 编辑Zabbix服务器配置文件,设置数据库连接
编辑配置文件 /etc/zabbix/zabbix_server.conf
DBPassword=password
f. 编辑PHP-FPM配置文件,设置时区
编辑配置文件 /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
; php_value[date.timezone] = Asia/Shanghai
g. 启动Zabbix服务并设置开机启动
# systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm # systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
二、配置语言
以上配置完成后,在打开监控图片后,还是会出现乱码的情况,将物理机上的simkai.tty文件给linux机器
[root@web254 fonts]# cp /root/simkai.ttf /usr/share/zabbix/assets/fonts/
[root@web254 fonts]# vim /usr/share/zabbix/include/defines.inc.php
define('ZBX_GRAPH_FONT_NAME', 'simkai');
define('ZBX_FONT_NAME', 'simkai');
三、监控
被监控主机:
安装agent端软件
[root@server tmp]# yum install zabbix-agent
打开/etc/zabbix/zabbix_agentd.conf并修改以下设置:
[root@host2~]#vim /etc/zabbix/zabbix_agentd.conf
Server=Zabbix Server端主机名或IP地址
ServerActive= Zabbix Server端主机名或IP地址
Hostname=Agent端的主机名
UnsafeUserParameters=1//是否限制用户自定义keys使用特殊字符
进入zabbix界面
可以选择模板
添加完成,服务已经启动
添加应用集
自定义应用集名字
添加监控项
创建
完善监控选项,点击添加完成
进行预处理
添加图表
点击图形,创建图形
完善选项,添加监控项
设置图表选型
添加聚合图形
点击添加
完成后,点击构造函数
添加要变成图形格式的监控项即可
添加触发器
创建触发器
完善选项