Zabbix2.4 升级到3.0


软件


升级前


升级后


Php


5.3.3


5.6.6 (要求>5.4)


Apache


2.2.15


2.2.15(不变)


Mysql


5.1.73


5.1.73(不变)


CentOS


CentOS 6.3 x86_64


CentOS 6.3 x86_64(不变)


Zabbix


2.4.4


3.0.4

前提:

zabbix2.4.4 正在运行中。 已有apache+mysql+php环境。

Centos6.3 yum安装的php是5.3 版本,故接下来采用编译的方式安装php5.6.6

Apache和mysql无需升级。

在同一台服务器上升级,升级期间的数据会丢失。

1.1 编译php

1.1.1 安装一些基础软件包

yum -y install bzip2-devel libxml2-devel libxml2 httpd-devel icu libicu libicu-devellibpng* gcc make gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel

1.1.2 编译freetype

tar zxvf freetype-2.5.5.tar.gz

./configure --prefix=/usr/local/freetype

make && make install

1.1.3 编译jpeg

tar zxvf jpegsrc.v8b.tar.gz

cd jpeg

cd jpeg-8b/

./configure --prefix=/usr/local/jpeg --enable-shared

make && make install

1.1.4 编译zlib

tar zxvf zlib-1.2.8.tar.gz

cd zlib-1.2.8

./configure

make && make install

1.1.5 编译libpng

tar zxvf libpng-1.5.9.tar.gz

cd libpng-1.5.9

--prefix=/usr/local/libpng

./configure --prefix=/usr/local/libpng

make

make install

1.1.6 编译libgd

tar xvf libgd-2.2.2.tar

cd libgd-2.2.2

./configure --prefix=/usr/local/gd2

make && make install

1.1.7 编译php:

tar jxvf php-5.6.6.tar.bz2

cd php-5.6.6

./configure --prefix=/usr/local/php --with-config-file-path=/etc/ --with-apxs2=/usr/sbin/apxs --with-bz2 --with-curl  --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/local/libpng --with-freetype-dir=/usr/local/freetype --with-libxml-dir=/usr/local --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --with-gettext --with-zlib-dir=/usr/local/zlib --with-gd=/usr/local/gd2  --with-xpm-dir=/usr/lib64/ --enable-sockets --disable-ipv6 --enable-gd-native-ttf --enable-mbstring --enable-bcmath --enable-calendar --enable-dom --enable-xml --enable-fpm

make && make install

1.1.8 拷贝php执行文件

mv /usr/bin/php /usr/bin/php.bak

ln -s /usr/local/php/bin/php /usr/bin/php

1.1.9 查看版本

php -v

1.1.10 修改php.ini

always_populate_raw_post_data = On 改为

always_populate_raw_post_data = -1

1.2 Zabbix3.0

1.2.1 编译zabbix3.0

tar zxvf zabbix-3.0.4.tar.gz

./configure --prefix=/etc/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2

make install

1.2.2 配置zabbix

cd /var/www/html/

mv zabbix zabbix.bak

cp -r /root/zabbix-3.0.4/frontends/php zabbix

chown -R apache.apache zabbix

1.2.3 上传中文字体

上传字体(楷体常规)到/var/www/html/zabbix/fonts/

sed -i ‘s/DejaVuSans/simkai/g‘ /var/www/html/zabbix/include/defines.inc.php

完成后看到如下:

//define(‘ZBX_FONT_NAME‘, ‘DejaVuSans‘);

define(‘ZBX_FONT_NAME‘, ‘ simkai‘);

//define(‘ZBX_GRAPH_FONT_NAME‘, ‘DejaVuSans‘); // font file name

define(‘ZBX_GRAPH_FONT_NAME‘, ‘simkai‘); // font file name

1.3 mysql

注:grant localhost 权限,但zabbix无法读取到数据库zabbix,后来改成ip,可以正常连接访问。

虽然我使用了mysqldump备份。但因为我的mysql是单机,dump的时候,锁库,导致数据也无法写入。而且dump之后的sql文件source恢复非常慢。(花了2,3个小时,才source了2,3G 数据。 线上mysql data总共15G左右。)不过还好zabbix能自动升级数据库,只是丢了小部分时间的监控数据,影响不大。

1.3.1 mysql权限修改

mysql -p

grant all privileges on zabbix.* to [email protected] identified by ‘zabbix‘;

flush privileges;

1.3.2 修改zabbix.conf.php

vim /var/www/html/zabbix/conf/zabbix.conf.php

$DB[‘SERVER‘]   由localhost改为服务器ip

$DB[‘PASSWORD‘] 由空改为你的密码

1.4 Apache

重启apache

Service httpd restart

1.5 启动zabbix3.0.4

mv /usr/sbin/zabbix_server /usr/sbin/zabbix_server.bak(2.4版本备份,或者删除)

ln -s /root/zabbix-3.0.4/src/zabbix_server/zabbix_server /usr/sbin/zabbix_server

zabbix_server               //启动zabbix

1.5.1 启动并查看进程

通过

1.5.2 通过日志查看数据库正常升级

[[email protected] conf]# tail -f /tmp/zabbix_server.log

1.6 配置zabbix开机自启动

cp /root/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix_server

ln -s /usr/sbin/zabbix_server /usr/local/sbin/zabbix_server

service zabbix_server start

chkconfig --add zabbix_server

chkconfig --level 345 zabbix_server on

chkconfig --list zabbix_server

1.7 完成界面

以上是踩坑之后整理的,一些步骤已经成功避过坑了。接下来记录一下踩过的坑。

2 报错

2.1 安装libpng报错:

报错:

pngfix.c:2151: undefined reference to `inflateReset2‘

解决:

开始安装libpng1.6.6 ,版本之间不匹配,于是更换了版本 /libpng-1.5.9。问题解决。

参考链接:

http://stackoverflow.com/questions/19738464/pngfix-c2151-undefined-reference-to-inflatereset2

报错:

configure: error: Problem with libpng.(a|so) or libz.(a|so). Please check config.log for more information.

解决:

重新编译zlib

报错:

ext/gd/gd.c:1330: undefined reference to `XpmLibraryVersion‘

问题说明:没有找到xpm库的安装位置

解决方法

1.rpm -ql libXpm :查询出libXpm的安装位置,发现在/usr/lib64/ 下

2.重新编译php,./configure中增加 --with-xpm-dir=/usr/lib64/

3.make && make install 成功!

2.2 网页访问,数据库报错如下

解决方法:网上大部分都是说重新导入zabbix的 数据架构。Image.sql,schema.sql等。但这不能解决问题。 主要还是因为php编译部分参数有问题导致zabbix升级数据库失败了,于是报了这个错,正确编译php(编译参数较多),然后启动zabbix,zabbix会自动升级数据库。

11033:20160426:152119.126 current database version (mandatory/optional): 02040000/02040000

11033:20160426:152119.126 required mandatory version: 02040000

自动升级成功后,可看到日志

more /var/log/zabbix/zabbix_server.log

37106:20160923:102819.654 using configuration file: /etc/zabbix/etc/zabbix_server.conf

37106:20160923:102819.657 current database version (mandatory/optional): 03000000/03000000

37106:20160923:102819.657 required mandatory version: 03000000

2.3 Php编译少了png支持

通过写文件index.php 查看php是否支持

通过访问网页查看

http://192.168.2.68/index.php

查看gd不支持png。

解决方法: 编译参数不对。

原编译参数:

./configure --prefix=/usr/local/php --with-config-file-path=/etc/ --with-apxs2=/usr/sbin/apxs --with-bz2 --with-curl --with-libdir=lib64 --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --with-libxml-dir=/usr/local --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --with-gettext --with-zlib --with-gd --enable-sockets --disable-ipv6 --enable-gd-native-ttf--enable-mbstring --enable-bcmath --enable-calendar --enable-dom --enable-xml --enable-fpm

后把freetype、libpng、gd等重新编译

改为:

./configure --prefix=/usr/local/php --with-config-file-path=/etc/ --with-apxs2=/usr/sbin/apxs --with-bz2 --with-curl  --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/local/libpng --with-freetype-dir=/usr/local/freetype --with-libxml-dir=/usr/local --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --with-gettext --with-zlib-dir=/usr/local/zlib --with-gd=/usr/local/gd2  --with-xpm-dir=/usr/lib64/ --enable-sockets --disable-ipv6 --enable-gd-native-ttf --enable-mbstring --enable-bcmath --enable-calendar --enable-dom --enable-xml --enable-fpm

注:红色部分有改变。

重新编译,再次访问index.php:

可以看到gd支持更多。

2.4 启动zabbix日志报错

报错:无法连接上数据库:

解决方法:

1. 给数据库权限,

2. 并修改 zabbix.conf.php文件。

vim /var/www/html/zabbix/conf/zabbix.conf.php

$DB[‘SERVER‘]

$DB[‘PASSWORD‘]

时间: 2024-10-15 11:45:02

Zabbix2.4 升级到3.0的相关文章

zabbix2.2升级到3.0.4

需求:zabbix2.2升级到3.0.4 备注:zabbix 2.5之后对php有严格要求,php版本必须大于php5.4 php升级可以覆盖安装,也可以多处安装再选择,此处选择后者. 安装php5.6.24 yum install -y libxml2 libxml2-devel \ openssl openssl-devel \ curl* libcurl* \ libvpx* libjpeg* \ libpng libpng-devel \ freetype* t1lib* \ zlib

zabbix2.2升级到zabbix3.0.2

1.操作系统环境 [[email protected] ~]# cat /etc/issue CentOS release 6.4 (Final) Kernel \r on an \m [[email protected] ~]# uname -r 2.6.32-358.el6.x86_64 [[email protected] ~]# uname -m x86_64 备份备份.. [[email protected] ~]# cp -a /usr/share/zabbix /tmp/zabbi

Ubuntu 16.04升级4.7.0内核后导致Compiz奔溃,问题:compiz[4852]: segfault at 48 ip 00007f88cae087f0 sp 00007ffce354c268 error 4 in libscale.so

由于硬件的驱动支持问题,升级4.7.0的内核主要是为了能使用Intel HD Graphics 630驱动,但是也出现了相关问题,比如Compiz的特效导致桌面上如果有多个相同程序启动,然后再次点击时就会出现闪烁和崩溃问题.查找日志如下: compiz[4852]: segfault at 48 ip 00007f88cae087f0 sp 00007ffce354c268 error 4 in libscale.so[7f5ce70cb000+24000] 解决方法: 这些方法只能尝试,不一定

CMS .NET 程序框架 从2.0/3.5升级到4.0 版本后 需要调整的地方

问题一: document.forms1.action 不可使用 需要修改程 document.forms[0] .NET 程序框架 从2.0/3.5升级到4.0 版本后,document.forms1  不可使用 也就是说所有浏览器都是支持document.forms["form1"]这样的写法的. 微软4.0之前是document.form1也能获取, 升级到4.0之后 取值方式为document.forms["form1"] 或者document.forms[

就地升级WSUS 3.0 SP2 ON windows server 2008 R2 ENT 到windows server 2012 R2 S

目标: Windows server 2008 r2 系统standard 版本不支持数据重删除,而wsus所在盘想启用dedup ,虽然网上说大概只有17%的去重率,但是如果占用空间在240GB,17%的去重率还是节省不少空间的. Inplace 升级wsus 3.0 sp2 到wsus 6是不支持的,官方的步骤是安装另外一台wsus服务器,然后迁移数据库.组.WSUS下载的文件,更改wsus的Identifier,再更改客户端WSUS Server指向. 因为之前的WSUS还有其他服务,比如

vsphere5.5升级到6.0操作手册

1 通过USB启动盘升级 使用USB升级好处就是可以跨大版本升级,比如从5.0/5.1/5.5升级到6.0. 1) 首先你需要制作一个ESXi-6.0.0-2494585的USB启动盘(制作方法请参考在我的文库里找,这里不再讲解) 2) 修改BIOS启动顺序,让它从USB启动(在此之前请将该主机上的虚拟机都迁移到其他主机或关机,然后重启ESXI主机) 3) 开始升级,选择"upgrade ESXi, Preserve VMFS datastore" 2 通过Esxcli命令升级 通过S

gradle2.0笔记——让项目升级到gradle2.0

昨晚看到QQ群消息说gradle2.0发布了,今天去看了一下,确实是昨天发布的,为rc版本:Gradle 2.0-rc-2.于是决定试一下. gradle可以在官网上下载,地址如下:http://www.gradle.org/release-candidate.不过由于我许多项目因为兼容性问题目前暂时用不了gradle2.0,所以现在只能对我个别私人项目使用.如果你想让所有项目都用gradle2.0的话,可以下载gradle2.0然后解压,修改对应的环境变量指向到gradle2.0的目录.然后项

ADT for Eclipse无法升级到23.0的解决方法

最近一次的升级,ADT无法从ADT 22.X升级到23.0.2版本 需要重新卸载,然后重新安装即可 卸载方法: Help->Install new software->点击 页面右下角部分的: already installed ->选择要下载插件(ADT,一般都是以Android开头的)的即可 这应该是Google没有考虑兼容的问题,导致升级出错. 当然,你还可以重新下个Eclipse,然后重新安装ADT for Eclipse ADT for Eclipse无法升级到23.0的解决方

gitlab(7.9)升级到8.0.1

1.gitlab8.0更新说明 GitLab 8.0 现在完全集成了持续集成工具 (GitLab CI) ,此外还完全重写了 UI,节省了至少 50% 的磁盘空间.更快的合并,内置持续集成(CI)到 GitLab 本身,提高了界面和导航,以及“通过电子邮件回复”功能,它可以使用户通过移动设备就能够对某个问题上迅速发表评论,或者合并请求. GitLab 8.0 主要改进:更好的 HTTP 支持邮件快速回复Gmail 快速打开改善文件上传功能改进 MattermostWeb hooks 的 SSL