# - \#2 要件

#### ハードウェア要件

##### メモリ要件

Zabbixには、十分な量の物理メモリとディスク容量が必要です。導入当初は、物理メモリ128
MB とディスクの空き容量256 MB
があれば十分です。ただし、必要なディスク容量は、監視するホストとパラメータの数によって異なります。監視パラメータのヒストリを長期間保存することを計画している場合、データベースにヒストリを保存するための十分な容量として少なくとも数GBを確保することを検討する必要があります。
Zabbix
デーモンのプロセスは、それぞれが、1つのデータベースに対して複数の接続を確立して動作します。接続に割り当てられるメモリ容量は、データベースエンジンの設定によって異なります。

::: noteclassic
物理メモリの容量を増やすほど、データベースは高速に動作し、その結果Zabbixも高速に動作します。
:::

##### CPU要件

Zabbix、特にZabbixデータベースは、監視パラメータの数と使用するデータベースエンジンによって程度は異なりますが、
CPU リソースを大量に消費します。

##### その他のハードウェア

ZabbixのSMS通知機能を使用する場合、シリアルポートとシリアル GSM
モデムが必要です。USBからシリアルへのコンバータも同様に有効です。

##### ハードウェア設定の例

以下の表に、様々なハードウェア設定の例を示します：

|名前           プ|ットフォーム      CPU/メモリ|データベース|監視するホスト数|<|
|--------------------|-------------------------------------|------------------|------------------------|-|
|小規模         Ub|ntu Linux          PI|350MHz 256MB           SQ|ite                                     20|<|
|中規模         Ub|ntu Linux 64 bit   AM|Athlon 3200 + 2GB      My|QL InnoDB                               50|<|
|大規模         Ub|ntu Linux 64 bit   In|el Dual Core 6400 4GB   RA|D10 MySQL InnoDBまたはPostgreSQL        1000以|<|
|非常に大規模   RedHa|Enterprise     Intel|Xeon 2xCPU 8GB       Fast|AID10 MySQL InnoDBまたはPostgreSQL   10000以上|<|

::: noteclassic
実際の設定は、アクティブなアイテムと更新速度によって大きく異なります。大規模システムでは、データベースエンジンを専用のマシンで動作させることをお奨めします。
:::

#### サポートされているプラットフォーム

監視サーバのセキュリティ要件とミッションクリティカルな性質を考慮した場合、必要とされるパフォーマンス、フォールトトレランス、および復旧のしやすさを安定して実現できるOSはUNIXだけです。Zabbixは、市販されている主なバージョンのUNIXで動作します。

Zabbixは、以下のプラットフォームで動作確認済みです：

-   Linux
-   IBM AIX
-   FreeBSD
-   NetBSD
-   OpenBSD
-   HP-UX
-   Mac OS X
-   Solaris
-   Windows: 2000, Server 2003, XP, Vista, Server 2008, 7, 8, Server
    2012 (Zabbix エージェントのみ)

::: noteclassic
Zabbixは、上記以外のUNIX系OSでも同様に動作します。
:::

#### ソフトウェア要件

Zabbixは、最新のApacheウェブサーバ、主なデータベースエンジン、および PHP
スクリプト言語を組み合わせて動作します。

##### データベース管理システム

|ソフトウェア   バージョン|コメント|<|
|------------------------------------|------------|-|
|MySQL|5.0.3以降    M|SQLをZabbixバックエンドデータベースとして使用する場合に必要です。InnoDBエンジンが必要です。|
|Oracle|10g以降      O|acleをZabbixバックエンドデータベースとして使用する場合に必要です。|
|PostgreSQL|8.1以降      P|stgreSQL をZabbixのバックエンドデータベースとして使用する場合に必要です。パフォーマンスを高める必要がある場合は、少なくとも[PostgreSQL 8.3で使用すること](http://www.postgresql.org/docs/8.3/static/release-8-3.html)をお奨めします。|
|SQLite|3.3.5以降    S|LiteをZabbixバックエンドデータベースとして使用する場合に必要です。|
|IBM DB2|9.7以降      I|M DB2をZabbixバックエンドデータベースとして使用する場合に必要です。|

::: noteimportant
IBM DB2のサポートは実験的なものです！
:::
<note
important>SQLite3はZabbixプロキシで問題なく使用できますが、Zabbixサーバでのサポートは実験的であり、お奨めできません！
:::

##### フロントエンド

Zabbix フロントエンドを動作させるには、次のソフトウェアが必要です：

|ソフトウェア           バージョン|コメント|<|
|--------------------------------------------|------------|-|
|Apache|1.3.12以降|<|
|PHP|5.3.0以降    P|P v7はサポートしていません。|
|PHPエクステンション:|<|<|
|gd|2.0以降      P|P GD エクステンションには、PNG形式の画像（*--with-png-dir*）、JPEG形式の画像（*--with-jpeg-dir*） およびFreeType2 （*--with-freetype-dir*）のサポートが必要です。|
|bcmath|<|php-bcmath（*--enable-bcmath*）|
|ctype|<|php-ctype（*--enable-ctype*）|
|libXML|2.6.15以降   デ|ストリビュータから別パッケージとして提供されている場合はphp-xml または php5-dom|
|xmlreader|<|ディストリビュータから別パッケージとして提供されている場合はphp-xmlreader|
|xmlwriter|<|ディストリビュータから別パッケージとして提供されている場合はphp-xmlwriter|
|session|<|ディストリビュータから別パッケージとして提供されている場合はphp-session|
|sockets|<|php-net-socket （*--enable-sockets*)　 ユーザースクリプトのサポートが必要です。|
|mbstring|<|php-mbstring（*--enable-mbstring*）|
|gettext|<|php-gettext（*--with-gettext*）翻訳機能を動作させるために必要です。|
|ibm\_db2|<|IBM DB2をZabbixバックエンドデータベースとして使用する場合に必要です。|
|mysql|<|MySQLをZabbixバックエンドデータベースとして使用する場合に必要です。|
|oci8|<|OracleをZabbixバックエンドデータベースとして使用する場合に必要です。|
|pgsql|<|PostgreSQLをZabbixバックエンドデータベースとして使用する場合に必要です。|
|sqlite3|<|SQLiteをZabbixバックエンドデータベースとして使用する場合に必要です。|

::: noteclassic
Zabbixは、Apache、MySQL、Oracle、PostgreSQLの前のバージョンでも動作します。
:::

<note
important>デフォルトのDejaVu以外のフォントを使用するには、PHPの[imagerotate機能](http://php.net/manual/en/function.imagerotate.php)が必要になります。その機能がない場合、フォントは\[監視データ\]→\[概要\]のヘッダや他の場所で正しくレンダリングされない場合があります。imagerotate機能は、PHPがGDをバンドルしてコンパイルされている場合にのみ有効で、Debianと他のディストリビューションでは提供されていません。
:::

##### クライアントサイドのウェブブラウザ

CookieとJavaScriptを有効にする必要があります。

Google Chrome、Mozilla Firefox、 Microsoft Internet Explorer
、Operaの最新のバージョンがサポートされています。他のブラウザ（Apple
Safari、Konqueror）も動作します。

##### サーバ

|要件           説|<|
|--------------------|-|
|*OpenIPMI*|IPMI のサポートのために必要です。|
|*libssh2*|SSH のサポートのために必要です。Version 1.0 以上|
|*fping*|[ICMP ping アイテム](/jp/manual/config/items/itemtypes/simple_checkes#ICMP pings)のために必要です。|
|*libcurl*|ウェブ監視のために必要です。|
|*libikseme*l|Jabberのサポートのために必要です。|
|*net-snmp*|SNMPのサポートのために必要です。|

##### Java ゲートウェイ

Zabbixをソースリポジトリまたはアーカイブから入手した場合、必要な依存関係はすでにソースツリーに含まれています。

Zabbixをディストリビュータのパッケージとして入手した場合、必要な依存関係はすでにパッケージシステムにより提供されています。

上記のどちらの場合でも、ソフトウェアはすぐに使用できるようになっており、追加ダウンロードの必要はありません。

ただし、自分のバージョンでこれら依存関係を提供したい場合（例えば、あるLinuxディストリビューション用にパッケージを作成している場合）、Javaゲートウェイの動作が確認されているライブラリのバージョンの一覧は以下のとおりです。Zabbixは、これらライブラリのその他のバージョンでも動作します。

次の表に、現在オリジナルコードのJava
ゲートウェイに同梱されているJARファイルの一覧を示します。

|ライブラリ                     Webサ|ト                                                                                                                                                                                                                                                                                    コメント|<|
|------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-|
|*logback-core-0.9.27.jar*|[http:*logback.qos.ch/\]\] \|0.9.27、1.0.13、1.1.1でテスト済み。 \| \|*logback-classic-0.9.27.jar*\|\[\[http:*logback.qos.ch/\|http:*logback.qos.ch/\]\] \|0.9.27、1.0.13、1.1.1でテスト済み。\| \|*slf4j-api-1.6.1.jar// \|\[\[http:*www.slf4j.org/ \|http:*www.slf4j.org/](http://logback.qos.ch/)   1.6.1、1.6.6、1.7.6|テスト済み。|
|*android-json-4.3\_r3.1.jar*|<https://android.googlesource.com/platform/libcore/+/master/json>|2.3.3\_r1.1と4.3\_r3.1でテスト済み。JARファイル作成方法については、src/zabbix\_java/lib/READMEを参照してください。|

Java gatewayは、Java 1.6以上でコンパイルおよび実行できます。Java
1.5でもコンパイルおよび実行できるはずですが、テストされていません。

#### データベースサイズ

Zabbix 設定データ
を保存するために一定量のディスク容量が必要ですが、ほとんど増えることはありません。

Zabbix
データベースサイズは、主に格納されたヒストリデータの量に関する以下の数量によって決まります。

-   1秒あたりに処理される値の数

Zabbixサーバが1秒あたりに受信する新しい値の平均個数です。たとえば、3000アイテムを更新速度60秒で監視する場合、1秒あたりの値の数は3000/60=**50**個になります。

これは、毎秒50個の新しい値がZabbixデータベースに追加されることを意味します。

-   ヒストリデータ用のhousekeeperの設定

Zabbixは、一定期間（通常は数週間から数ヶ月）だけ収集した値を保存します。新しい値を追加するたびに、データおよびインデックス用に一定量のディスク容量が消費されます。

そのため、1秒あたり50個の値を受信して、そのヒストリを30日間保存する場合、値の総数は（**30**×24×3600）×**50**=129,600,000、すなわち約1.3億個になります。

使用するデータベースと受信する値のデータ型（浮動小数点、整数、文字列、ログファイルなど）によって異なりますが、1つの値を保存するために必要なディスク容量は40バイトから数百バイトまでさまざまです。通常は、1つの値に約50バイトが必要です。上記の例で考えると、1.3億個の値を保存するために、1.3億×50バイト=**6.5GB**のディスク容量が必要になります。

-   トレンドデータ用のhouskeeperの設定

Zabbixは、テーブル**トレンド**の各アイテムについて、1時間の最大/最小/平均/個数の統計情報を保存します。保存されたデータは、トレンドグラフや長期間グラフの表示に使用されます。1時間という期間は、カスタマイズできません。

データベースのタイプにもよりますが、Zabbixデータベースに上記の統計情報を1回分保存するために必要なディスク容量は、128バイトです。たとえば、3000個のトレンドデータを5年分保存するとすると、1年分で3000×24×365×**128**
= **3.4GB**なので、5年間では、**16.8GB**が必要になります。

-   イベントデータ用のhousekeeperの設定

1個のZabbixイベントににつき、約130バイトのディスク容量が必要です。Zabbixで毎日発生するするイベントの数を算出するのは非常に困難です。最悪のケースとして、1秒に1個のイベントが発生すると仮定します。

イベントデータを3年分保存する場合、 **3**×365×24×3600×**130** =
**12.3GB**のディスク容量が必要になります。

以下の表に、Zabbixシステムに必要なディスク容量の算出に役立つ式を示します：

|パラメータ     必要なデ|スク容量を算出するための式（バイト）|
|--------------------------------|------------------------------------------------------|
|*Zabbix設定*   固|サイズ。通常は10MB以下です。|
|*ヒストリ*     day|\*(items/refresh rate)\*24\*3600\*bytes<br>items :アイテム数<br>days : ヒストリを保存する日数<br>refresh rate : アイテムの平均更新速度<br>bytes : 1個の値を保存するために必要なバイト数。データベースエンジンにもよりますが、通常50バイトです。|
|*トレンド*     day|\*(items/3600)\*24\*3600\*bytes<br>items : アイテム数<br>days : トレンド履歴を保存する日数<br>bytes : 1個のトレンドを保存するために必要なバイト数。データベースエンジンにもよりますが、通常128バイトです。|
|*イベント*     day|\*events\*24\*3600\*bytes<br>events :1秒あたりのイベント数。最悪のケースでは1秒に1個のイベントが発生すると想定します。<br>days : イベント歴を保存する日数<br>bytes : 1個のイベントを保存するために必要なバイト数。データベースエンジンにもよりますが、通常130バイトです。|

以上より、必要な総ディスク容量は、以下の式で計算できます：

**設定 + ヒストリ + トレンド + イベント**

算出したディスク容量は、Zabbixをインストールした直後から必要になるわけではありません。データベースサイズは、最初は増え続けますが、ある時点で一定の値を維持するようになります。どの時点で一定になるかは、housekeeperの設定によります。

::: noteclassic
分散設定のノードで必要なディスク容量も同様の方法で算出できますが、1つのノードにリンクされている子ノードの数にも依存します。
:::

#### 時刻の同期

Zabbixが動作するサーバでは、正確なシステム日時を維持することが非常に重要です。ホストの時刻を他のマシンの時刻と同期するものとしては、[ntpd](http://www.ntp.org/)が最もよく知られているデーモンの一つです。

------------------------------------------------------------------------

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