This is the documentation page for an unsupported version of Zabbix.
Is this not what you were looking for? Switch to the current version or choose one from the drop-down menu.

4 ソースからのインストール

概要

ソースからコンパイルすることによって、Zabbix の最新のバージョンを使用できます。

ソースからのZabbixのインストールについてのステップ・バイ・ステップのチュートリアルをこちらで示します。

1 Zabbix デーモンのインストール

1.ソースのアーカイブのダウンロード

Zabbixのダウンロードページに行き、ソースのアーカイブをダウンロードします。ダウンロードしたら、以下を実行してソースを展開します:

$ tar -zxvf zabbix-2.0.0.tar.gz

コマンドでは 正しいZabbix バージョンを入力してください。ダウンロードアーカイブの名前と適合している必要があります。

2. ユーザーアカウントの作成

すべてのZabbix のデーモンプロセスに対して、特権を持たないユーザーが必要です。ある1つの特権を持たないユーザーアカウントから開始されると、Zabbix デーモンはそのユーザーとして動作します。

しかし、Zabbix デーモンが root アカウントから開始されると、必ず存在するはずの zabbix ユーザーのアカウントに切り替えられて保護されます。Linux システムで、各自のグループ内にこのようなzabbix ユーザーアカウントを作成するには、次のように実行します:

groupadd zabbix
       useradd -g zabbix zabbix

Zabbix フロントエンドのインストールには、個別のユーザーアカウントは不要です。

ZabbixサーバZabbixエージェントを同一のマシン上で動作させる場合は、エージェントの動作とサーバの動作に対してそれぞれ異なるユーザーで使用することをお奨めします。そうしないと、両方が同一ユーザーとして動作している場合、エージェントはサーバの設定ファイルにアクセスでき、Zabbix での管理者レベルのユーザーとして、例えばデータベースのパスワードのような情報が極めて容易に取得できてしまいます。

root や bin、その他特別な権限をもつアカウントでZabbixを動作させることは、セキュリティリスクとなります。

3. Zabbix データベースの作成

ZabbixサーバZabbixプロキシデーモン、Zabbix フロントエンドには、データベースが必要です。Zabbix エージェントの動作には不要です。

Zabbixには、データベーススキーマを作成し、データセットを挿入するためのSQLスクリプトが付属しています。Zabbix プロキシデータベースにはスキーマだけが必要ですが、Zabbix サーバのデータベースにはスキーマの先頭にデータセットも必要です。

Zabbix データベースを作成し終えたら、次のZabbix のコンパイルのステップに進みます。

4. ソースコードの設定

Zabbix サーバまたはZabbix プロキシのソースコードの設定を行うときは、使用するデータベースのタイプを指定しなければなりません。サーバまたはプロキシのプロセスで1度に1つのデータベースタイプだけがコンパイル可能です。

すべてのサポートされている設定オプションを参照するには、展開されたZabbixのソースコードのディレクトリの中で次を実行します:

./configure --help

Zabbix サーバまたはエージェントのソースコードを設定するには、以下のように実行します:

./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl

PostgreSQLなどで動作するZabbix サーバのソースコードを設定するには、以下を実行します:

./configure --enable-server --with-postgresql --with-net-snmp

SQLiteなどで動作するZabbix プロキシのソースコードを設定するには、以下を実行します:

./configure --prefix=/usr --enable-proxy --with-net-snmp --with-sqlite3 --with-ssh2

Zabbix エージェントのソースコードを設定するには、以下を実行します:

./configure --enable-agent

ライブラリをスタティックリンクするには、フラグ--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 フラグもどちらも指定する必要はありません。

5. Make とすべてのインストール

SVNからインストールする場合は、まず最初に以下を実行する必要があります:
$ make dbschema

make install

このステップは、一般には 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 の下にインストールされます。

6. 設定ファイルの確認と編集
  • Zabbix エージェント 設定ファイル /usr/local/etc/zabbix_agentd.conf の編集

zabbix_agentd をインストールする全てのホストでこのファイルを設定する必要があります。

このファイルには、Zabbix サーバのIPアドレスを指定する必要があります。他のホストからの接続は拒否されます。

  • Zabbix サーバ 設定ファイル /usr/local/etc/zabbix_server.conf の編集

データベース名、ユーザー、パスワード(使用している場合は)を指定する必要があります。

SQLiteでは、データベースへのフルパスを指定する必要があります。DBユーザーやパスワードは不要です。

小規模な環境(監視対象ホストが10個以下)にインストールする場合は、残りのパラメータはデフォルトのままで修正する必要はありません。ただし、Zabbix サーバあるいは Zabbixプロキシのパフォーマンスを最大限に高めるためには、デフォルトのパラメータを変更する必要があります。詳細は「パフォーマンス・チューニング」のセクションを参照してください。

  • Zabbix プロキシをインストールした場合、プロキシ設定ファイル /usr/local/etc/zabbix_proxy.conf の編集

データベース名、ユーザー、パスワード(使用している場合)とともに、サーバのIPアドレスとプロキシのホスト名(サーバに知らせる必要があります)を指定する必要があります。

SQLiteでは、データベースファイルへのフルパスを指定する必要があります。DBユーザーとパスワードは不要です。

7. デーモンの開始

サーバサイドで zabbix_server を実行します。

shell> zabbix_server

システムで共有メモリに36MB(またはそれより少し多いメモリ容量)を割り当て可能であることを確認してください。十分な共有メモリが割り当てられない場合、サーバの起動は失敗して、サーバのログファイルに「Cannot allocate shared memory for <type of cache>.」というメッセージが出力されます。この現象は、FreeBSD、Solaris8で発生する可能性があります。
共有メモリの設定方法については、このページ最後の「こちらも参照」セクションを参照してください。

すべての監視対象マシン上でzabbix_agentdを実行します。

shell> zabbix_agentd

システムで共有メモリに2MBを割り当て可能であることを確認してください。2MBの共有メモリを割り当てられない場合、エージェントの起動は失敗して、エージェントのログファイルに「Cannot allocate shared memory for collector.」というメッセージが出力されます。この現象は、Solaris8で発生する可能性があります。

Zabbix プロキシをインストールし終えたら、 zabbix_proxyを実行します。

shell> zabbix_proxy

2 Zabbix ウェブインターフェイスのインストール

PHPファイルのコピー

Zabbix フロントエンドはPHPで書かれているので、実行するためには、PHPをサポートをしているウェブサーバが必要です。インストールは、単にPHPファイルをfrontends/phpからウェブサーバのHTMLドキュメントのディレクトリにコピーするだけです。 Apache ウェブサーバ のHTMLドキュメントのディレクトリの一般的な場所は 以下の中にあります:

  • /usr/local/apache2/htdocs  (Apacheをソースコードからインストールしたときのデフォルトのディレクトリ)
  • /srv/www/htdocs  (OpenSUSE、SLES)
  • /var/www/html  (Fedora、RHEL、CentOS)
  • /var/www  (Debian、Ubuntu)

HTML rootのかわりに、サブディレクトリを使用することをお奨めします。サブディレクトリを作成してZabbix フロントエンドのファイルをその中にコピーするには、次のコマンドを実行します。このコマンドによって、実際のディレクトリが置き換えられます:

mkdir <htdocs>/zabbix
       cd frontends/php
       cp -a . <htdocs>/zabbix

SVNからインストールし、英語以外の言語を使用する場合は、翻訳ファイルを生成する必要があります。翻訳ファイルを生成するには、次を実行してください:

locale/make_mo.sh

gettextパッケージのmsgfmt ユーティリティが必要です。

英語以外の言語を使用する場合は、これに加えて、ウェブサーバ上でロケールを設定する必要があります。ロケールの設定方法が必要な場合は、「ユーザープロファイル」ページの「こちらも参照」セクションを参照してください。

フロントエンドのインストール
ステップ1

ブラウザで、 Zabbix URL (http://<server_ip_or_name>/zabbix)に移動します。

フロントエンドのインストールウィザードの最初の画面が表示されます。

ステップ2

ソフトウェアの前提条件をすべて満たしていることを確認します。

前提条件 最小値 説明
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
ステップ3

データベース接続のための詳細情報を入力します。データベースが作成済みである必要があります。

ステップ4

Zabbix サーバの詳細情報を入力します。

ステップ5

これまでに設定した内容を確認します。

ステップ6

設定ファイルをダウンロードして、conf/に配置します。

ステップ7

インストールを終了します。

ステップ8

Zabbixフロントエンドの使用準備が完了しました! デフォルトのユーザー名はAdmin、パスワードはzabbixです。

Zabbix の 開始に進んでください。

こちらも参照

  1. Zabbixデーモンの共有メモリの設定方法

本ページは2013/04/25時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は右上の「Translations of this page」から英語版を参照してください。