本帖最后由 monicazhang 于 2017-8-20 10:07 编辑  
 
1.  升级介绍        Zabbix3.0更新了许多新功能、新特性、新界面等等,但是在升级前首先需要了解官方的升级注意事项[1],item changes这部分的更新内容可能会导致你的监控项失效、配置失效、数据异常等情况的发生。  
    Zabbix的升级分为4部分: Zabbix-server可执行程序升级 数据库升级 前端WEB页面升级 Zabbix-agent可执行程序升级  
  
        其中二进制的程序升级包括Server、Agent、Proxy、Sender、Get等通过升级安装包或重新编译新的可执行程序方式实现,升级后可使用新版本的程序特性及功能。  
        前端WEB页面升级通过升级安装包或整体替换WEB目录  
        数据库升级是指数据库内的数据结构升级,升级后以适用新的WEB页面和二进制程序连接交互,数据库升级这部分由Zabbix-server程序自动完成,所以在升级之前千万不要忘记做好备份。  
        通过了解Zabbix整体的升级过程我们不难发现,除数据库内的数据和zabbix程序的配置文件保留不变,其他部分的升级方式是非常灵活、方便的。使用安装包升级的过程本文不再过多介绍,阅读升级说明、提前做好备份。  
2.  编译升级安装         本文以Zabbix2.4.X在CentOS6系统中升级至Zabbix3.0.0为例,介绍如何通过编译安装升级Zabbix。  
      [  /documentation/3.0/manual/installation/upgrade]documenta ... nstallation/upgrade[/url]  
  # mysqldump -uzabbix -p zabbix |gzip -9 >/tmp/zabbix_db_backup.gz               # tar -zcvf /tmp/zabbix_conf_bakcup.tgz \                                                            /etc/zabbix/zabbix_server* \                                                                                 /etc/zabbix/zabbix_agent*\                                                                                   /etc/httpd/conf.d/zabbix.conf \                                                                              /etc/zabbix/web/*\                                                                                                 /usr/lib/zabbix/alertscripts\                                                                                    /usr/lib/zabbix/externalscripts \                                                                             /usr/share/zabbix                                                                                                
        在升级和使用Zabbix3.0之前,需要将PHP版本升至5.4.0以上,PHP5.4在CentOS6版本中可使用(webtatic、remi)等第三方源安装,或编译安装,以5.4.45为例,以下命令仅供参考。  
   # EXTENTION_DIR=/usr/lib64/php/modules./configure \                                   --build=x86_64-redhat-linux-gnu--host=x86_64-redhat-linux-gnu \                   --target=x86_64-redhat-linux-gnu--program-prefix= --prefix=/usr \                    --exec-prefix=/usr --bindir=/usr/bin--sbindir=/usr/sbin \                                      --sysconfdir=/etc --datadir=/usr/share--includedir=/usr/include\                         --libdir=/usr/lib64--libexecdir=/usr/libexec --localstatedir=/var \                          --sharedstatedir=/var/lib --mandir=/usr/share/man\                                            --infodir=/usr/share/info--cache-file=./config.cache \                                          --with-libdir=lib64--with-config-file-path=/etc \                                                    --with-config-file-scan-dir=/etc/php.d \                                                                --disable-rpath --without-pear \                                                                           --with-freetype-dir=/usr --with-png-dir=/usr--with-xpm-dir=/usr \                         --enable-gd-native-ttf --with-t1lib=/usr--with-jpeg-dir=/usr \                                --with-libxml-dir=/usr--libdir=/usr/lib64/php \                                                       --enable-mbstring=shared --with-gd=shared--enable-bcmath=shared \             --enable-ctype=shared --with-gettext=shared--enable-sockets=shared\            --enable-mysqlnd=shared--with-mysql=shared,mysqlnd \                                  --with-mysqli=shared,mysqlnd \                                                                          --with-mysql-sock=/var/lib/mysql/mysql.sock--enable-xml=shared \                   --enable-xmlreader=shared--enable-xmlwriter=shared \                                    --with-curl=shared,/usr --enable-pdo=shared--with-ldap=shared \                     --with-pdo-sqlite=shared,/usr\                                                                          
    # rpm -qa | grep zabbix | xargs rpm -e                                                               ※ 卸载之前请确保已妥当做好所有备份工作,前端WEB文件如有定制开发页面请务必备份。  
       如果系统中没有zabbix用户,请创建     # groupadd zabbix                                                                                              # useradd -g zabbix zabbix                                                                                      编译过程需要安装以下软件开发包:         gcc、mysql-devel、libxml2-devel、net-snmp-devel、libcurl-devel             如果旧版本是通过编译安装的,请保证prefix路径与之前一致,根据监控需要选择编译选项,可通过./configure--help查看选项或参考官方文档,以下命令仅供参考。  
   # ./configure --prefix=/usr/local --enable-server--enable-agent \                         --with-mysql --enable-ipv6 --with-net-snmp \                                                      --with-libcurl --with-libxml2                                                                                        配置成功后执行make install 安装     # make && make install                                                                                  
         编译安装后的目录结构对应RPM的关系如下:          配置目录    /etc/zabbix   =>  /usr/local/etc          执行程序目录  /usr/bin   =>  /usr/local/bin          守护进程目录  /usr/sbin   =>  /usr/local/sbin          脚本目录    /usr/lib/zabbix  =>  /usr/local/share/zabbix  
    按照以上对应目录还原配置,在还原zabbix_server.conf和zabbix_agent.conf时建议不要直接覆盖,新的配置文件中会有新的配置参数说明。  
     根据zabbix_server.conf中的配置检查LogFile和PidFile的目录是否存在,是否属于zabbix:zabbix  
    注意修改zabbix_server.conf和zabbix_agentd.conf中的Include目录  
    # mkdir /usr/share/zabbix                                                                                # cp -r zabbix-3.0.0/frontends/php/./usr/share/zabbix/                                    # chown -R apache:apache /usr/share/zabbix/                                            
        还原Apache配置         /etc/httpd/conf.d/zabbix.conf   
        还原前端PHP配置至后重启服务         /usr/share/zabbix/conf/zabbix.conf.php                              
3.  升级后验证          启动zabbix-server      #/usr/local/sbin/zabbix_server                                                                      
           启动zabbix-agentd       # /usr/local/sbin/zabbix_agentd                                                                      
          查看日志 
          /var/log/zabbix/zabbix_server.log          日志会记录数据库升级过程,数据库升级完成后整个升级过程全部结束。          /var/log/zabbix/zabbix_agentd.log  
原创:开源联盟 
 
 |