ソースからコンパイルすることによって、Zabbix の最新のバージョンを使用できます。
ソースからのZabbixのインストールについてのステップ・バイ・ステップのチュートリアルをこちらで示します。
Zabbixのダウンロードページに行き、ソースのアーカイブをダウンロードします。ダウンロードしたら、以下を実行してソースを展開します:
コマンドでは 正しいZabbix バージョンを入力してください。ダウンロードアーカイブの名前と適合している必要があります。
すべてのZabbix のデーモンプロセスに対して、特権を持たないユーザーが必要です。ある1つの特権を持たないユーザーアカウントから開始されると、Zabbix デーモンはそのユーザーとして動作します。
しかし、Zabbix デーモンが root アカウントから開始されると、必ず存在するはずの zabbix ユーザーのアカウントに切り替えられて保護されます。Linux システムで、各自のグループ内にこのようなzabbix ユーザーアカウントを作成するには、次のように実行します:
Zabbix フロントエンドのインストールには、個別のユーザーアカウントは不要です。
Zabbixサーバ や Zabbixエージェントを同一のマシン上で動作させる場合は、エージェントの動作とサーバの動作に対してそれぞれ異なるユーザーで使用することをお奨めします。そうしないと、両方が同一ユーザーとして動作している場合、エージェントはサーバの設定ファイルにアクセスでき、Zabbix での管理者レベルのユーザーとして、例えばデータベースのパスワードのような情報が極めて容易に取得できてしまいます。
root や bin、その他特別な権限をもつアカウントでZabbixを動作させることは、セキュリティリスクとなります。
ZabbixサーバとZabbixプロキシデーモン、Zabbix フロントエンドには、データベースが必要です。Zabbix エージェントの動作には不要です。
Zabbixには、データベーススキーマを作成し、データセットを挿入するためのSQLスクリプトが付属しています。Zabbix プロキシデータベースにはスキーマだけが必要ですが、Zabbix サーバのデータベースにはスキーマの先頭にデータセットも必要です。
Zabbix データベースを作成し終えたら、次のZabbix のコンパイルのステップに進みます。
Zabbix サーバまたはZabbix プロキシのソースコードの設定を行うときは、使用するデータベースのタイプを指定しなければなりません。サーバまたはプロキシのプロセスで1度に1つのデータベースタイプだけがコンパイル可能です。
すべてのサポートされている設定オプションを参照するには、展開されたZabbixのソースコードのディレクトリの中で次を実行します:
Zabbix サーバまたはエージェントのソースコードを設定するには、以下のように実行します:
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl
PostgreSQLなどで動作するZabbix サーバのソースコードを設定するには、以下を実行します:
SQLiteなどで動作するZabbix プロキシのソースコードを設定するには、以下を実行します:
Zabbix エージェントのソースコードを設定するには、以下を実行します:
ライブラリをスタティックリンクするには、フラグ--enable-static を追加します。コンパイルしたバイナリを複数のサーバに分散させる場合は、分散先のサーバに必要なライブラリが存在しなくてもこれらのバイナリが動作するように、このフラグを必ず使用します。 --enable-static フラグは、Solaris の環境では動作しないのでご注意ください。
サーバ構築の際に--enable-static オプションを使用することはお奨めしません。
サーバをスタティックに構築するためには、必要な外部ライブラリのすべてのスタティックバージョンを持つ必要があります。設定スクリプト内では、それについて厳密なチェックはありません。
--enable-agentオプションが使用されると、コマンドラインユーティリティのzabbix_getとzabbix_senderがコンパイルされます。
CLI APIの場所を指定するためには、--with-ibm-db2 フラグを使用します。
OCI APIの場所を指定するためには、--with--oracle フラグを使用します。
--with-net-snmpフラグのかわりに、--with-ucd-snmp フラグを使用することもできます。SNMPをサポートする必要がない場合は、 --with-net-snmp フラグ も --with-ucd-snmp フラグもどちらも指定する必要はありません。
SVNからインストールする場合は、まず最初に以下を実行する必要があります:
$ make dbschema
このステップは、一般には root または sudo を使用するなど、十分な権限を持っているユーザーとして実行する必要があります。
デフォルトでmake installを実行すると、/usr/local/sbinに デーモンのバイナリ(zabbix_server、zabbix_agentd、zabbix_proxy)、/usr/local/bin にクライアントのバイナリ(zabbix_get、zabbix_sender)をインストールします。
/usr/local とは違う場所を指定したい場合は、ソースコードの設定のひとつ前のステップで--prefix キー を使用します。例えば --prefix=/home/zabbix のように指定すると、デーモンのバイナリは<prefix>/sbin の下にインストールされますが、ユーティリティは、<prefix>/bin の下にインストールされます。Manページは<prefix>/share の下にインストールされます。
zabbix_agentd をインストールする全てのホストでこのファイルを設定する必要があります。
このファイルには、Zabbix サーバのIPアドレスを指定する必要があります。他のホストからの接続は拒否されます。
データベース名、ユーザー、パスワード(使用している場合は)を指定する必要があります。
SQLiteでは、データベースへのフルパスを指定する必要があります。DBユーザーやパスワードは不要です。
小規模な環境(監視対象ホストが10個以下)にインストールする場合は、残りのパラメータはデフォルトのままで修正する必要はありません。ただし、Zabbix サーバあるいは Zabbixプロキシのパフォーマンスを最大限に高めるためには、デフォルトのパラメータを変更する必要があります。詳細は「パフォーマンス・チューニング」のセクションを参照してください。
データベース名、ユーザー、パスワード(使用している場合)とともに、サーバのIPアドレスとプロキシのホスト名(サーバに知らせる必要があります)を指定する必要があります。
SQLiteでは、データベースファイルへのフルパスを指定する必要があります。DBユーザーとパスワードは不要です。
サーバサイドで zabbix_server を実行します。
システムで共有メモリに36MB(またはそれより少し多いメモリ容量)を割り当て可能であることを確認してください。十分な共有メモリが割り当てられない場合、サーバの起動は失敗して、サーバのログファイルに「Cannot allocate shared memory for <type of cache>.」というメッセージが出力されます。この現象は、FreeBSD、Solaris8で発生する可能性があります。
共有メモリの設定方法については、このページ最後の「こちらも参照」セクションを参照してください。
すべての監視対象マシン上でzabbix_agentdを実行します。
システムで共有メモリに2MBを割り当て可能であることを確認してください。2MBの共有メモリを割り当てられない場合、エージェントの起動は失敗して、エージェントのログファイルに「Cannot allocate shared memory for collector.」というメッセージが出力されます。この現象は、Solaris8で発生する可能性があります。
Zabbix プロキシをインストールし終えたら、 zabbix_proxyを実行します。
Zabbix フロントエンドはPHPで書かれているので、実行するためには、PHPをサポートをしているウェブサーバが必要です。インストールは、単にPHPファイルをfrontends/phpからウェブサーバのHTMLドキュメントのディレクトリにコピーするだけです。 Apache ウェブサーバ のHTMLドキュメントのディレクトリの一般的な場所は 以下の中にあります:
HTML rootのかわりに、サブディレクトリを使用することをお奨めします。サブディレクトリを作成してZabbix フロントエンドのファイルをその中にコピーするには、次のコマンドを実行します。このコマンドによって、実際のディレクトリが置き換えられます:
SVNからインストールし、英語以外の言語を使用する場合は、翻訳ファイルを生成する必要があります。翻訳ファイルを生成するには、次を実行してください:
gettextパッケージのmsgfmt ユーティリティが必要です。
英語以外の言語を使用する場合は、これに加えて、ウェブサーバ上でロケールを設定する必要があります。ロケールの設定方法が必要な場合は、「ユーザープロファイル」ページの「こちらも参照」セクションを参照してください。
ブラウザで、 Zabbix URL (http://<server_ip_or_name>/zabbix)に移動します。
フロントエンドのインストールウィザードの最初の画面が表示されます。
ソフトウェアの前提条件をすべて満たしていることを確認します。
前提条件 最小値 | 説明 | |
---|---|---|
PHP バージョン 5.1. | ||
PHP メモリ制限 128M | php. | ni 内での記述: memory_limit = 128M |
PHP POSTの最大サイズ 16MB | php.i | i 内での記述: post_max_size = 16M |
PHP アップロード最大ファイルサイズ 2MB | php.ini 内での記述: | <upload_max_filesize = 2M |
PHP 最大実行時間 300秒 | php.in | 内での記述: max_execution_time = 300 |
PHP 最大入力時間 300秒 | php.in | 内での記述: max_input_time = 300 |
PHP セッション自動スタート 必ず不可 | php.ini 内での記述: | <session.auto_start = 0. Zabbix 2.0.4以降のバージョンであること。 |
PHPデータベースサポート 以下のいずれか1つ | 以下のモジュールのいずれか1つがインIBM DB2 MySQL Oracle PostgreSQL SQLite |
トールされていること。 ibm_db2 mysql oci8 pgsql sqlite3 |
PHP BC math | php-bcmath | |
PHP MB string | php-mbstring | |
PHP net socket | php-net-socket。ユーザースクリプトがサポートされていること。 | |
GD | バージョン2.0 以降 PHP GD | エクステンションが以下をサポートしていること。 PNGイメージ (--with-png-dir) JPEG (--with-jpeg-dir) FreeType 2 (--with-freetype-dir) |
XML Cライブラリ 2.6. | 5 php- | ml または php5-dom |
PHP XMLライター | php | xmlwriter |
PHP XML リーダー | php | xmlreader |
PHP ctype | php-ctype | |
PHP セッション | php- | ession |
PHP gettext | php-gettext |
データベース接続のための詳細情報を入力します。データベースが作成済みである必要があります。
Zabbix サーバの詳細情報を入力します。
これまでに設定した内容を確認します。
設定ファイルをダウンロードして、conf/に配置します。
インストールを終了します。
Zabbixフロントエンドの使用準備が完了しました! デフォルトのユーザー名はAdmin、パスワードはzabbixです。
Zabbix の 開始に進んでください。
本ページは2013/04/25時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は右上の「Translations of this page」から英語版を参照してください。