CentOS7源码编译安装Zabbix 6.0alpha1
<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li>正文<ul class="second_class_ul"><li>
环境</li><li>
预装工具(如有请忽略)</li><li>
下载pre-6.0.0alpha1包并解压</li><li>
编译安装zabbix6.0alpha1</li><li>
LAMP环境部署</li><li>
安装php</li><li>
正常</li><li>
数据库部分</li><li>
前端配置连接数据库</li><li>
配置Zabbix Server配置文件</li><li>
启动Zabbix server、Zabbix agent</li></ul></li><li>
附录<ul class="second_class_ul"><li>
zabbix-agent.service守护文件</li><li>
zabbix-server.service守护文件</li><li>
写在最后</li></ul></li></ul></div><p>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" border="0" height="auto" src="https://zhuji.jb51.net/uploads/img/202305/4bec2034debf77277116675feb16bb52.jpg" width="auto"></p>
<p>
Zabbix官方最近针对开发者发布了6.0的第一个预览版,代号为6.0 alpha1,和预想的一样,功能大部分在开发,并不是正式发布的测试版本,所以功能上也没什么太多值得提的地方,前段时间的深圳大会,CEO Alexei Vladishev也提到过6.0的一些消息,正式版应该在12月份推出,但测试版本肯定会提前一到二个月的时间,等到官方正式发布,我再给大家介绍详细的改进,今天这篇文章主要是借6.0实现CentOS7依然可以安装使用。</p>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/3983cf3c1fa8a4b91e8180299cb8466b.jpg">
</center>
<p>
来自于官方产品路线图</p>
<p class="maodian"></p><h2>
正文</h2>
<p class="maodian"></p><h3>
环境</h3>
<ul>
<li>
系统版本:CentOS 7.9</li>
<li>
Zabbix版本:6.0 alpha1</li>
</ul>
<p class="maodian"></p><h3>
预装工具(如有请忽略)</h3>
<ol class="dp-sql">
<li class="alt">
<span><span>yum -y install vim wget </span></span>
</li>
</ol>
<p class="maodian"></p><h3>
下载pre-6.0.0alpha1包并解压</h3>
<ol class="dp-sql">
<li class="alt">
<span><span>cd /tmp </span></span>
</li>
<li>
<span>wget https://www.zabbix.com/downloads/nightly/pre-zabbix-6.0.0alpha1-f8219dcac2.tar.gz </span>
</li>
<li class="alt">
<span>tar -zxvf pre-zabbix-6.0.0alpha1-f8219dcac2.tar.gz </span>
</li>
</ol>
<p class="maodian"></p><h3>
编译安装zabbix6.0alpha1</h3>
<p>
进入Zabbix目录</p>
<ol class="dp-sql">
<li class="alt">
<span><span>cd /tmp/zabbix-6.0.0alpha1 </span></span>
</li>
</ol>
<p>
创建zabbix用户及zabbix用户组</p>
<ol class="dp-sql">
<li class="alt">
<span><span>groupadd </span><span class="comment">--system zabbix</span><span> </span></span>
</li>
<li>
<span>useradd <span class="comment">--system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix</span><span> </span></span>
</li>
</ol>
<p>
编译zabbix,启用snmp、server、agent功能</p>
<ol class="dp-sql">
<li class="alt">
<span><span>mkdir /opt/zabbix </span></span>
</li>
<li>
<span>./configure <span class="comment">--prefix=/opt/zabbix/ --enable-server --enable-agent --with-net-snmp --with-mysql</span><span> </span></span>
</li>
</ol>
<p>
出现下图的问题即为gcc环境未装</p>
<p>
解决办法为:</p>
<ol class="dp-sql">
<li class="alt">
<span><span>yum -y install gcc-c++ </span></span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/581341f0234dafd31fb06dc544902309.jpg">
</center>
<p>
出现下图的问题即为mysql的库未装,自带库的mysql版本为5.6,这里需要装mysql8.0</p>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/2dcf6f9f427140346e1069a914ce1f97.jpg">
</center>
<ol class="dp-sql">
<li class="alt">
<span><span>yum install https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm -y </span></span>
</li>
</ol>
<p>
安装mysql开发库</p>
<ol class="dp-sql">
<li class="alt">
<span><span>yum -y install mysql-devel </span></span>
</li>
</ol>
<p>
出现下面问题,net-snmp库未安装</p>
<ol class="dp-sql">
<li class="alt">
<span><span>yum -y install net-snmp-devel </span></span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/463decb3c3fb37e7cd1802144e4e6c9e.jpg">
</center>
<p>
出现下图问题,属于libevent库未安装</p>
<ol class="dp-sql">
<li class="alt">
<span><span>yum -y install libevent-devel </span></span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/75df468e1b2fd869dfc1428d5f69a7e4.jpg">
</center>
<p>
出现下图,编译就完成了。</p>
<p>
紧接着make install 即可</p>
<ol class="dp-sql">
<li class="alt">
<span><span>make install </span></span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/8818f9895403ff519f5e0292886d37d6.jpg">
</center>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/b2d37d90a79cdc5d592b6b188e2f8a19.jpg">
</center>
<p>
安装完成</p>
<p class="maodian"></p><h3>
LAMP环境部署</h3>
<p>
环境要求</p>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/695dc247bbb8f9f11925e89e8d08fffe.jpg">
</center>
<p>
数据库要求</p>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/ec539ae3b397fc7ddbf628725050d728.jpg">
</center>
<p>
http和php要求</p>
<p>
由于CentOS7自带PHP版本为5.6,所以需要安装额外的库,也是remi的库。</p>
<ol class="dp-sql">
<li class="alt">
<span><span>yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm -y </span></span>
</li>
<li>
<span>yum install yum-utils -y </span>
</li>
<li class="alt">
<span>yum-config-manager <span class="comment">--disable 'remi-php*'</span><span> </span></span>
</li>
<li>
<span>yum-config-manager <span class="comment">--enable remi-php74</span><span> </span></span>
</li>
</ol>
<p class="maodian"></p><h3>
安装php</h3>
<ol class="dp-sql">
<li class="alt">
<span><span>yum -y install php </span></span>
</li>
</ol>
<p>
移动前端文件至web服务的根目录并授权</p>
<ol class="dp-sql">
<li class="alt">
<span><span>cp /tmp/zabbix-6.0.0alpha1/ui/* /var/www/html/ -R </span></span>
</li>
<li>
<span>chown apache:apache /var/www/html -R </span>
</li>
</ol>
<p>
启动服务并访问前端</p>
<ol class="dp-sql">
<li class="alt">
<span><span>systemctl start httpd && systemctl enable httpd </span></span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/e4ba0d042ee9dd037a4358cbaceaaaa5.jpg">
</center>
<p>
正常访问</p>
<p>
解决前端PHP错误的问题(如下图)</p>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/7d0273262b081fab70e7a667f1bd286e.jpg">
</center>
<ol class="dp-sql">
<li class="alt">
<span><span>yum -y install php-bcmath php-gd php-xml php-mbstring php-mysqlnd php-ldap </span></span>
</li>
<li>
<span>vim /etc/php.ini </span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/39476d67556dacc14fc0b42c4d44794b.jpg">
</center>
<p>
修改post_max_size为16M</p>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/9f82552c403becfb0502c38fde10aa0a.jpg">
</center>
<p>
修改max_execution_time为300</p>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/a9662c87c98c9113790673d9bd5c4213.jpg">
</center>
<p>
修改max_input_time为300</p>
<p>
修改完成后重启web服务</p>
<ol class="dp-sql">
<li class="alt">
<span><span>service httpd restart </span></span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/7037f88ac34fc9f856911dcede022f67.jpg">
</center>
<p class="maodian"></p><h3>
正常</h3>
<p class="maodian"></p><h3>
数据库部分</h3>
<p>
安装数据库</p>
<ol class="dp-sql">
<li class="alt">
<span><span>yum-config-manager </span><span class="comment">--enable mysql80-community</span><span> </span></span>
</li>
<li>
<span>yum install mysql-community-server -y </span>
</li>
</ol>
<p>
启动数据库</p>
<ol class="dp-sql">
<li class="alt">
<span><span>systemctl start mysqld && systemctl enable mysqld </span></span>
</li>
</ol>
<p>
查看mysql初始化密码</p>
<ol class="dp-sql">
<li class="alt">
<span><span>grep </span><span class="string">'temporary password'</span><span> /var/log/mysqld.log </span></span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/67784fe95d316c25dd57131052361c53.jpg">
</center>
<p>
初始化数据库</p>
<p>
这里需要注意的是密码要求,3种元素</p>
<ol class="dp-sql">
<li class="alt">
<span><span>mysql_secure_installation </span></span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/f8390a730f276dfa19486a30005e737d.jpg">
</center>
<p>
修改密码</p>
<p>
创建数据库</p>
<ol class="dp-sql">
<li class="alt">
<span><span class="keyword">create</span><span> </span><span class="keyword">database</span><span> zabbix </span><span class="keyword">character</span><span> </span><span class="keyword">set</span><span> utf8 </span><span class="keyword">collate</span><span> utf8_bin; </span></span>
</li>
<li>
<span><span class="keyword">create</span><span> </span><span class="func">user</span><span> zabbix@localhost identified </span><span class="keyword">by</span><span> </span><span class="string">'Huawei@123'</span><span>; </span></span>
</li>
<li class="alt">
<span><span class="keyword">grant</span><span> </span><span class="op">all</span><span> </span><span class="keyword">privileges</span><span> </span><span class="keyword">on</span><span> zabbix.* </span><span class="keyword">to</span><span> zabbix@localhost; </span></span>
</li>
<li>
<span>quit; </span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/a5662c5c1febada2073c7f005574d6fb.jpg">
</center>
<p>
导入数据库架构及数据</p>
<ol class="dp-sql">
<li class="alt">
<span><span>mysql -uzabbix -pHuawei@123 zabbix < /tmp/zabbix-6.0.0alpha1/</span><span class="keyword">database</span><span>/mysql/</span><span class="keyword">schema</span><span>.sql </span></span>
</li>
<li>
<span>mysql -uzabbix -pHuawei@123 zabbix < /tmp/zabbix-6.0.0alpha1/<span class="keyword">database</span><span>/mysql/images.sql </span></span>
</li>
<li class="alt">
<span>mysql -uzabbix -pHuawei@123 zabbix < /tmp/zabbix-6.0.0alpha1/<span class="keyword">database</span><span>/mysql/data.sql </span></span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/564908db192c06b27d96197f6a57df6b.jpg">
</center>
<p class="maodian"></p><h3>
前端配置连接数据库</h3>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/c51ce416960be6d375c22cdbf7088ed4.jpg">
</center>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/2fbae2055f86fc211f526fe8bd343ae5.jpg">
</center>
<p>
正常进入界面</p>
<p class="maodian"></p><h3>
配置Zabbix Server配置文件</h3>
<p>
文件目录在</p>
<p>
/opt/zabbix/etc/zabbix_server.conf,修改数据库密码</p>
<ol class="dp-sql">
<li class="alt">
<span><span>vim /opt/zabbix/etc/zabbix_server.conf </span></span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/c8b043c407754f6deae40bbbf467a2ff.jpg">
</center>
<p class="maodian"></p><h3>
启动Zabbix server、Zabbix agent</h3>
<ol class="dp-sql">
<li class="alt">
<span><span>cd /opt/zabbix/sbin/ </span></span>
</li>
<li>
<span>./zabbix_server </span>
</li>
<li class="alt">
<span>./zabbix_agentd </span>
</li>
</ol>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/ab8d311f0bc4d4ed5c38c5546f0428bb.jpg">
</center>
<center>
<img style="max-width:100%!important;height:auto!important;"title="CentOS7源码编译安装Zabbix 6.0alpha1" alt="CentOS7源码编译安装Zabbix 6.0alpha1" src="https://zhuji.jb51.net/uploads/img/202305/68e7d1f29efc4f3f707ad9b061f638c5.jpg">
</center>
<p class="maodian"></p><h2>
附录</h2>
<p class="maodian"></p><h3>
zabbix-agent.service守护文件</h3>
<p>
vim /usr/lib/systemd/system/zabbix-agent.service</p>
<ol class="dp-sql">
<li class="alt">
<span><span> </span></span>
</li>
<li>
<span>Description=Zabbix Agent </span>
</li>
<li class="alt">
<span><span class="keyword">After</span><span>=syslog.target </span></span>
</li>
<li>
<span><span class="keyword">After</span><span>=network.target </span></span>
</li>
<li class="alt">
<span> </span>
</li>
<li>
<span>Environment=<span class="string">"CONFFILE=/opt/zabbix/etc/zabbix_agentd.conf"</span><span> </span></span>
</li>
<li class="alt">
<span>EnvironmentFile=-/etc/sysconfig/zabbix-agent </span>
</li>
<li>
<span>Type=forking </span>
</li>
<li class="alt">
<span>Restart=<span class="keyword">on</span><span>-failure </span></span>
</li>
<li>
<span>PIDFile=/tmp/zabbix_agentd.pid </span>
</li>
<li class="alt">
<span>KillMode=control-<span class="keyword">group</span><span> </span></span>
</li>
<li>
<span>ExecStart=/opt/zabbix/sbin/zabbix_agentd -c $CONFFILE </span>
</li>
<li class="alt">
<span>ExecStop=/bin/kill -SIGTERM $MAINPID </span>
</li>
<li>
<span>RestartSec=10s </span>
</li>
<li class="alt">
<span><span class="func">User</span><span>=zabbix </span></span>
</li>
<li>
<span><span class="keyword">Group</span><span>=zabbix </span></span>
</li>
<li class="alt">
<span> </span>
</li>
<li>
<span>WantedBy=multi-<span class="func">user</span><span>.target </span></span>
</li>
</ol>
<p class="maodian"></p><h3>
zabbix-server.service守护文件</h3>
<p>
vim /usr/lib/systemd/system/zabbix-server.service</p>
<ol class="dp-sql">
<li class="alt">
<span><span> </span></span>
</li>
<li>
<span>Description=Zabbix Server </span>
</li>
<li class="alt">
<span><span class="keyword">After</span><span>=syslog.target </span></span>
</li>
<li>
<span><span class="keyword">After</span><span>=network.target </span></span>
</li>
<li class="alt">
<span><span class="keyword">After</span><span>=mysql.service </span></span>
</li>
<li>
<span><span class="keyword">After</span><span>=mysqld.service </span></span>
</li>
<li class="alt">
<span><span class="keyword">After</span><span>=mariadb.service </span></span>
</li>
<li>
<span><span class="keyword">After</span><span>=postgresql.service </span></span>
</li>
<li class="alt">
<span><span class="keyword">After</span><span>=pgbouncer.service </span></span>
</li>
<li>
<span><span class="keyword">After</span><span>=postgresql-9.4.service </span></span>
</li>
<li class="alt">
<span><span class="keyword">After</span><span>=postgresql-9.5.service </span></span>
</li>
<li>
<span><span class="keyword">After</span><span>=postgresql-9.6.service </span></span>
</li>
<li class="alt">
<span><span class="keyword">After</span><span>=postgresql-10.service </span></span>
</li>
<li>
<span><span class="keyword">After</span><span>=postgresql-11.service </span></span>
</li>
<li class="alt">
<span><span class="keyword">After</span><span>=postgresql-12.service </span></span>
</li>
<li>
<span> </span>
</li>
<li class="alt">
<span>Environment=<span class="string">"CONFFILE=/opt/zabbix/etc/zabbix_server.conf"</span><span> </span></span>
</li>
<li>
<span>EnvironmentFile=-/etc/sysconfig/zabbix-server </span>
</li>
<li class="alt">
<span>Type=forking </span>
</li>
<li>
<span>Restart=<span class="keyword">on</span><span>-failure </span></span>
</li>
<li class="alt">
<span>PIDFile=/tmp/zabbix_server.pid </span>
</li>
<li>
<span>KillMode=control-<span class="keyword">group</span><span> </span></span>
</li>
<li class="alt">
<span>ExecStart=/opt/zabbix/sbin/zabbix_server -c $CONFFILE </span>
</li>
<li>
<span>ExecStop=/bin/kill -SIGTERM $MAINPID </span>
</li>
<li class="alt">
<span>RestartSec=10s </span>
</li>
<li>
<span>TimeoutSec=0 </span>
</li>
<li class="alt">
<span><span class="func">User</span><span>=zabbix </span></span>
</li>
<li>
<span><span class="keyword">Group</span><span>=zabbix </span></span>
</li>
<li class="alt">
<span> </span>
</li>
<li>
<span> </span>
</li>
<li class="alt">
<span>WantedBy=multi-<span class="func">user</span><span>.target </span></span>
</li>
</ol>
<p class="maodian"></p><h3>
写在最后</h3>
<p>
整个编译下来其实就是对环境熟悉的过程,当然在CentOS 7安装6.0还是存在一定的小问题,建议大家还是用官方推荐的CentOS8系列的系统,编译过程虽然麻烦,但是仔细研究透了也就那么回事,大家在用其他的开源软件的时候就不会觉得陌生了,毕竟不是所有的软件都能像zabbix这样提供软件包安装。</p>
<p>
原文链接:https://www.toutiao.com/i6994009639968965152/</p>
頁:
[1]