zabbix是什么
zabbix 是一个基于web界面的分布式监控系统,他是完全开源的,可以从这几个方面进行监控:
物理硬件监控[cpu温度,风扇转速,主板温度,电压等等]
操作系统监控:[cpu负载,内存,磁盘io,进程数,安全监控],
应用软件监控[ nginx mysql redis等等 ],
业务监控[业务状态,网页速度,网页是否正常访问],
网络监控 [icmp ]以及日志监控[ELK]
可以说 只要你可以在命令行获取到的数据,zabbix都可以检测
zabbix分为以下几部分:
zabbix-agent:部署在被监控的服务上,相当于是客户端,主动监控本地资源和应用程序,收集数据,并将收集到的数据发给zabbix-server。
zabbix-server : 服务端,通过收集agent发送的数据,将数据写入到数据库中,再通过zabbix-web展示出来,erver是存储所有配置,统计和操作数据的中央存储库。
zabbix-web:为了从任何地方和任何平台轻松访问,Zabbix 提供了基于 Web 的界面。该接口是 Zabbix server 的一部分,通常(但不一定)与 server 运行在同一台设备上。
安装zabbix5.0
可以参考官网:
安装zabbix源
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum clean all
yum list | grep zabbix # 查看zabbix可安装的版本
安装rh-php
yum install centos-release-scl-rh
安装zabbix服务端
yum install -y zabbix-server-mysql zabbix-agent
安装zabbix前端
yum install -y centos-release-scl
修改zabbix的yum
vim /etc/yum.repos.d/zabbix.repo
[zabbix-frontend]
...
enabled=1
...
安装zabbix前端包
yum install -y zabbix-web-mysql-scl zabbix-nginx-conf-scl
安装数据库 并配置
yum install -y mariadb-server
systemctl start mariadb
systemctl enable mariadb
mysql_secure_installation # 安全配置
# 创建数据库
create database zabbix character set utf8 collate utf8_bin;
# 创建mariadb中 zabbix用户
create user zabbix@'%' identified by 'zabbixZABBIX1!';
grant all privileges on zabbix.* to zabbix@'%';
# 查询数据库脚本
[^-^] host3 ~# rpm -ql zabbix-server-mysql
/usr/share/doc/zabbix-server-mysql-5.0.24/create.sql.gz # !!这个
# 导入MySQL表
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p'zabbixZABBIX1!' zabbix
配置zabbix
# 修改数据库信息/etc/zabbix/zabbix_server.conf
# DBName 新建数据库的名称
# DBUser 新建的用户
#DBpassword 登录密码
DBName=zabbix
DBUser=zabbix
DBPassword=zabbixZABBIX1!
# 修改 /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
listen.acl_users = apache, nginx
php_value[date.timezone] = Asia/Shanghai
# 修改zabbix内置nginx
vim /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf
listen 8081; #按照 实际情况填写
server_name 192.168.8.128; #按照 实际情况填写
# 启动zabbix nginx php
systemctl restart zabbix-server zabbix-agent rh-php72-php-fpm rh-nginx116-nginx
systemctl enable zabbix-server zabbix-agent rh-php72-php-fpm rh-nginx116-nginx
# 启动报错
Can't open PID file /run/zabbix/zabbix_server.pid (yet?) after start: No such file or directory
# 查看日志
tail -n 10 /var/log/zabbix/zabbix_server.log
15114:20220607:115157.242 [Z3001] connection to database 'zabbix' failed: [2059] Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/lib64/mysql/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory
# 进入数据库 修改加密规则
ALTER USER zabbix@'%' IDENTIFIED BY 'zabbixZABBIX1!' PASSWORD EXPIRE NEVER;
ALTER USER zabbix@'%' IDENTIFIED WITH mysql_native_password BY 'zabbixZABBIX1!';
FLUSH PRIVILEGES;
访问zabbix
# 访问方式
http://ip
# 如果报500 并且nginx的日志中显示:
PHP message: PHP Warning: session_start(): Failed to read session data: files (path: /var/opt/rh/rh-php72/lib/php/session/) in /usr/share/zabbix/include/classes/core/CSession.php on line 45
PHP message: PHP Fatal error: Uncaught Exception: Cannot start session. in /usr/share/zabbix/include/classes/core/CSession.php:46
# 解决方法:
/var/opt/rh/rh-php72/lib/php
chmod -R 777 session
图形化界面操作:
所有都为ok之后 点击下一步
填写数据库密码
默认账号是 zabbix
这个的上一步 他可能创建文件失败,可以下载后按照他的路径 导进去就行
登录到zabbix中 账号是 Admin 密码 zabbix
登陆后 zabbix首页的界面
如果需要在其他服务器上安装客户端,运行下面的操作 上面操作中 安装了全部的端[server agent web] ,server端也需要检测的 要安装一个agent
安装客户端 zabbix-agent
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum install -y zabbix-agent
vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.8.128 # server端ip
ServerActive=192.168.8.128 # server端ip
systemctl start zabbix-agent.service
systemctl enable zabbix-agent.service
yum -y install zabbix-get zabbix工具
安装好客户端之后,要在web界面 给他添加一个监控模板
我添加的是这个模板,可以根据自己的情况添加模板
🍟:ok 本期内容就到这里啦,如果这个文章写的有什么问题欢迎指正,也可以留言一起讨论,最后最后最后,如果觉得我的文对你有帮助的话,也欢迎 一键三连支持一下,还有还有 记得期待下一章节 ~
ps:请夸一下我的封面,我拍的!!我们园区的景色,唯一一天下班有太阳 美滋滋
如果觉得我的文对你有帮助的话 可以关注下我的公众号 一般写文第一时间发布到公众号中
公众号名称 咕咕崽
二维码: