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パッケージをインストールすることをお勧めします。

2012年10月9日火曜日

Zabbixの日本支社、Zabbx Japanを設立しました

2012年10月1日にZabbixの日本支社、Zabbix Japanを設立し、代表に就任させて頂くことになりました。

Latvijas vēstnieks Japānā apsveic Latvijas IT uzņēmuma ienākšanu Japānā

10月3日に記者会見を行い、Zabbix CEOのAlexei、私から支社設立の詳細の説明、ZabbixのパートナーであるNTTコムテクノロジー様、在日ラトビア大使のPeteris Vaivars様から賛同の言葉をいただきました。

記者会見ではたくさんの記者の方に集まっていただき、どうもありがとうございました。いくつかのWebサイトに記事を書いていただきました。

  • ITPro: OSS統合監視ツールZabbixが日本法人設立、サポートを強化
  • クラウドWatch: オープンソース統合監視ソフトを開発するZabbixが日本支社を設立
  • 朝日新聞デジタル: オープンソース統合監視ソフトを開発するZabbix社が日本支社を設立〈BCN〉
  • @IT: Zabbix、Chef……OSSのインフラ運用支援ツールが日本のビジネス強化
  • 設立の経緯や目的などは上記記事を見て頂ければと思います。また、10月10日(水)〜12日(金)に開催されるITPro EXPO 2012でもブース展示とセミナーを行います。より詳細を聞かれたい方はぜひブースにお越し頂ければと思います。(セミナーでもZabbix Japanについて説明予定です。申し訳ないのですが現時点でセミナーは満員御礼とのことでした。)

    日本を離れたのが昨年の4月、ちょうど1年半ほどラトビアで生活をしてきたわけですが、Zabbix SIAのとても優秀なエンジニアやセールス/マーケティングの人たちと一緒に仕事ができ、自分自身もかなりスキルアップできたように思います。初海外生活ということもあって、毎日が新しいことだらけでエキサイティングな日々でした。

    ラトビアはとても住みやすかったこともあって、後ろ髪引かれる思いで日本に帰ってきたのですが、今後は日本国内、日本時間で活動ができるようになります。インターネットがあれば日本国内のニュースを見たり、Twitter/Facebookでの連絡は簡単ですが、勉強会に参加したりユーザーさんと直接話ができないのは寂しいところがありました。

    今後は同じタイムゾーンで技術サポートやコミュニティ活動ができるだけでなく、オフィシャルサービスの質と内容をより向上させるために、パートナー企業様とも連携して尽力して行きたいと考えています。

    Zabbix Japanの営業開始は10月16日(火)です。弊社連絡先はプレスリリースを参照ください。また、設立とあわせて協賛いただけるパートナー様と一緒に「Zabbixサポート10%割引キャンペーン」も実施しますので、こちらもぜひご利用ください。

    ラトビアの生活についてはまた後日、別エントリを書こうと思います。

    2012年5月31日木曜日

    Zabbix SIAのオフィシャルRPMパッケージの事前公開

    2013/3/7更新: Zabbix SIAオフィシャルのRPM/Debパッケージリポジトリが公開されました。yumやaptも利用できます。今後はこちらのマニュアルを参考に2.0パッケージのインストールを行ってください。

    Zabbix SIAでは現在オフィシャルRPM/Debパッケージを公開するべく作業を進めています。

    本当は2.0のリリースにあわせてパッケージを公開できれば良かったのですが、パッケージ公開サーバの準備が遅れているため公開することができませんでした。

    とはいえある程度パッケージは完成していますし、できるだけ早めに使い始めてもらいたいということで、会社に許可を得てこのblogで先行してテスト版パッケージを公開できることになりました。

    とりあえずRHEL/CentOS向けのRPMのみですが、準備ができ次第Debianパッケージも公開しようと思います。また、テスト版と言っているのはまだGPG署名が入っていないからで、パッケージ構成や基本的な部分はリリース版と変わらないと思います。何か問題や提案があればこのblogにコメントいただくか、Twitterの@kodai74までご連絡ください。

    多言語に対応しなければいけないので、これまであったFedora, EPEL, ZABBIX-JPなどのパッケージとは構成が多少異なります。インストールは以下の方法を参考にしてください。

    RPMファイル一式のダウンロード

    こちら(Zabbix SIAからオフィシャルリポジトリが公開されました。yum/aptリポジトリを利用する方法はこちらを参照してください。)から適切なOS, アーキテクチャのものをダウンロードしてください。Zabbix関連のパッケージはzabbixディレクトリ以下に、Zabbixの動作に必要な関連パッケージはnon-supportedディレクトリ以下に置いてあります。

    Zabbixサーバ, Webインターフェース、Zabbixエージェントのインストール

    先に必要となるパッケージをインストールします。まずはOSの標準リポジトリから必要なものをインストール

    # yum install mysql-server curl net-snmp unixODBC OpenIPMI-libs httpd php php-bcmath php-gd php-mbstring php-mysql php-xml ipa-pgothic-fonts

    ※RHEL6系の場合はipa-pgothic-fontsの代わりにvlgothic-p-fontsをインストールしてください

    次に上記URLからダウンロードした以下のRPMをインストールします。

    # rpm -ivh fping-2.4b2-16xxx.rpm \
               iksemel-1.4-2.xxx.rpm \
               libssh2-1.4.0-2xxx.rpm

    最後にZabbix関連のパッケージをインストールします。下記はデータベースとしてMySQLを利用する場合です。

    # rpm -ivh zabbix-2.0.0-1.xxx.rpm \
               zabbix-agent-2.0.0-1.xxx.rpm \
               zabbix-server-2.0.0-1.xxx.rpm \
               zabbix-server-mysql-2.0.0-1.xxx.rpm \
               zabbix-web-2.0.0-1.xxx.rpm \
               zabbix-web-mysql-2.0.0-1.xxx.rpm \
               zabbix-web-japanese-2.0.0-1.xxx.rpm

    zabbix-web-japaneseパッケージがWebインターフェースの日本語フォント設定を行うようになっているので、日本語環境ではこのパッケージを入れないとグラフやマップなどで文字化けが発生します。

    インストールが完了したら、続いて初期設定を行います。

    データベースの設定と初期データのインポート

    初めてMySQLを起動する場合、起動前に/etc/my.cnfには最低限以下のチューニング設定を行っておきましょう。

    [mysqld]
    ...
    
    innodb_file_per_table
    innodb_buffer_pool_size=512M # 搭載メモリによって適切な値を設定
    innodb_log_file_size=64M  # innodb_buffer_pool_sizeを増やしたらこちらも増やしておく
    
    ...
    [mysqld_safe]

    データベースがZabbix専用であれば、同じく[mysqld]セクションに以下の設定も入れておくとMySQLサーバ全体でエンコードをUTF-8にできるのでトラブルが少なくなると思います。

    default-character-set=utf8

    MySQLを起動して、データベースの作成とユーザの作成、初期データの登録を行います。ここではデータベース名は「zabbix」、接続ユーザ名も「zabbix」、パスワードは「zabbixpass」で設定しています。

    # service mysqld start
    # mysql -uroot
    mysql> create database zabbix character set utf8;
    mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbixpass';
    mysql> exit
    # mysql -uroot zabbix < /usr/share/doc/zabbix-server-mysql-2.0.0/create/schema.sql
    # mysql -uroot zabbix < /usr/share/doc/zabbix-server-mysql-2.0.0/create/images.sql
    # mysql -uroot zabbix < /usr/share/doc/zabbix-server-mysql-2.0.0/create/data.sql

    my.cnfでdefault-character-setを設定していない場合は、データベース作成時のcharacter setの指定を忘れないようにしてください。忘れるとWebインターフェース上で一部の日本語が文字化けします。

    Zabbixサーバとエージェントの設定

    /etc/zabbix/zabbix_server.confの以下の箇所を変更します。

    DBPassword=zabbixpass

    Zabbixエージェントはデフォルト設定のままで問題ありません。ここまでできたらZabbixサーバとエージェントを起動します。

    # service zabbix-server start
    # service zabbix-agent start

    Webインターフェースの設定

    /etc/httpd/conf.d/zabbix.confのdate.timezone設定のコメントアウトを外し、以下のように設定します。

    php_value date.timezone Asia/Tokyo

    httpdを起動します。すでにhttpdが起動していた場合は、上記設定を反映させるためにhttpdを再起動してください。

    # service httpd start

    ブラウザからWebインターフェースにアクセスします。サーバのIPが192.168.1.10の場合はhttp://192.168.1.10/zabbixのように/zabbixをつけてアクセスしてください。

    インストーラが表示されるので、画面の通りに従っていけば問題なく完了するはずです。途中データベースの設定を入力する必要がありますが、ここは上記のMySQL設定の値を入力します。

    ちなみに、2.0はインストーラ画面もカッコ良くなっています。

    Webインターフェースへのログインと日本語化

    Webインストーラが完了したらログインが面が表示されますので、ユーザ名に「Admin」、パスワードに「zabbix」と入力してログインしてください。

    最初の画面は英語ですが、右上の「Profile」をクリックして、

    Language設定でJapanese(ja_JP)を選択してSaveボタンを押せば、インターフェースが日本語で表示されるようになります。

    ローカルホストの監視

    設定に問題がなければ、すでに監視が始められる状態になっています。上部メニューの[設定]-[ホスト]をクリックして、ホストリストの「Zabbix server」の「無効」をクリックして有効化するとローカルホストの監視が開始されます。

    収集されたデータはメニューの[監視データ]-[最新データ]から確認することができます。

    この画面からリストの右にある「グラフ」をクリックすることでグラフを表示することもできます。インターフェースには色々な画面があるので、Zabbix 2.0でどのようなことができるのか、ぜひ一度インストールして試してみてください。

    Zabbix SIAのサイトにはZabbix 2.0のその他のページのスクリーンショットも公開されています。こちらもご参考にどうぞ。

    2012年5月28日月曜日

    Zabbix 2.0がリリースされました

    2012/05/21、ついにZabbix 2.0がリリースされました(Zabbix 2.0リリースのスペシャルニュースレター)。1.8から2年6ヶ月、2.0のリリースはいつになるのかという質問をたくさん頂いたので、リリースを待たれていた方も多くいらっしゃるのではと思います。

    2.0の主な機能はZabbix SIAのサイトにまとまっているので、ここでは改めて解説はしません。必要に応じて以下のページを参考にして戴ければと思います。(ドキュメントは未翻訳です)

    その他には、以下の記事、資料などが参考になると思います。

    今回、1.8から2.0までの間に2年半もかかってしまった理由としては、1.8で新機能を追加してしまったことでその追加機能の開発工数やバグフィックスなどで時間が割かれてしまい、2.0の開発に時間が割けなかったからだ、とAlexeiは言っているのですが、個人的には以下の要因もあると思っています。

    • 1.8から大規模なシステムでZabbixが使われ始めていて、パフォーマンス改善のための修正なども多くなってきていること
    • 2.0ではWebインターフェースの一部分を根本的に入れ替えていること。特にJavaScriptのライブラリをprototype.jsからjQueryに変更や、インターフェース翻訳にgettextを使うなど
    • 2.0では多数の新機能が追加されていること

    Zabbixサーバやエージェントのコードは早いうちから安定していたものの、Webインターフェースはリリース直前まで修正が行われてたように思います。

    第5回 ZABBIX-JP勉強会でAlexeiも話していたのですが、2010年の初めに「2010年の9月に2.0をリリースする。リリースできなければ帽子を食べる(日本で言うと針千本を飲むという感じです)」と話していたものが、同じことをあと2回(2010年9月、2011年5月)言っているので、そのくらい予定から遅れていた、ということになります。

    2.0がリリースされたとき(私は日本にいたので参加していないのですが)、Zabbixのオフィスで2.0のリリースパーティでAlexeiが帽子を食べましたという記事があるので、こちらもどうぞ。

    Zabbix社では次の2.2に向けての開発がすでに始まっています。クラウドコンピューティングEXPOのセミナーでも発表したのですが、2.0以降は以下のリリースポリシーに変更されます。

    • 9ヶ月ごとにメジャーバージョンをリリース
    • マイナーバージョンではバグフィックスのみ。仕様変更や新機能の追加は行わない

    9ヶ月ごとにメジャーバージョンがリリースされることで、新しい機能をより早く使うことができます。ただ、これまで1.8のマイナーバージョンでも仕様変更をともなうバグでも修正が行われてましたが、2.0以降は次のメジャーバージョンを待つことになる場合もあると思います。必要な機能修正/追加要望は早めにお願いします。

    また、上記Alexeiの資料にもありますが、Zabbixでは2.0以降の開発の方向性としては以下のことを考えています。

    • より高品質なソフトウェアをリリースするための取り組み
    • WebインターフェースにMVCモデルを
    • Webインターフェースをよりユーザーフレンドリーに
    • プラグインアーキテクチャ
    • HAや冗長化を含む水平方向のスケーラビリティ

    近日中に2.2のロードマップを公開予定なので、こちらも期待頂ければと思います。

    Zabbix 2.0のソースコードはZabbix SIAのダウンロードページからダウンロード可能です。

    2012年5月27日日曜日

    第5回 ZABBIX-JP勉強会を開催しました

    2012/05/12(土)にフューチャーアーキテクトさんの大崎オフィスで第5回 ZABBIX-JP勉強会を開催しました。

    今回は今までにZABBIX-JP単独で開いた勉強会としては最大の170名の申し込みということで、当日どの程度の参加者が集まるのかや、懇親会の費用や食事の用意など手探りのところが多かったのですが、なんとか無事終えることができました。

    開場前の受付の様子

    http://farm8.staticflickr.com/7083/7275624492_9404df2f60.jpg

    本編開始直後の様子

    http://farm9.staticflickr.com/8151/7275625150_89760cfdd0.jpg

    また、今回はZabbixのお菓子と、ラトビアの有名なお菓子メーカーのLaimaさんからいただいたチョコレートを無料配布しました。

    http://farm8.staticflickr.com/7103/7275623582_77a6a9be82.jpg

    LaimaさんからいただいたチョコレートはZabbixへのスポンサーという形で無償でいただいたものなので、おいしかったよ!という人はぜひ、LaimaのTwitterアカウントに英語でThanksと言っていただくか、Facebookのアカウントでいいね!ボタンを押してあげてください。

    最終的に本編は115人の方に参加いただきました。当日の発表の様子はUstreamでも公開しているので、当日来れなかった方はぜひ録画をご覧ください。

    そのあとは1つ下の階に移動して懇親会も行いました。懇親会は61名の参加ということで、当初予想していたよりもかなり多くの方に参加いただきました。用意した食事と飲み物が足りず、何度もコンビニまで往復いただいたスタッフの方々、どうもありがとうございました!

    懇親会のLTの様子

    http://farm8.staticflickr.com/7224/7275625964_e732e1e253.jpg

    懇親会では@udaotokoさんがなんとこの日のためにZabbix銘菓を作ってきていただいていました。最終的には売り切れになってしまい大盛況ということで、こちらも持って行かれた方は@udaotokoさんに一言コメント頂ければと思います。

    http://farm8.staticflickr.com/7078/7275626914_bbdf86c498.jpg

    当日のアジェンダや資料などはZABBIX-JPのイベントページにまとめてあるので、見逃したという方や、発表資料を再度見たいという方はこちらからアクセス頂ければと思います。

    今回は私も他のイベントの準備で気が回らなかったこともあり、本編の時間が遅れてしまったりとか、懇親会の準備に不足があったりなど反省すべき点は多かったのですが、反省点は次回に生かしたいと思います。

    当日、会場の貸し出しや設営準備、買い出しなどを手伝っていただいたフーチャーアーキテクトの方々、それから登壇いただいた方々、どうもありがとうございました!ZABBIX-JPスタッフのみなさんもお疲れさまでした!。また次回、勉強会を開催できることを楽しみにしています。