更新到最新系统
dnf -y update
安装所需软件
dnf -y install vim wget tar
数据库部分
6.0 以上版本须要安装mysql8.0以上版本的数据库(以mysql为例子)
来自官网
欧拉系统自带 mysql8.0 的源,无须要安装额外的源
安装mysql
dnf -y install mysql-server
启动数据库
systemctl start mysqld && systemctl enable mysqld
初始化数据库
mysql_secure_installation
一起回车即可
下载源码包
cd /tmpwget https://cdn.zabbix.com/zabbix/sources/stable/6.2/zabbix-6.2.4.tar.gz
解压源码包
tar -zxvf zabbix-6.2.4.tar.gz
Zabbix部分
创建zabbix用户及用户组
groupadd --system zabbixuseradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix
创建zabbix安装目录
mkdir -p /app/zabbix
开始编译
prefix 指定安装目录enable-server 启用 Zabbix Serverenable-agent 启用 Zabbix agentwith-mysql 后端指天命据库为mysqlnet-snmp 支持 snmp 协议实在还有很多参数,大家可以参考 ./configure --help 自行研究 ,官方文档里也有案例
进入解压资源目录
ls /tmpcd /tmp/zabbix-6.2.4./configure --prefix=/app/zabbix --enable-server --enable-agent --with-mysql
实行上面的命令就进入排错环节了
第一个报错是mysql的开拓库没有
dnf -y install mysql-devel
安装完成后连续实行编译命令,涌现了缺失落libevent
dnf -y install libevent-devel
涌现了短缺libpcre库
dnf -y install pcre-devel
涌现这个界面证明已经编译完成了
安装
make install
完成安装
整体目录情形
PHP部分
openEuler 22.04 自带8.0版本,以是符合6.0以上版本的需求
dnf -y install php php-fpm
Apache操作部分
由于安装PHP会自动安装apache做事,以是安装过程并未提及apache的安装过程,移动前端文件到apache做事的网页目录下
mv /tmp/zabbix-6.2.4/ui/ /var/http/html
启动apache并访问
systemctl start httpd && systemctl enable httpdsystemctl start php-fpm && systemctl enable php-fpm
点击Next Step
此时会涌现 PHP 所须要一些依赖和参数的报错,以是首先安装一些PHP干系的依赖
dnf -y install php-gd php-mysqlnd php-bcmath php-xml php-mbstring
安装完依赖此时不须要重启任何做事,接下来调度PHP的配置文件
vim /etc/php.ini
根据报错来调度三个值分别是 post_max_size,max_excution_time,max_input_time
改完之后须要重启php-fpm做事
systemctl restart php-fpm
再进行刷新,就能够成功了(须要把稳的是,此时会有一个ldap的选项是warning,大家可以忽略,如果不涉及域账号登录,该功能无任何意义)
数据库配置部分
创建Zabbix所须要的数据库和用户
create database zabbix character set utf8mb4 collate utf8mb4_bin;create user zabbix@localhost identified by 'xiaoyu123';grant all privileges on zabbix. to zabbix@localhost;set global log_bin_trust_function_creators = 1;quit;
导入Zbbix 的数据文件
cat /tmp/zabbix-6.2.4/database/mysql/schema.sql | mysql -uzabbix -p zabbixcat /tmp/zabbix-6.2.4/database/mysql/images.sql | mysql -uzabbix -p zabbixcat /tmp/zabbix-6.2.4/database/mysql/data.sql | mysql -uzabbix -pxiaoyu123 zabbix
干系数据导入完成后关掉log_bin_trust_function_creators功能
set global log_bin_trust_function_creators = 0;quit;
完成这部分,就可以在前端进入数据库配配置界面
填写数据库密码,下一步
这一步便是设置主机的名称和时区
安装完成前预览
此时会涌现无法创建,这是由于目标目录没有权限导致的,可以点击蓝色字体将配置得好的文件下载下来,然后传到前端提示的目录里,该文这里路径为:
/var/www/html/conf/
放好后,刷新网页
完成安装
用户名密码为Admin/zabbix
看到这里大家该当会以为奇怪,为什么一贯没有去配置zabbix server部分的东西,那么上面这张图(zabbix server处于非常状态)就完美的阐明了,要对Server部分进行配置了。
Zabbix Server部分
首先来说说zabbix server 目录的一些情形
程序文件路径为/app/zabbix/sbin/配置文件路径为/app/zabbix/etc/制作 Zabbix server 守护文件
vim /usr/lib/systemd/system/zabbix-server.service
[Unit]Description=Zabbix ServerAfter=syslog.targetAfter=network.targetAfter=postgresql.serviceAfter=pgbouncer.serviceAfter=postgresql-13.service[Service]Environment="CONFFILE=/app/zabbix/etc/zabbix_server.conf"EnvironmentFile=-/etc/sysconfig/zabbix-serverType=forkingRestart=on-failurePIDFile=/tmp/zabbix_server.pidKillMode=control-groupExecStart=/app/zabbix/sbin/zabbix_server -c $CONFFILEExecStop=/bin/kill -SIGTERM $MAINPIDRestartSec=10sTimeoutSec=0[Install]WantedBy=multi-user.target
文中有一个地方须要把稳,便是pid文件所在的位置,下面会再次提到
编辑配置文件
vim /app/zabbix/etc/zabbix_server.conf
须要调度三个地方,第一个是log存放的位置,第二个是数据库密码,第三个是PID存放的位置
调度日志存放位置
修正数据库密码
修正pid文件位置
由于是源码安装,以是存放日志文件的目录不存在,以是须要自行创建,并付与对付的权限。
mkdir /var/log/zabbixchown zabbix:zabbix /var/log/zabbix
此时调度完成后就启动 Zabbix Server
systemctl start zabbix-server && systemctl enable zabbix-server
查看做事的状态
systemctl status zabbix-server
Active 处是running即为正常,同时查看干系日志
tail -f /var/log/zabbix_server.log
Zabbix-agent
与 Server一样,先创建做事
vim /usr/lib/systemd/system/zabbix-agent.service
[Unit]Description=Zabbix AgentAfter=syslog.targetAfter=network.target[Service]Environment="CONFFILE=/app/zabbix/etc/zabbix_agent.conf"Type=simpleRestart=on-failurePIDFile=/app/zabbix/zabbix_agentd.pidKillMode=control-groupExecStart=/app/zabbix/sbin/zabbix_agentd -c $CONFFILEExecStop=/bin/kill -SIGTERM $MAINPIDRestartSec=10sUser=zabbixGroup=zabbix[Install]WantedBy=multi-user.target
修正zabbix agent配置文件
同样调度两个地方,分别是pid文件的路径和日志的路径
vim /app/zabbix/etc/zabbix_agentd.conf
启动zabbix agent
systemctl start zabbix-agent && systemctl enable zabbix-agent
实在整体配置下来,觉得难度没有那么大,由于 openEuler并不是RHEL的下贱版本,以是采取dnf办法不太行,会涌现各种缺包,大家如果有兴趣可以多研究研究。