ksaitoの日記

日々試したことの覚え書き

Zabbix 2.0 へのアップグレード

Zabbix 1.8のデータベースを15時間かけてマイグレーションしましたが、ディスク空き容量などの問題もあり、古いデータベースを残して新規にインストールすることにしました。

旧データベースの参照用アプリケーション準備

他のマシンにZabbix 1.8のWebアプリケーションをインストールして/usr/share/zabbix/conf/zabbix.conf.phpの下記にlocalhostではなくMySQLのサーバを設定して参照できるようにします。

$DB["SERVER"]    = "localhost";

旧データベース参照用のサーバからアクセスできるようにMySQLに下記のような権限を付与します。

grant all privileges on zabbix2.* to zabbix2@'サーバ名' identified by 'zabbixpass';

下記のように該当サーバからアクセスできることを確認します。

$ mysql -h [MySQLサーバ] -u zabbix2 -p zabbix2

1.8から2.0にバージョンアップ

今回は、RedHat EL5のRPMパッケージからテスト版のRPMを使います。
使っていたのは以下です。

$ sudo yum list | grep zabbix | grep installed
zabbix.i386                            1.8.14-1.el5.JP        installed
zabbix-agent.i386                      1.8.14-1.el5.JP        installed
zabbix-jp-release.noarch               5-5                    installed
zabbix-server.i386                     1.8.14-1.el5.JP        installed
zabbix-server-mysql.i386               1.8.14-1.el5.JP        installed
zabbix-web.i386                        1.8.14-1.el5.JP        installed
zabbix-web-mysql.i386                  1.8.14-1.el5.JP        installed

アップグレードの手順は、kodaiさんのブログです。
http://kodai74.blogspot.jp/2012/05/zabbix-siarpm.html
使ったのは若干新しい2.0.1-2です。

$ wget http://www.kodai74.net/packages/non-supported/rhel/5/i386/fping-2.4b2-16.el5.i386.rpm
$ wget http://www.kodai74.net/packages/non-supported/rhel/5/i386/iksemel-1.4-2.el5.i386.rpm
$ wget http://www.kodai74.net/packages/non-supported/rhel/5/i386/libssh2-1.4.0-2.el5.i386.rpm
サービスの停止
$ sudo /etc/init.d/zabbix-agent stop
Shutting down zabbix agent:                                [  OK  ]
$ sudo /etc/init.d/zabbix-server stop
Shutting down zabbix server:                               [  OK  ]
$ sudo /etc/init.d/httpd stop
httpd を停止中:                                            [  OK  ]
$
データベースの作成

新規のデータベースを作成します。

mysql> create database zabbix2 character set utf8;                                        Query OK, 1 row affected (0.00 sec)                                                       

スキーマと初期データの登録

$ mysql -u root -p zabbix2 < /usr/share/doc/zabbix-server-mysql-2.0.1/create/schema.sql
$ mysql -u root -p zabbix2 < /usr/share/doc/zabbix-server-mysql-2.0.1/create/images.sql
$ mysql -u root -p zabbix2 < /usr/share/doc/zabbix-server-mysql-2.0.1/create/data.sql
パッケージのインストール

RPMでテストしてみます。

$ sudo rpm -Uvh --test zabbix-2.0.1-2.el5.i386.rpm zabbix-agent-2.0.1-2.el5.i386.rpm zabbix-server-2.0.1-2.el5.i386.rpm zabbix-server-mysql-2.0.1-2.el5.i386.rpm zabbix-web-2.0.1-2.el5.i386.rpm zabbix-web-mysql-2.0.1-2.el5.i386.rpm zabbix-web-japanese-2.0.1-2.el5.i386.rpm
準備中...                ########################################### [100%]
$

問題ないのでインストール

$ sudo rpm -Uvh zabbix-2.0.1-2.el5.i386.rpm zabbix-agent-2.0.1-2.el5.i386.rpm zabbix-server-2.0.1-2.el5.i386.rpm zabbix-server-mysql-2.0.1-2.el5.i386.rpm zabbix-web-2.0.1-2.el5.i386.rpm zabbix-web-mysql-2.0.1-2.el5.i386.rpm zabbix-web-japanese-2.0.1-2.el5.i386.rpm
準備中...                ########################################### [100%]
   1:zabbix                 ########################################### [ 14%]
   2:zabbix-agent           警告: /etc/zabbix/zabbix_agentd.conf は /etc/zabbix/zabbix_agentd.conf.rpmnew として作成されました。
########################################### [ 29%]
   3:zabbix-web             ########################################### [ 43%]
   4:zabbix-server          警告: /etc/zabbix/zabbix_server.conf は /etc/zabbix/zabbix_server.conf.rpmnew として作成されました。
########################################### [ 57%]
   5:zabbix-server-mysql    ########################################### [ 71%]
   6:zabbix-web-mysql       ########################################### [ 86%]
   7:zabbix-web-japanese    ########################################### [100%]
警告: /etc/zabbix/zabbix_agent.conf は /etc/zabbix/zabbix_agent.conf.rpmsave として保存されました。
$

RPMは、下記でダウングレードできるようです。(これはいい機能)

# rpm -Uvh --oldpackage 元のパッケージ
エージェントのスタート
$ sudo /etc/init.d/zabbix-agent start                                             
Starting Zabbix agent:                                     [  OK  ] 
$
設定変更

PHPのtimezoneを変更します。

$ diff -u /home/ksaito/zabbix.conf.org zabbix.conf                                
--- /home/ksaito/zabbix.conf.org        2012-07-29 15:27:00.000000000 +0900                              
+++ zabbix.conf 2012-07-29 15:27:20.000000000 +0900                                                      
@@ -15,7 +15,7 @@                                                                                        
     php_value post_max_size 16M                                                                         
     php_value upload_max_filesize 2M                                                                    
     php_value max_input_time 300                                                                        
-    # php_value date.timezone Europe/Riga                                                               
+    php_value date.timezone Asia/Tokyo                                                                  
 </Directory>                 
$

Zabbix serverのデータベース設定は、/etc/zabbix/zabbix_server.confにDB、ユーザ、パスワードを新しく作ったものに変更してスタートします。

$ sudo /etc/init.d/zabbix-server start                                            
Starting Zabbix server:                                    [  OK  ]                      
Webアプリケーションの設定

管理ーインストールメニューから設定して完了です。(画面ショットとるのが手間で...)