2013年3月10日日曜日

Zabbixオフィシャルリポジトリを公開しました

ZabbixオフィシャルRPM/Debリポジトリを公開しました。

以前の記事で事前公開していたものと全く同じ構成で、正式にGPG署名されたものを公開しています。

正式公開にあたってyumやaptによるインストールとアップデートができるようになっていますので、ここではリポジトリの登録方法を紹介します。正式なドキュメントの方もあわせてご参考ください。

RHEL、CentOS用yumリポジトリの登録方法

RHEL、CentOSのバージョンによって以下のようにリポジトリ登録用RPMをインストールしてください。

  • RHEL5/CentOS5
  • # rpm -ivh http://repo.zabbix.com/zabbix/2.0/rhel/5/x86_64/zabbix-release-2.0-1.el5.noarch.rpm
  • RHEL6/CentOS6
  • # rpm -ivh http://repo.zabbix.com/zabbix/2.0/rhel/6/x86_64/zabbix-release-2.0-1.el6.noarch.rpm

上記パッケージのインストールが完了したら、yumリポジトリを利用できるようになっていますので、以下のコマンドでZabbixサーバーとエージェントをインストールできます。

# yum install zabbix-agent zabbix-server-mysql zabbix-web-mysql zabbix-web-japanese

日本語環境で利用する場合はzabbix-web-japaneseパッケージをインストールしてください。このパッケージをインストールしない場合はグラフで日本語が正しく表示されません。依存関係で必要なものはすべて自動解決されてインストールされます。Zabbixサーバーの動作に必要なfping、iksemel、libssh2パッケージなどもオフィシャルリポジトリで用意していますので、epelなど他のリポジトリを追加で登録する必要はありません。

zabbix_getコマンドとzabbix_senderコマンドは別パッケージに別れていますので、必要に応じてzabbix-getパッケージとzabbix-senderパッケージを指定してインストールしてください。

以降のインストール手順は事前公開の記事の「データベースの設定と初期データのインポート」以降と同様です。

Debian、Ubuntu用aptリポジトリの登録方法

ZabbixオフィシャルリポジトリではDebian 6、Ubuntu 10.04 LTS向けのdebパッケージとリポジトリも公開しています。Ubuntu 12.04 LTS向けのパッケージは現在準備中です。OSによって以下のコマンドでリポジトリ登録用debパッケージをインストールしてください。

  • Debian 6
  • # wget http://repo.zabbix.com/zabbix/2.0/debian/pool/main/z/zabbix-release/zabbix-release_2.0-1squeeze_all.deb
    # dpkg -i zabbix-release_2.0-1squeeze_all.deb
    # apt-get update
  • Ubuntu 10.04 LTS
  • # wget http://repo.zabbix.com/zabbix/2.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_2.0-1lucid_all.deb
    # dpkg -i zabbix-release_2.0-1lucid_all.deb
    # apt-get update

DebianやUbuntuの場合、dbconfigの機能によって自動的にデータベースの作成と初期DBのインポートが行われるようになっているのですが、MySQLの場合データベースのエンコードがlatin1のままになってしまいます(dbconfig側の設定で指定できないためです。PostgreSQLの場合は問題ありませんし、Debian 7もしくはUbuntu 12.04では修正されると思われます)。そのため先にMySQLデータベースのインストールとデフォルトエンコードの設定を行った上でZabbixのパッケージをインストールする必要があります。

以下のコマンドでMySQLサーバーをインストールします。インストール途中にMySQLのrootアカウントのパスワードを聞かれますので設定しておいてください。

# apt-get install mysql-server

/etc/mysql/my.cnfの設定を変更し、デフォルトのキャラクタセットを指定します。

[mysqld]
...

character-set-server=utf8
innodb_file_per_table
innodb_buffer_pool_size=512M # 搭載メモリによって適切な値を設定
innodb_log_file_size=64M  # innodb_buffer_pool_sizeを増やしたらこちらも増やしておく

...
[mysqld_safe]

設定を反映させるためにMySQLを再起動します。

# /etc/init.d/mysql restart

また、日本語環境で利用するためにグラフ用のフォントを先にインストールしておきます。おすすめはvlgothicフォントまたはIPAフォントです。

# apt-get install ttf-vlgothic
または
# apt-get install otf-ipafont-gothic

ここまで設定したらZabbixのパッケージをインストールします。DebianやUbuntuでは日本語ゴシックフォントがインストールされていれば、自動的にそのフォントを利用するようになっています。途中でdbconfigを利用する選択を行うと、MySQLのrootアカウントのパスワードとZabbixの初期DB接続用のパスワードが聞かれますので入力してください。dbconfigがZabbixの初期DB作成とDB接続用の設定を行ってくれます。

# apt-get install zabbix-agent zabbix-server-mysql zabbix-frontend-php

以降のインストール手順は事前公開のときの記事の「Webインターフェースの設定」以降と同様です。

今後のZABBIX-JP配布のRPMパッケージについて

ZabbixからオフィシャルのRPM/Debパッケージが正式公開されましたので、今後はZABBIX-JPではRPMパッケージの作成は行いません。ZABBIX-JPではオフィシャルリポジトリの公開を待っていたためZabbix 2.0のパッケージは作成していませんでした。Zabbix 1.8はすでに古いですし、2.0で解決されている根本的な問題がいくつかあります。

また、Zabbix 1.8からZabbix 2.0のアップグレードは履歴データのテーブルの変換をともなうため、1.6->1.8や2.0->2.2のアップグレードと比較すると時間がかかります。監視を無停止でアップグレードする方法もあるのですが、通常は履歴データの量に応じて数十分から数時間程度かかると考たほうが良いです。そういったことも含め、今後Zabbixをインストールされる場合はオフィシャルのZabbix 2.0パッケージをインストールすることをお勧めします。