yum -y install wget vim
安装数据库
yum -y install mariadb-server
启动数据库并设置为开机启动,初始化数据库及创建Zabbix干系数据库实例
systemctl start mariadb && systemctl enable mariadbmysql_secure_installation (数据库初始化,设置密码,过程略,可以参考本人视频)mysql -uroot -pxiaoyu123create database zabbix character set utf8 collate utf8_bin;create user zabbix@localhost identified by 'xiaoyu123';grant all privileges on zabbix. to zabbix@localhost;quit;
下载zabbix 5.2的源码包
wget https://cdn.zabbix.com/zabbix/sources/stable/5.2/zabbix-5.2.1.tar.gz
解压镜像
tar -zxvf zabbix-5.2.1.tar.gz(我的文件放在/tmp下)
创建zabbix用户,同时创建家目录
groupadd --system zabbixuseradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbixmkdir -m u=rwx,g=rwx,o= -p /usr/lib/zabbixchown zabbix:zabbix /usr/lib/zabbix
预编译环境
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
详细可参考官网,这里代表启用server、agent、数据库为mysql。
接下来开启排错折腾之旅[捂脸][捂脸]
这里由于没有C措辞环境,以是须要安装GCC
yum -y install gcc
这里提示为没有mysql的库文件,以是须要安装mysql-devel
yum -y install mysql-devel
这里短缺libxml2文件及其库文件,须要安装libxml2 libxml2-devel
yum -y install libxml2 libxml2-devel
如果之前没有跟上--with-net-snmp这里该当不会报错,浸染为SNMP功能,这里须要安装两个包,net-snmp,net-snmp-devel
yum -y installnet-snmp net-snmp-devel
这里是短缺libevent及其库文件
yum -y install libevent libevent-devel
短缺curl的库文件
yum -y install curl-devel
看到这里预编译已经完成,安装路径一定要记得,我这里为/usr/local,输入make install正式编译安装。
make install
代码刷完后即进入下一个阶段,这里我们开始前真个支配
前端首先,导入数据库架构文件至数据库
mysql -u zabbix -pxiaoyu123 -h localhost zabbix < schema.sqlmysql -u zabbix -pxiaoyu123 -h localhost zabbix < images.sqlmysql -u zabbix -pxiaoyu123 -h localhost zabbix < data.sql
安装http做事和php做事,由于CentOS 7默认php版本为5.6,以是须要安装额外yum源
zabbix 5.2最低哀求为7.2
yum -y install epel-release yum-utilsrpm -ivh https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-7.rpmyum-config-manager --enable remi-php72yum -y install httpd php php-fpm php-json
移动Zabbix前端文件到http根目录下
cp /tmp/zabbix-5.2.1/ui/ /var/www/html/ -R
授予文件夹的权限
chown apache:apache /var/www/html/ -R
开启干系做事
systemctl start httpd php-fpm && systemctl enable httpd php-fpm
访问前端,此时无需跟后缀名称,输入IP地址即可
熟习的界面
办理前端环境问题,下图我们可以看出,分为两类问题,一类为包没装,另一类为配置文件不符合。
yum -y install php-gd php-bcmath php-mbstring php-xmlwriter php-xmlreader php-mysqli
报错信息
包依赖问题办理
修正配置文件
规复正常
前端部分搞定
Server部分修正配置文件,如果不知道配置文件在哪个目录,可以输入find / -name zabbix_server.conf,将里面的数据库密码更换为你的数据库密码
修正密码
创建启动文件,也可以直接进目录实行相对应的文件
Server部分
vim /usr/lib/systemd/system/zabbix-server.service[Unit]Description=Zabbix ServerAfter=syslog.targetAfter=network.targetAfter=mysql.serviceAfter=mysqld.serviceAfter=mariadb.serviceAfter=postgresql.serviceAfter=pgbouncer.serviceAfter=postgresql-9.4.serviceAfter=postgresql-9.5.serviceAfter=postgresql-9.6.serviceAfter=postgresql-10.serviceAfter=postgresql-11.serviceAfter=postgresql-12.service[Service]Environment="CONFFILE=/usr/local/etc/zabbix_server.conf"Type=forkingRestart=on-failurePIDFile=/tmp/zabbix_server.pidKillMode=control-groupExecStart=/usr/local/sbin/zabbix_server -c $CONFFILEExecStop=/bin/kill -SIGTERM $MAINPIDRestartSec=10sTimeoutSec=0[Install]WantedBy=multi-user.target
agent部分
vim /usr/lib/systemd/system/zabbix-agent.service[Unit]Description=Zabbix AgentAfter=syslog.targetAfter=network.target[Service]Environment="CONFFILE=/usr/local/etc/zabbix_agentd.conf"Type=forkingRestart=on-failurePIDFile=/tmp/zabbix_agentd.pidKillMode=control-groupExecStart=/usr/local/sbin/zabbix_agentd -c $CONFFILEExecStop=/bin/kill -SIGTERM $MAINPIDRestartSec=10sUser=zabbixGroup=zabbix[Install]WantedBy=multi-user.target
启动server及agent
systemctl start zabbix-server zabbix-agent &&systemctl enable zabbix-server zabbix-agent
大功告成
写在末了源码安装的办法适宜你对该软件的理解,实际上如果仅仅是利用推举采取yum包安装办法,更加便捷,排错起来更加方便,当你达到一定的理解时候再考试测验该种办法。