Zabbixの最新バージョンはソースからコンパイルすることで入手できます。
Zabbixをソースからインストールするためのステップバイステップのチュートリアルはこちらです。
Zabbixダウンロードページにアクセスし、ソースコードのアーカイブをダウンロードします。 ダウンロードしたら、次のコマンドを実行して解凍します。
コマンドには正しいZabbixバージョンを入力してください。ダウンロードしたアーカイブの名前と一致する必要があります。
すべてのZabbixデーモンプロセスには、権限のないユーザーが必要です。 Zabbixデーモンが権限のないユーザーアカウントから起動された場合、そのユーザーとして実行されます。
ただし、デーモンが'root'アカウントから起動された場合は、'zabbix'ユーザーアカウントに切り替わります。したがって、このアカウントが存在する必要があります。 このようなユーザーアカウント (独自のグループ"zabbix"内) を作成するには、以下のコマンドを実行します。
RedHatベースのシステムの場合:
groupadd --system zabbix
useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix
Debianベースのシステムの場合:
addgroup --system --quiet zabbix
adduser --quiet --system --disabled-login --ingroup zabbix --home /var/lib/zabbix --no-create-home zabbix
Zabbixプロセスにはホーム ディレクトリは必要ないため、ホームディレクトリを作成することはお勧めしません。 ただし、それを必要とする機能 (例: MySQL認証情報を$HOME/.my.cnf
に保存する) を使用している場合は、次のコマンドを実行して自由に作成できます。
RedHatベースのシステムの場合:
Debianベースのシステムの場合:
Zabbixフロントエンドのインストールには別のユーザーアカウントは必要ありません。
Zabbixサーバーとエージェントが同じマシン上で実行されている場合は、サーバーの実行にはエージェントの実行とは異なるユーザーを使用することをお勧めします。 両方を同じユーザーとして実行してしまうと、エージェントはサーバー設定ファイルにアクセスでき、Zabbixの管理者レベルのユーザーはデータベースパスワードなどを非常に簡単に取得できてしまいます。
Zabbixをroot
、bin
、または特別な権限を持つその他のアカウントとして実行すると、セキュリティ上のリスクが生じます。
Zabbixサーバーやプロキシデーモン、Zabbixフロントエンドには、データベースが必要です。 Zabbixエージェントの実行には必要ありません。
データベーススキーマを作成し、データセットを挿入するためのSQLスクリプトが提供されています。 Zabbixプロキシデータベースにはスキーマのみが必要ですが、Zabbixサーバーデータベースにはスキーマ上のデータセットも必要です。
Zabbixデータベースを作成したら、次のZabbixのコンパイル手順に進みます。
Zabbixサーバー、Zabbixプロキシ、またはZabbix エージェントを構築するには、GNU拡張機能を備えたC99が必要です。 このバージョンは、CFLAGS="-std=gnu99" を設定することで明示的に指定できます。
Zabbix Gitリポジトリからインストールする場合は、最初に実行する必要があります:
./bootstrap.sh
Zabbixサーバーまたはプロキシのソースを構成する場合、使用するデータベースの種類を指定する必要があります。サーバーまたはプロキシプロセスで一度にコンパイルできるデータベースタイプは 1 つだけです。
サポートされているすべての構成オプションを確認するには、抽出したZabbixソースディレクトリ内で次のコマンドを実行します。
Zabbixサーバーとエージェントのソースを設定するには、次のようなコマンドを実行します。
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi
Zabbixサーバー (PostgreSQLなどを使用)のソースを設定するには、次のコマンドを実行します。
Zabbixプロキシ (SQLiteなどを使用)のソースを設定するには、次のコマンドを実行します。
Zabbixエージェントのソースを設定するには、次のコマンドを実行します。
Zabbixエージェント2の場合は、次のコマンドを実行します。
A configured Go environment with a currently supported Go version is required for building Zabbix agent 2. Zabbixエージェント2を構築するには、現在サポートされているGoバージョンで構成されたGo環境が必要です。 インストール手順については、go.devを参照してください。
コンパイルオプションに関する注意事項:
web.page.*
にも必要です。--with-libcurl構成オプションを使用するには、cURL 7.20.0以降が必須であることに注意してください。ライブラリの欠落またはその他の状況により./configureが失敗した場合は、エラーの詳細についてconfig.log
ファイルを参照してください。 たとえば、libssl
が欠落している場合、即座に表示されるエラーメッセージは誤解を招く可能性があります。
config.log
にはさらに詳しい説明があります。
参照:
Zabbix Gitリポジトリからインストールする場合は、最初に実行する必要があります:
$ make dbschema
このステップは、十分な権限を持つユーザー (通常は'root'、またはsudo
を使用) として実行する必要があります。
make install
を実行すると、デフォルトでデーモンのバイナリ(zabbix_server, zabbix_agentd, zabbix_proxy)が/usr/local/sbinにインストールされ、クライアントのバイナリ(zabbix_get, zabbix_sender)が/usr/local/binにインストールされます。
/usr/localとは異なる場所を指定するには、ソースを構成する前の手順で--prefixキーを使用します (例: --prefix=/home/zabbix)。 この場合、デーモンのバイナリは<prefix>/sbinにインストールされ、ユーティリティは<prefix>/binにインストールされます。 manページは<prefix>/shareの下にインストールされます。
zabbix_agentdがインストールされているすべてのホストに対してこのファイルを設定する必要があります。
ファイル内でZabbixサーバーのIPアドレスを指定する必要があります。 他のホストからの接続は拒否されます。
データベース名、ユーザー、およびパスワード (使用している場合) を指定する必要があります。
小規模なインストール (監視対象ホストが最大10台) の場合、残りのパラメーターはデフォルトのままで問題ありません。 ただし、Zabbixサーバー (またはプロキシ) のパフォーマンスを最大化したい場合は、デフォルトのパラメーターを変更する必要があります。
サーバーのIPアドレスとプロキシのホスト名 (サーバーに認識されている必要がある)、およびデータベース名、ユーザー、およびパスワード (使用している場合) を指定する必要があります。
SQLiteでは、データベースファイルへのフルパスを指定する必要があります。 DBユーザーとパスワードは必要ありません。
サーバー側でzabbix_serverを起動します。
システムで36MB(またはそれ以上)の共有メモリの割り当てが許可されていることを確認してください。許可されていないと、サーバーが起動せず、サーバーログファイル内に"Cannot allocate shared memory for <type of cache>."というメッセージが表示されます。これはFreeBSD、Solaris 8で発生する可能性があります。
すべての監視対象マシンでzabbix_agentdを実行します。
システムで2MBの共有メモリの割り当てが許可されていることを確認してください。許可されていないと、エージェントが起動せず、エージェントログファイル内に"Cannot allocate shared memory for collector."というメッセージが表示されることがあります。 これはSolaris 8で発生する可能性があります。
Zabbixプロキシをインストールしている場合は、zabbix_proxyを実行します。
ZabbixフロントエンドはPHPで書かれているため、それを実行するにはPHPをサポートするWebサーバーが必要です。 インストールは、PHPファイルをuiディレクトリからWebサーバーのHTMLドキュメントディレクトリにコピーするだけで行われます。
Apache WebサーバーのHTMLドキュメントディレクトリの一般的な場所は次のとおりです。
HTMLルートの代わりにサブディレクトリを使用することをお勧めします。 サブディレクトリを作成し、そこにZabbixフロントエンドファイルをコピーするには、次のコマンドを実行して、実際のディレクトリを置き換えます。
英語以外の言語を使用する場合は、追加のフロントエンド言語のインストールで手順を参照してください。
Zabbix Webインターフェースのインストールウィザードの詳細については、Webインターフェースのインストール ページを参照してください。
JMXアプリケーションを監視する場合にのみ、Javaゲートウェイをインストールする必要があります。 Javaゲートウェイは軽量であり、データベースを必要としません。
ソースからインストールするには、まずダウンロードしてソースアーカイブを抽出します。
Javaゲートウェイをコンパイルするには、--enable-java
オプションを指定して./configure
スクリプトを実行します。 Javaゲートウェイをインストールすると、単一の実行可能ファイルだけでなくディレクトリ ツリー全体が作成されるため、デフォルトの/usr/local以外のインストールパスを要求するには、--prefix
オプションを指定することをお勧めします。
JavaゲートウェイをコンパイルしてJARファイルにパッケージ化するには、make
を実行します。 このステップでは、パスにjavac
およびjar
実行可能ファイルが必要であることに注意してください。
これで、src/zabbix_java/binにzabbix-java-gateway-$VERSION.jarファイルが作成されました。 配布ディレクトリのsrc/zabbix_javaからJavaゲートウェイを実行することに慣れている場合は、Javaゲートウェイの設定と実行の手順に進むことができます。 それ以外の場合は、十分な権限があることを確認してmake install
を実行してください。
Javaゲートウェイの構成と実行の詳細については、セットアップに進んでください。
Zabbix Webサービスのインストールは、定期レポートを使用する場合にのみ必要です。
ソースからインストールするには、まずダウンロードしてソースアーカイブを抽出します。
Zabbix Webサービスをコンパイルするには、--enable-webservice
オプションを指定して./configure
スクリプトを実行します。
Zabbix Webサービスを構築するには、構成されたGoバージョン1.13以降の環境が必要です。
Webサービスがインストールされているマシン上でzabbix_web_serviceを実行します。
定期レポート生成の設定の詳細については、セットアップに進んでください。