ZABIX5.0.7源码安装详细过程

Zabbix5.0源码安装文档
一:Linux初始设置
关闭selinux
vi /etc/selinux/config
SELINUX=disabled
关闭网络管理
Systemctl stop NetworkManager
systemctl disable NetworkManager
关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
编辑网卡配置,编辑以下几行,其余的可以保留不动
vi /etc/sysconfig/network-scripts/ifcfg-ens192
BOOTPROTO=static
ONBOOT=yes
IPADDR=
NETMASK=255.255.255.0
GATEWAY=
DNS1=
重启网卡服务
service network restart
如需要,更改主机名
vi /etc/hostname
重启机器
reboot

二、安装前配置及编译安装
创建用户
groupadd --system zabbix
useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c “Zabbix Monitoring System” zabbix

创建文件目录
mkdir /opt/monitor
mkdir /opt/download

下载安装包上传至服务器/opt/download或者在线下载
Wget https://cdn.zabbix.com/zabbix/sources/stable/5.0/zabbix-5.0.7.tar.gz

安装基础环境
首先apache的安装: yum install httpd
接着mysql/mariadb的安装: yum install httpd mariadb mariadb-server
然后php的安装:yum install php php-mysql php-devel

安装依赖包(包含上述步骤)

yum -y install gcc gcc-c++ make php* unixODBC fping OpenIPMI OpenIPMI-libs httpd mariadb mariadb-server net-snmp net-snmp-devel libxml2-devel libevent-devel mysql-devel java-1.8.0-openjdk* curl curl-devel

安装php可能会报错,zabbix5.0需要安装php7.2以上的版本

yum install epel-release -y

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

重新安装php7.2
yum -y remove php*

yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml
再重新执行
yum -y install gcc gcc-c++ unixODBC fping OpenIPMI OpenIPMI-libs httpd mariadb mariadb-server net-snmp net-snmp-devel libxml2-devel libevent-devel mysql-devel java-1.8.0-openjdk* curl curl-devel

接着启动对应服务和设置开机自启
systemctl start httpd
systemctl enable httpd
systemctl enable mariadb
systemctl start mariadb

进入解压缩目录,对zanbbix的包进行解压
cd /opt/download/
tar -zxvf zabbix-5.0.7.tar.gz
cd zabbix-5.0.7

编译安装
样例:./configure --prefix=/usr/local/zabbix/ --enable-server --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl
实际要求:
./configure --prefix=/opt/monitor/zabbix-5.0.7 --enable-server --enable-proxy --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2

make && make install

参数说明:
–prefix=/usr/local/zabbix-server # 编译安装路径
–enable-server          # server端
–enable-agent          # agent端
–enable-proxy # proxy端
–with-mysql #编译连接mysql
–with-net-snmp          #启动snmp相关,用于snmp监控设备
–with-libcurl           #启动curl相关
–with-libxml2           #启动xml相关
–with-unixodbc         #启动odbc相关用于监控数据库

三、数据库
启动数据库
#上面已经启动数据库不需要执行再次启动了
systemctl start mariadb.service
systemctl enable mariadb
#mysql的初始化
mysql_secure_installation #在Set root password? [Y/n]后面输入 y,设置密码123456(可自己更改),在Disallow root login remotely? [Y/n] 后面输入n,允许root用户远程登录,其他选项直接回车默认就可以了
mysql -uroot -p123456
mysql -uroot -p
第一次可以空密码进入的

创建zabbix库
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by ‘zabbix’;
flush privileges;
sql语句在解压的文件夹里

cd /opt/download/zabbix-5.0.7

mysql -uzabbix -pzabbix zabbix < database/mysql/schema.sql //表结构
mysql -uzabbix -pzabbix zabbix < database/mysql/images.sql //图片
mysql -uzabbix -pzabbix zabbix < database/mysql/data.sql //模板
四、配置php基础环境及zabbix配置文件的修改
配置 php 环境,修改 php.ini,目的是 zabbix 的 web 代码要求这么配置才能正常运行,
所以,不修改的后果就是无法安装,无法获得正常的环境。

vim /etc/php.ini

date.timezone =Asia/Shanghai
max_execution_time = 300
post_max_size = 32M
max_input_time = 300
memory_limit = 128M //如果web页面提示内存不够使用,请调整此值
mbstring.func_overload = 0

重启httpd服务
systemctl restart httpd.service
systemctl enable httpd.service

创建日志目录
[root@linuxlz ~]# cd /var/log
[root@linuxlz zabbix]# mkdir zabbix-5.0.7
[root@linuxlz zabbix]# chown zabbix:zabbix zabbix-5.0.7

修改zabbix_server.conf负责服务器端的设定
cd /opt/monitor/zabbix-5.0.7/etc/
cp zabbix_server.conf zabbix_server.conf.bak
vi zabbix_server.conf
LogFile= /var/log/zabbix-5.0.7/zabbix_server.log //日志路径
PidFile=/tmp/zabbix_server.pid # 指定zabbix的pid文件
DBHost=localhost //数据库的地址
DBName=zabbix //数据库名称
DBUser=zabbix //数据库用户
DBPassword=zabbix //数据库密码
DBSocket=/var/lib/mysql/mysql.sock //根据实际填写路径,此处为 YUM 安装的
DBPort=3306 //数据库端口
Include=/opt/monitor/zabbix-5.0.7/etc/zabbix_server.conf.d/.conf
从解压包目录中拷贝zabbix_server启动脚本至开机启动目录
复制启动脚本
cd /opt/download/zabbix-5.0.7/
cp misc/init.d/fedora/core/zabbix_
/etc/init.d/
ll -d /etc/init.d/zabbix_*
chmod +x /etc/init.d/zabbix_*
修改zabbix_agentd.conf设置客户端代理参数
agentd 的作用就是获得 host 数据,然后将收集到的数据发送给 server。
/opt/monitor/zabbix-5.0.7/etc/ //配置目录
cp zabbix_agentd.conf zabbix_agentd.conf.origin
vim zabbix_agentd.conf
LogFile=/var/log/zabbix-5.0.7/zabbix_agented.log //日志路径
PidFile=/tmp/zabbix_agentd.pid //指定zabbix的pid文件
Include=/opt/monitor/zabbix-5.0.7/etc/zabbix_agentd.conf.d/*.conf //自定义的 agentd 配置文件存放路径
Server=127.0.0.1 //服务端 IP
ServerActive=172.19.6.45:10051 //服务端 IP,端口固定
UnsafeUserParameters=1 //自定义脚本功能,1 为开启,默认 0 为关闭
配置WEB页面
这里需要注意,4.0和5.0的php文件路径不一致
Apache Web服务器 的HTML文档目录的常见位置包括:
/ usr / local / apache2 / htdocs(从源代码安装Apache时的默认目录)
/ srv / www / htdocs(OpenSUSE,SLES)
/ var / www / html(Debian,Ubuntu,Fedora,RHEL,CentOS)

4.0复制 PHP 文件
Zabbix 前端是 PHP 编写的,所以必须运行在支持 PHP 的 Web 服务器上。只需要简单的从 frontends/php 路径下复制 PHP 文件到 Web 服务器的HTML文档目录,即可完成安装。
5.0复制PHP文件
Zabbix前端是用PHP编写的,因此要运行它,需要一个PHP支持的Web服务器。安装只需将ui目录中的PHP文件复制到Web服务器HTML文档目录中即可。
建议使用子目录而不是HTML根目录。要创建一个子目录并将Zabbix前端文件复制到其中,请执行以下命令,替换实际目录:
cd /var/www/html
mkdir zabbix
cd /usr/download/zabbix-5.0.0/ui
cp -axv ./ /var/www/html/zabbix
启动zabbix的服务
/opt/monitor/zabbix-4.0.27/sbin/zabbix_server
/opt/monitor/zabbix-4.0.27/sbin/zabbix_agent

访问浏览器
http://ip/setup.php

如果遇到php页面的如上报错,
解决方法:
yum -y install php-bcmath php-mbstring php-xmlwriter php-xmlreader
systemctl restart httpd
页面php报错,证明上面的php.ini参数没有配,返回上面修改参数,或者考虑用以下脚本修改
sed -i ‘/post_max_size/s/8/16/g;/max_execution_time/s/30/300/g;/max_input_time/s/60/300/g;s/;date.timezone.* /date.timezone =PRC/g;s/;always_populate_raw_post_data/always_populate_raw_post_data/g’ /etc/php.ini
systemctl restart httpd
然后回到页面继续下一步;

cd /var/www/html/conf/zabbix
上传下载的zabbix.conf.php
默认账号Admin
默认密码zabbix

如果页面设置后,修改中文字体后有部分图形界面的汉字显示为方框,文字显示不全,可以按照下述方法处理
把本地windows的字体文件上传到linux服务器即可/opt/download/
然后复制到zabbix的web目录下assets/fonts目录
cd /opt/monitor/zabbix-5.0.7/html/assets/fonts
cp /opt/download/simhei.ttf ./

把黑体的字体文件符号链接为zabbix的默认字体:DejaVuSans.ttf
mv DejaVuSans.ttf DejaVuSans.ttf.bak
ln -s simhei.ttf DejaVuSans.ttf

五、故障处理
可能遇到的故障一:
报错:zabbix 服务未运行

处理方法:修改/etc/init.d/zabbix_server启动文件
如果按照上述做了启动脚本两处都需要修改
vim /etc/init.d/zabbix_server
vim /opt/monitor/zabbix-5.0.7/sbin/zabbix_server

修改成编译安装路径BASEDIR=/opt/monitor/zabbix-5.0.7/
修改zabbix_agentd配置文件
vim /etc/init.d/zabbix_agentd
vim /opt/monitor/zabbix-5.0.7/sbin/zabbix_agented

修改成编译安装路径BASEDIR=/opt/monitor/zabbix-5.0.7/

可能遇到的故障二:
查看启动日志,如果有如下报错

ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

可能遇到的故障三:
如需重新安装mariadb,步骤如下:
rpm -qa|grep mariadb
yum remove mariadb
ls /etc/my.cnf
ll /var/lib/mysql/
rm -rf /etc/my.cnf
rm -rf /var/lib/mysql/
yum install -y mariadb mariadb-server
设置开机启动
systemctl start mariadb
systemctl enable mariadb
mariadb的初始化
mysql_secure_installation

六、安装proxy
如果前面没有编译安装zabbix_proxy,需要再安装proxy,步骤如下
/opt/download/zabbix-5.0.7
./configure --prefix=/usr/local/zabbix --enable-proxy --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
make && make install

Proxy需要单独的数据库
mysql -root -p
Enter password:
create database zabbix_proxy character set UTF8 collate utf8_bin;
grant all privileges on zabbix_proxy.* to zabbix@localhost identified by ‘zabbix’;
zabbix mariaDB flush privileges; #重新加载权限表

MariaDB [(none)]> use proxy;
Database changed
MariaDB [proxy]> source /opt/download/zabbix-5.0.7/datebase/mysql/schema.sql;
MariaDB [proxy]> source /opt/download/zabbix-5.0.7/database/mysql/schema.sql;

修改zabbix_proxy的配置
vi zabbix_proxy.conf
Server= #指定zabbix-server的ip地址
DBHost=localhost             #以下都是数据库信息
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=zabbix
DBSocket=/var/lib/mysql/mysql.sock
DBPort=3306

启动zabbix-proxy

后续页面功能不再赘述,网上有相关操作手册和视频。文档可能存在一定的疏忽,以后会再进行更新

ZABIX5.0.7源码安装详细过程相关推荐

  1. mysql 5.7.18源码包下载_MYSQL数据库CentOS6.9+Mysql5.7.18源码安装详细教程

    <MYSQL数据库CentOS6.9+Mysql5.7.18源码安装详细教程>要点: 本文介绍了MYSQL数据库CentOS6.9+Mysql5.7.18源码安装详细教程,希望对您有用.如 ...

  2. ubuntu中手动编译源码安装Xorg-server过程中依赖关系的解决

    ubuntu中手动编译源码安装Xorg-server过程中依赖关系的解决 在linux系统中手动编译源码安装软件包的过程是非常痛苦的,然而这一个多星期以来我是强忍住脾气体验了一把,虽然面对慢的令人发指 ...

  3. 在 CentOS 7.0 上源码安装 Xen 4.5

    上周 CentOS 7.0 正式版发布了,Xen4CentOS 项目还没来得及更新支持 CentOS 7.0,所以目前要在 CentOS 7.0 上玩 Xen 的唯一办法只有编译源代码了.貌似这次 C ...

  4. Apache 源码安装详细教程

    文章目录 Apache 源码安装 Apache 入门简介 进程和线程概念 进程和线程的区别 目前主流的WEB服务器软件 源码包安装 httpd 总结 Apache 重启报错解决办法 Apache 源码 ...

  5. .net framework 4.0安装_R4.0的源码安装——以mac为例

    装了一堆东西回来,已经忘了最初要做的是啥. 太长不看版 其实就是缺什么安装什么.每个人情况可能都不太一样.对于我的mac上,如下: configure之前需要安装: gcc xz pcre2 安装方法 ...

  6. linux suse11 sp3安装,SUSE Linux Enterprise Server 11 SP3源码安装R过程

    SUSE Linux Enterprise Server 11 SP3源码编译安装R-3.2.2过程详解.suse上安装R,过程艰难,文章里的源码包版本都是自己安装时候所用的版本,不一定必须是该版本. ...

  7. Spark 1.0.1源码安装

    2019独角兽企业重金招聘Python工程师标准>>> apache 网站上面已经有了已经构建好了的版本,我这里还是自己利用午休时间重新构建一下(jdk,python,scala的安 ...

  8. Pure-Ftpd-1.0.49源码安装

    下载源码 pure-ftpd源码链接 安装 #将源码文件pure-ftpd-1.0.49.tar.gz放到/usr/local/src文件夹下 #解压 tar -zxvf pure-ftpd-1.0. ...

  9. 米酷影视v7.0.4源码+安装教程

    简介: 1.优化幻灯采集 2.优化首页和列表页采集 3.修复尝鲜分页尾页问题 4.增加虎牙直播 5.修复历史记录标题过长换行问题 6.修复弹窗公告移动端样式 7.修复综艺播放页猜你喜欢不显示爱奇艺图片 ...

最新文章

  1. insight切换窗口 source_Source Insight函数调用关系显示设置(示例代码)
  2. .net framework 4.0环境下遇到版本不同编译不通过的解决办法
  3. Linux gcc编译c/c++基本过程
  4. Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate
  5. sata接口 图解 定义_硬盘有几个接口 硬盘不同接口介绍【详解】
  6. python神奇时钟项目_怎么在Python项目中利用Pygame绘制一个时钟
  7. macOS:删除 MDM 配置描述文件
  8. linux系统中 为mysql还原数据库_linux中mysql还原数据库命令
  9. android ip v6 teredo,win7系统通过teredo连接IPv6的操作方法
  10. 基于JAVA城市湖泊信息管理系统计算机毕业设计源码+系统+lw文档+部署
  11. Java基础 -> 从键盘获取不同的输入类型(String,int,double,boolean)(Scanner)
  12. Mac 外接键盘Command键( Windows 徽标键)失效
  13. 这届90后女博士,对30岁不屑一顾
  14. 新浪微博Android客户端开发之OAuth认证篇
  15. 做短视频的经历——成长与心酸
  16. go编译找不到包golang.org/x/net
  17. 去中心化交易所与中心化交易所的优劣势对比
  18. 刘永富的Office开发资源-告别vba.mahoupao.net-移居博客园
  19. MySQL中事务的持久性实现原理
  20. mysql获取本月,本周,本季度初末数据

热门文章

  1. 单片机A/D及D/A转换接口
  2. 错误 LNK2001
  3. 神经网络和深度学习简史(一)
  4. 中美网络安全差距在哪里?这要从克林顿时代说起
  5. 为什么PUSH推送要经常背锅?
  6. Android客制化------恢复出厂设置但保留文件
  7. 如何将android studio设置复位,将设置恢复到初始化
  8. uniapp调用高德地图获取当前位置信息
  9. QTP测试web时:打开ie浏览器进行录制但qtp中并没有脚本生成的解决办法
  10. CAN FD总线收发器 SIT1044 5V供电 IO口兼容3.3V 兼容TJA1044TGTK/3、TJA1044GT/3、TJA1044T