16 設定のベストプラクティス
概要
このセクションでは、パフォーマンスと保守性に影響する主要な設定選択について要約します。
Zabbix の構成はそれぞれ異なりますが、これらのベストプラクティスは、必要に応じて調整するための基盤として利用できます。
各監視インスタンスごとに個別のホストを作成する
Zabbix のホストは、物理的なマシンやデバイスではなく、論理的なエンティティです。仮想マシン、データベース、コンテナ、ネットワークスイッチなど、独立した各インスタンスごとに個別のホストを作成してください。
この方法には、次の利点があります。
テンプレートと一括更新を類似ホストに使用する
Network switch 1 や Network switch 2 のような類似したホストでは、必要なメトリクスを含むテンプレート(Network switch template)を作成し、ホストをホストグループ(Network switches)にまとめることができます。
新しいスイッチを追加する際は、ホストを手動で複製する代わりに、Data Collection -> Hosts の一括更新を使用してテンプレートをリンクできます。
マスターアイテムと依存アイテムを設定してリクエストを最小化する
対象エンティティへのリクエストを最小限に抑えるには、マスターアイテムを設定して1回のリクエストでデータを収集し、その後、前処理を行う依存アイテムを使用して特定の値を抽出します。
たとえば、マスターアイテムで複数のメトリクスを含む JSON または XML 応答を収集したり、複数の列を返すデータベースクエリを実行したりできます(例: 開いている接続数、異常終了した接続数、許可される同時接続の最大数、起動以降の累積接続総数)。依存アイテムは、それぞれの値を個別に解析して保存します。
収集後はマスターアイテムの履歴を破棄し、依存アイテムのデータのみを保持します。
必要に応じて Zabbix プロキシを導入する
ホストがすべて Zabbix サーバーと同じローカルネットワーク内にあり、拡張性やパフォーマンスに関する懸念がない場合は、プロキシは不要かもしれません。
より大規模または複雑な環境では、プロキシを使用することで負荷をより均等に分散できます。
次のような場合に Zabbix プロキシを追加します。
-
ファイアウォールの背後にある複数のホストを、さまざまなメトリクス収集方法で監視する場合。
プロキシはホストからデータを収集して Zabbix サーバーに転送し、開放する必要があるファイアウォールのポート数を減らします。 -
リモート拠点、支社、またはネットワークを監視する場合。
リモート拠点の Zabbix プロキシは、ネットワーク障害中もデータ収集を継続し、接続が復旧するとデータを送信します。 -
大規模な導入環境を管理する場合。
多数のホストがある場合や、1 秒あたりに収集する値の数が非常に多い場合は、プロキシを導入してサーバーの負荷を軽減し、パフォーマンスを向上させます。
独立したシークレットマクロ取得の設定
secret ユーザーマクロは、シークレットテキストまたはシークレットボールトマクロのいずれかとして使用できます。
デフォルトでは、シークレットマクロの値は Zabbix サーバーによって取得され、プロキシに伝播されます。
シークレットボールトマクロのセキュリティをさらに強化するには、マクロ値 を Zabbix サーバーとプロキシがそれぞれ独立して取得するように設定します。