1. 首页 > 服务器系统 > Centos

CentOS7源码编译安装Zabbix 6.0alpha1

CentOS7源码编译安装Zabbix 6.0alpha1

Zabbix官方最近针对开发者发布了6.0的第一个预览版,代号为6.0 alpha1,和预想的一样,功能大部分在开发,并不是正式发布的测试版本,所以功能上也没什么太多值得提的地方,前段时间的深圳大会,CEO Alexei Vladishev也提到过6.0的一些消息,正式版应该在12月份推出,但测试版本肯定会提前一到二个月的时间,等到官方正式发布,我再给大家介绍详细的改进,今天这篇文章主要是借6.0实现CentOS7依然可以安装使用。

CentOS7源码编译安装Zabbix 6.0alpha1

来自于官方产品路线图

正文

环境

  • 系统版本:CentOS 7.9
  • Zabbix版本:6.0 alpha1

预装工具(如有请忽略)

  1. yum -y install vim wget 

下载pre-6.0.0alpha1包并解压

  1. cd /tmp 
  2. wget https://www.zabbix.com/downloads/nightly/pre-zabbix-6.0.0alpha1-f8219dcac2.tar.gz 
  3. tar -zxvf pre-zabbix-6.0.0alpha1-f8219dcac2.tar.gz 

编译安装zabbix6.0alpha1

进入Zabbix目录

  1. cd /tmp/zabbix-6.0.0alpha1 

创建zabbix用户及zabbix用户组

  1. groupadd --system zabbix 
  2. useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix 

编译zabbix,启用snmp、server、agent功能

  1. mkdir /opt/zabbix 
  2. ./configure --prefix=/opt/zabbix/ --enable-server --enable-agent --with-net-snmp --with-mysql 

出现下图的问题即为gcc环境未装

解决办法为:

  1. yum -y install gcc-c++ 
CentOS7源码编译安装Zabbix 6.0alpha1

出现下图的问题即为mysql的库未装,自带库的mysql版本为5.6,这里需要装mysql8.0

CentOS7源码编译安装Zabbix 6.0alpha1
  1. yum install https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm -y 

安装mysql开发库

  1. yum -y install mysql-devel 

出现下面问题,net-snmp库未安装

  1. yum -y install net-snmp-devel 
CentOS7源码编译安装Zabbix 6.0alpha1

出现下图问题,属于libevent库未安装

  1. yum -y install libevent-devel 
CentOS7源码编译安装Zabbix 6.0alpha1

出现下图,编译就完成了。

紧接着make install 即可

  1. make install 
CentOS7源码编译安装Zabbix 6.0alpha1
CentOS7源码编译安装Zabbix 6.0alpha1

安装完成

LAMP环境部署

环境要求

CentOS7源码编译安装Zabbix 6.0alpha1

数据库要求

CentOS7源码编译安装Zabbix 6.0alpha1

http和php要求

由于CentOS7自带PHP版本为5.6,所以需要安装额外的库,也是remi的库。

  1. yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm -y 
  2. yum install yum-utils -y 
  3. yum-config-manager --disable 'remi-php*' 
  4. yum-config-manager --enable   remi-php74 

安装php

  1. yum -y install php 

移动前端文件至web服务的根目录并授权

  1. cp /tmp/zabbix-6.0.0alpha1/ui/* /var/www/html/ -R 
  2. chown apache:apache /var/www/html -R 

启动服务并访问前端

  1. systemctl start httpd && systemctl enable httpd 
CentOS7源码编译安装Zabbix 6.0alpha1

正常访问

解决前端PHP错误的问题(如下图)

CentOS7源码编译安装Zabbix 6.0alpha1
  1. yum -y install php-bcmath php-gd php-xml  php-mbstring php-mysqlnd php-ldap 
  2. vim /etc/php.ini 
CentOS7源码编译安装Zabbix 6.0alpha1

修改post_max_size为16M

CentOS7源码编译安装Zabbix 6.0alpha1

修改max_execution_time为300

CentOS7源码编译安装Zabbix 6.0alpha1

修改max_input_time为300

修改完成后重启web服务

  1. service httpd restart 
CentOS7源码编译安装Zabbix 6.0alpha1

正常

数据库部分

安装数据库

  1. yum-config-manager --enable mysql80-community 
  2. yum install mysql-community-server -y 

启动数据库

  1. systemctl start mysqld && systemctl enable mysqld 

查看mysql初始化密码

  1. grep 'temporary password' /var/log/mysqld.log 
CentOS7源码编译安装Zabbix 6.0alpha1

初始化数据库

这里需要注意的是密码要求,3种元素

  1. mysql_secure_installation 
CentOS7源码编译安装Zabbix 6.0alpha1

修改密码

创建数据库

  1. create database zabbix character set utf8 collate utf8_bin; 
  2. create user zabbix@localhost identified by 'Huawei@123'
  3. grant all privileges on zabbix.* to zabbix@localhost; 
  4. quit; 
CentOS7源码编译安装Zabbix 6.0alpha1

导入数据库架构及数据

  1. mysql -uzabbix -pHuawei@123 zabbix < /tmp/zabbix-6.0.0alpha1/database/mysql/schema.sql 
  2. mysql -uzabbix -pHuawei@123 zabbix < /tmp/zabbix-6.0.0alpha1/database/mysql/images.sql 
  3. mysql -uzabbix -pHuawei@123 zabbix < /tmp/zabbix-6.0.0alpha1/database/mysql/data.sql 
CentOS7源码编译安装Zabbix 6.0alpha1

前端配置连接数据库

CentOS7源码编译安装Zabbix 6.0alpha1
CentOS7源码编译安装Zabbix 6.0alpha1

正常进入界面

配置Zabbix Server配置文件

文件目录在

/opt/zabbix/etc/zabbix_server.conf,修改数据库密码

  1. vim /opt/zabbix/etc/zabbix_server.conf 
CentOS7源码编译安装Zabbix 6.0alpha1

启动Zabbix server、Zabbix agent

  1. cd /opt/zabbix/sbin/ 
  2. ./zabbix_server 
  3. ./zabbix_agentd 
CentOS7源码编译安装Zabbix 6.0alpha1
CentOS7源码编译安装Zabbix 6.0alpha1

附录

zabbix-agent.service守护文件

vim /usr/lib/systemd/system/zabbix-agent.service

  1. [Unit] 
  2. Description=Zabbix Agent 
  3. After=syslog.target 
  4. After=network.target 
  5. [Service] 
  6. Environment="CONFFILE=/opt/zabbix/etc/zabbix_agentd.conf" 
  7. EnvironmentFile=-/etc/sysconfig/zabbix-agent 
  8. Type=forking 
  9. Restart=on-failure 
  10. PIDFile=/tmp/zabbix_agentd.pid 
  11. KillMode=control-group 
  12. ExecStart=/opt/zabbix/sbin/zabbix_agentd -c $CONFFILE 
  13. ExecStop=/bin/kill -SIGTERM $MAINPID 
  14. RestartSec=10s 
  15. User=zabbix 
  16. Group=zabbix 
  17. [Install] 
  18. WantedBy=multi-user.target 

zabbix-server.service守护文件

vim /usr/lib/systemd/system/zabbix-server.service

  1. [Unit] 
  2. Description=Zabbix Server 
  3. After=syslog.target 
  4. After=network.target 
  5. After=mysql.service 
  6. After=mysqld.service 
  7. After=mariadb.service 
  8. After=postgresql.service 
  9. After=pgbouncer.service 
  10. After=postgresql-9.4.service 
  11. After=postgresql-9.5.service 
  12. After=postgresql-9.6.service 
  13. After=postgresql-10.service 
  14. After=postgresql-11.service 
  15. After=postgresql-12.service 
  16. [Service] 
  17. Environment="CONFFILE=/opt/zabbix/etc/zabbix_server.conf" 
  18. EnvironmentFile=-/etc/sysconfig/zabbix-server 
  19. Type=forking 
  20. Restart=on-failure 
  21. PIDFile=/tmp/zabbix_server.pid 
  22. KillMode=control-group 
  23. ExecStart=/opt/zabbix/sbin/zabbix_server -c $CONFFILE 
  24. ExecStop=/bin/kill -SIGTERM $MAINPID 
  25. RestartSec=10s 
  26. TimeoutSec=0 
  27. User=zabbix 
  28. Group=zabbix 
  29.  
  30. [Install] 
  31. WantedBy=multi-user.target 

写在最后

整个编译下来其实就是对环境熟悉的过程,当然在CentOS 7安装6.0还是存在一定的小问题,建议大家还是用官方推荐的CentOS8系列的系统,编译过程虽然麻烦,但是仔细研究透了也就那么回事,大家在用其他的开源软件的时候就不会觉得陌生了,毕竟不是所有的软件都能像zabbix这样提供软件包安装。

原文链接:https://www.toutiao.com/i6994009639968965152/

本文由主机测评网发布,不代表主机测评网立场,转载联系作者并注明出处:https://zhuji.jb51.net/centos/1367.html

联系我们

在线咨询:点击这里给我发消息

微信号:

工作日:8:30-17:30,节假日休息