##了解zabbix
##一、zabbix 是什么?
●zabbix 是一个基于 Web 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
●zabbix 能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
●zabbix 由 2 部分构成,zabbix server 与可选组件 zabbix agent。通过 C/S 模式采集数据,通过 B/S 模式在 Web 端展示和配置。
●zabbix server 可以通过 SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能, 它可以运行在 Linux 等平台上。
●zabbix agent 需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU 等信息的收集。
Zabbix现在版本已经迭代到了6.0以上的版本,zabbix6.0以上已经可以使用看k8s容器,现在最新版本为6.2版本。
Zabbix 6.0以上版本即支持传统监控,也支持容器监控
Zabbix是基于web界面的分布式系统监控,就是将监控信息显示在白屏上
Zabbix本身所有安装了数据库的mariadb,也就是mysql,所以能存放数据
##二、zabbix 监控原理:
zabbix agent安装在被监控的主机上,zabbix agent负责定期收集客户端本地各项数据,并发送至 zabbix server 端,zabbix server 收到数据后,将数据存储到数据库中,用户基于 Zabbix WEB 可以看到数据在前端展现图像。当 zabbix 监控某个具体的项目, 该项目会设置一个触发器阈值,当被监控的指标超过该触发器设定的阈值,会进行一些必要的动作,动作包括:发送信息(邮件、微信、短信)、发送命令(shell 命令、reboot、restart、install 等)。
zabbix 监控部署在系统中,包含常见的五个程序: zabbix_server、zabbix_agent、zabbix_proxy、zabbix_get、zabbix_sender 等。
●zabbix server:zabbix 服务端守护进程,其中 zabbix_agent、zabbix_get、zabbix_sender、zabbix_proxy 的数据最终都提交给 zabbix server;
●zabbix agent:客户端守护进程,负责收集客户端数据,例如:收集 CPU 负载、内存、硬盘使用情况等;
●zabbix proxy:zabbix 分布式代理守护进程,通常大于 500 台主机,需要进行分布式监控架构部署;
●zabbix get:zabbix 数据接收工具,单独使用的命令,通常在 server 或者 proxy 端执行获取远程客户端信息的命令;
●zabbix sender:zabbix 数据发送工具,用户发送数据给 server 或 proxy 端,通常用户耗时比较长的检查。
##三、zabbix常用架构
第一种架构:
服务端与客户端,该架构适合一到两百台机器
第二种架构:server-proxy-client架构,适合客户端数量在两百以上到千台。
第三种架构:master-node-client架构,该架构主要用于大型以及超大型网络架构(大型数据中心),客户端数量达到万台以上
Node相当于zabbix server的复制,它也跟server一样拥有数据库以及web前端展示页面,
所以相当于集群(高可用),即node节点将数据同步到zabbix服务端去,当server端挂了,node节点也能做到监控的作用,只不过需要打开多个node的监控页面才能查看到完整的监控信息,不然监控信息不完整。
Zabbix安装分为编译安装和官方安装
编译安装有两种:
1,Lamp
适合3.0版本
2,Lnmp
适合4.0版本以上
官方建议安装就是yum安装
安装zabbix 5.0 --------------------
部署zabbix 服务端---------
zabbix-server内存至少2G,推荐4G; .
systemctl disable --now firewalld
setenforce 0
hostnamectl set -hostname zbx- server
//获取zabbix 的下载源
rpm -ivh
https://mirrors.al iyun. com/ zabbix/zabbix/5.0/rhe1/7/x86_ 64/zabbix
-release-5.0-1.e17。noarch. rpm
//更换zabbix. repo 为阿里源
cd /etc/yum. repos.d
sed -i ‘s#http: //repo. zabbix. com#https: I /mirrors.aliyun. com/ zabbixi#’
zabbix. repo .
vum clean a11 && vum makecache
安装服务端
yum install -y zabbix-server -mysql zabbix-agent
//安装SCL (Software Collections), 便于后续安装高版本的php,默认yum安装的php版本为5.4, 版本过低,zabbix 5.0版本对php版本最低要7.2.0版本。SCIS可以使得在同一台机器上使用多个版本的软件,而又不会影响整个系统的依赖环境。软件包会安装在/opt/rh 目录下。
yum install -y centos- release-scl
//修改zabbix-front 前端源,安装zabbix 前端环境到scl环境下
vim zabbix. repo
[zabbix- frontend]
…
enabled-1
…
开启安装源
yum install -y zabbix-web-mysql-scl zabbix-apache-conf -scl
//安装zabbix 所需的数据库
yum install -y mariadb-server mar iadb
systemctl enable --now mariadb
mysql_ secure_ installation
初始化数据库,并设置密码,如
abc123
//添加数据库用户,以及zabbix 所需的数据库信息,
mysql -U root -pabq123
CREATE DATABASE zabbix character set utf8 collate utf8_ bin;
GRANT all ON zabbix.* TO ‘zabbix’@‘g’ IDENTIFIED BY ‘zabbix’ ;
flush privileges;
//导入数据库信息
rpm -q1 zabbix-server -mysql
查询sql文件的位置
zcat /usr/ share/doc/ zabbix-server -mysql -5.0.24/create.sq1.gz 1
mysql -uroot -pabc123 zabbix
//修改zabbix server
:配置文件,修改数据库的密码
vim /etc/ zabbix/zabbix_ server . conf
…
DBPassword-zabbix
124行,指定zabbix
数据库的密码
//修改zabbix的php配置文件
vim /etc/opt/ rh/ rh-php72/ php- fpm. d/ zabbix. conf
php_ value [date. timezone] = Asia/ Shanghai
24行,取消注释,修改时区
//启动zabbix 相关服务
systemctl restart zabbix-server zabbix- agent httpd
rh-php72-php- fpm
systemctl enable zabbix- server zabbix-agent httpd
rh-php72-php-fpm
浏览器访问: http://192. 168.13.13/zabbix
点击下一步,设置数据库的密码zabbix
安装完成后,默认的登录账号和密码为: Admin/ zabbix
设置文件界面:点击左边菜单栏的[User
settings]I, [ Language]选择Chinese(zh_ CN),再点击Update 更新。
//解决zabbix-server Web页面中文乱码问题
yum install -y wqy-microhei- fonts
\cp -f /usr/ share/ fonts/wqy-microhei /wqy-microhei.ttc
ettings]I, [ Language]选择Chinese(zh_ CN),再点击Update 更新。
//解决zabbix-server Web页面中文乱码问题
yum install -y wqy-microhei- fonts
\cp -f /usr/ share/ fonts/wqy-microhei /wqy-microhei.ttc
/usr/ share/ fonts/dejavu/De jaVuSans.ttf