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.2.0.tar.gz

<note tip>コマンドには、正しいZabbixのバージョンを入力してください。ダウンロードしたアーカイブの名前と一致している必要があります。 :::

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

Zabbixデーモンプロセスすべてについて、非特権ユーザーが必要です。Zabbixデーモンが非特権ユーザーから開始されると、そのユーザーとして実行されます。

ただし、デーモンが「root」アカウントから開始されると、必ず存在するはずの「zabbix」ユーザーアカウントに切り替わります。そうした(各自のグループ内で「zabbix」という)ユーザーアカウントをLinuxシステム上で作成するには、次を実行します。

groupadd zabbix
       useradd -g zabbix zabbix

ZabbixのWebインターフェースのインストールには、個々のユーザーアカウントは必要ありません。

Zabbix サーバエージェントを同じマシンで実行する場合、サーバの実行とエージェントの実行に別々のユーザーを使用することをお奨めします。そうしないと、両方とも同じユーザーとして実行された場合、エージェントがサーバ設定ファイルにアクセスでき、ZabbixのAdminレベルのユーザーがデータベースのパスワードなどを容易に取得できます。

<note important>Zabbixをrootbin、または他の特権があるアカウントとして実行することは、セキュリティ上のリスクとなります。 :::

3 Zabbixデータベースの作成

ZabbixサーバプロキシデーモンおよびZabbixのWebインターフェースには、データベースが必要です。Zabbixエージェントを起動する必要はありません。

データベーススキーマの作成およびデータセットの挿入のために、SQLスクリプトが用意されています。Zabbixプロキシデータベースは、スキーマのみを必要としますが、Zabbixサーバデータベースは、スキーマの先頭にデータセットも必要とします。

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

4 ソースの設定

Zabbixサーバまたはプロキシのソースを設定するときには、使用する予定のデータベースのタイプを指定する必要があります。サーバまたはプロキシのプロセスでコンパイルできるデータベースのタイプは、1回に1つだけです。

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

./configure --help

Zabbixサーバおよびエージェントのソースを設定するには、次のように実行します。

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

--with-libxml2という設定オプションは、Zabbix 2.2.0以降でサポートされた仮想マシンの監視に必要です。

Zabbixサーバ(PostgreSQLなどで動作)のソースを設定するには、次を実行します。

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

Zabbixプロキシ(SQLiteで動作)のソースを設定するには、次を実行します。

./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がコンパイルされます。

--with-ibm-db2フラグを使用して、CLI APIの場所を指定します。
--with-oracleフラグを使用して、OCI APIの場所を指定します。

5 作成およびインストール

SVNからインストールする場合、最初に次を実行する必要があります。

$ make dbschema

make install

このステップは、十分な権限があるユーザーとして(一般には「root」、またはsudoを使用)実行する必要があります。

make installを実行すると、デフォルトでデーモンバイナリ(zabbix_server、zabbix_agentd、zabbix_proxy)が/usr/local/sbinに、クライアントバイナリ(zabbix_get、zabbix_sender)が/usr/local/binにインストールされます。

/usr/localとは異なる場所を指定するには、ソースを設定する前のステップで、例えば--prefix=/home/zabbixのように、--prefixキーを使用します。この場合、デーモンバイナリは<prefix>/sbinの下にインストールされ、ユーティリティは<prefix>/binの下にインストールされます。マンページは、<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サーバ(またはプロキシ)のパフォーマンスを最大限に高めたい場合は、デフォルトのパラメータを変更する必要があります。詳細については、パフォーマンスチューニングのセクションを参照してください。

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

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

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

7 デーモンの起動

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

shell> zabbix_server

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

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

shell> zabbix_agentd

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

Zabbixプロキシをインストールしている場合、zabbix_proxyを実行します。

shell> zabbix_proxy

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

PHPファイルのコピー

ZabbixのWebインターフェースはPHPで書かれているため、実行するにはPHPをサポートしているWebサーバが必要です。インストールは、PHPファイルをfrontends/phpからWebサーバのHTMLの文書ディレクトリにコピーするだけです。

Apache WebサーバのHTMLの文書ディレクトリの共通の場所には、次のものがあります。

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

HTMLルートの代わりに、サブディレクトリを使用することをお奨めします。サブディレクトリを作成してZabbixのWebインターフェースのファイルをコピーするには、次のコマンドを実行して、実際のディレクトリを置き換えます。

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

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

locale/make_mo.sh

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

さらに、英語以外の言語を使用するには、そのロケールをWebサーバにインストールする必要があります。必要な場合のインストール方法については、「ユーザープロファイル」ページの「こちらも参照」セクションを参照してください。

Webインターフェースのインストール
ステップ1

ブラウザーで、ZabbixのURL(http://<server_ip_or_name>/zabbix)を開きます。

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

ステップ2

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

必要条件 最小値 説明
PHPバージョン 5.3.
PHP memory_limitオプション 128M php. niでの記述:
memory_limit = 128M
PHP post_max_sizeオプション 16MB php. niでの記述:
post_max_size = 16M
PHP upload_max_filesizeオプション 2MB php. niでの記述:
upload_max_filesize = 2M
PHP max_execution_timeオプション 300秒 php.i iでの記述:
max_execution_time = 300
PHP max_input_timeオプション 300秒 php.i iでの記述:
max_input_time = 300
PHP session.auto_startオプション 無効化が 要 php.iniでの記
session.auto_start = 0.
データベースのサポート 次のうち1つ:IBM DB2、MySQL、Oracle、PostgreSQL、SQLite 次のモジュールのうち1つがインストールさ ていること。
ibm_db2、mysql、oci8、pgsql、sqlite3
bcmath php-bcmath
mbstring php-mbstring
sockets php-net-socket
ユーザースクリプトのサポートに必要です。
gd 2.0以降 p p-gd
PHP GDエクステンションは、PNG画像(--with-png-dir)、JPEG(--with-jpeg-dir)画像、FreeType 2(--with-freetype-dir)をサポートしている必要があります。
libxml 2.6.15 php-xmlまたはphp5-dom
xmlwriter php-xmlwriter
xmlreader php-xmlreader
ctype php-ctype
session php-session
gettext php-gettext
Zabbix 2.2.1以降は、PHP gettextエクステンションはもうZabbixのインストールの必須要件ではありません。gettextがインストールされていない場合、Webインターフェースは通常通り動作しますが、翻訳は利用できません。

Zabbix 2.2.1以降は、オプションの必要条件もリストに存在する場合があります。満たされていないオプションの必要条件があると、オレンジ色で表示され、ステータスが「警告」となります。必要条件を満たさないオプションがあっても、セットアップは続けられます。

ステップ3

データベースに接続するための詳細を入力します。すでにZabbixデータベースが作成されている必要があります。

ステップ4

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

ステップ5

設定した内容を確認します。

ステップ6

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

Webサーバのユーザーにconf/ディレクトリへの書き込み権限がある場合、設定ファイルは自動的に保存され、直ちに次のステップへ進むことができます。

ステップ7

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

ステップ8

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

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

トラブルシューティング

インストール固有の問題のトラブルシューティングのセクションを参照してください。

こちらも参照

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

本ページは2014/08/05時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は、英語版のZabbix2.2マニュアルを参照してください。