オープンソース

OSSのおすすめ監視サーバ・監視ツール比較21選(2023年版)

サーバを効率的に管理するのに欠かせない監視サーバですが、様々なソフトウェアがリリースされています。監視サーバは、以前は製品を利用することが多い分野でした。しかし、最近ではオープンソースのソフトウェアの機能が向上し、オープンソースソフトウェアを使う場合も多くなりました。ここでは、OSSの監視サーバの選定ポイントを紹介し、いくつかの監視サーバソフトウェアの比較をしてみます。

【Webセミナー】情シス担当者向け、社内のIPアドレス管理の問題を解決!OSSのIPアドレス管理ツールセミナー

日程: 3月15日(金)Webセミナー「BigBlueButton」を使用します。
内容: このセミナーでは、OSSのIPアドレス管理ツールphpIPAMを紹介します。
ご興味のあるかたはぜひご参加ください。

セミナー申込

ネットワーク・サーバ監視ツール

ネットワーク・サーバ監視ツールは、サーバ上で動作する各種のサービス、ネットワーク機器などがサービスレベルで正しく稼働しているかを監視するツールです。サーバの停止やサービス・ダウンを検出すると、管理者に何らかの方法で通知を行うのが一般的です。管理者は業務やサービスの停止や影響を最小限に抑えるため、少しでも早く原因を特定する必要があります。そのため、グラフやマップなどを使ってサーバや機器の状態を可視化します。

監視ツールによって、サービス・ダウンを検出するためのサービス監視は、低レベルなものから高レベルなものまであります。例えば、サーバの該当サービスで利用するTCPのポートが利用できるとか、サーバ上でサービスプロセスが稼働しているかという比較的低レベルな監視のみに対応している監視ツールもあります。一方で、WEBサイトやメールサーバに実際にアクセスしてレスポンスコードが正常かを確認する、より高レベルな監視が可能な監視ツールもあります。さらに、サーバから返されるレスポンス内容までをチェックして、想定された応答が返っているかまで確認する高度な監視ツールもあります。監視サーバのソフトウェアによって、監視できるサービスやレベルには差がありますので、注意が必要です。

  1. Zabbix
  1. Cacti
  1. Icinga2
  1. Prometheus
  1. Nagios
  1. munin
  1. Hinemos
  1. Pandora FMS

1. Zabbix〜監視ツールのOSSとしてはもっとも人気のあるソフトウェア

Zabbix監視サーバ

Zabbixは、サーバ、ネットワーク、アプリケーションを集中監視するための統合監視ソフトウェアです。オープンソースの監視ツールとしては知名度も高く、とても人気があります。

Zabbixは、状態監視、障害検知、通知機能を備えた監視ツールです。ネットワークの監視に適したSNMPとSNMPトラップに対応していています。また、Zabbixエージェントと呼ばれる独自エージェントを監視対象のサーバにインストールすることにより、詳細なサーバ監視を行うこともできます。そのため、システム全体をZabbixサーバだけで監視することが可能です。また、Zabbixサーバ上にスクリプトを作成することで、アプリケーションの監視を独自に拡張できたり、障害検知時にスクリプトを実行したり、Zabbixエージェントに対象サーバ上でスクリプトを実行させるなど自由に拡張を行えるというのも特徴です。

ZabbixではWebインタフェースから設定を行い、収集データはMySQLに保存します。監視の設定をすべてWebインタフェースから行えるため、比較的設定が容易です。また、データベースに保存した収集データからグラフを作成し、リソース使用状況の傾向分析や障害分析を行うこともできます。

Zabbixの監視アラートをntfyに送信し、プッシュ通知を行うことも可能です。デスクトップ画面やスマホ画面に通知が来るので、e-mailで運用している場合に比べ、担当者がすぐに通知に気が付くことができます。

多数のサーバやネットワーク機器を監視する場合のために、Zabbix Proxyという機能も用意されています。そのため、大規模なシステムの監視を行うことができます。さらに、Zabbix5.0以降では、SAML認証が利用可能になり、シングルサインオンのシステムにも組み込むことができるようになりました。

Zabbixは、日本でも多くの企業が商用サポートを行っていますので、必要に応じて日本語の有償のサポートを受けることが可能です。このように良いことずくめのZabbixですが、監視設定の項目が非常に多いため、監視の設定が難しく利用の難易度は高めです。また、現在の監視状態を一目で把握することが難しいという欠点があり、サードパーティの監視コンソールも登場してきています。

Zabbix構築事例 お問合せ

2. Cacti〜サーバやネットワーク機器の情報をグラフ化して管理できる監視ツール

Cacti監視サーバ

Cactiは、SNMPを使用し、サーバやネットワーク機器から取得した情報をグラフ化するモニタリング・ツールです。また、Cacti Users提供のプラグインをインストールすることで監視ツールとしても利用できます。Zabbixに比べて、利用の難易度が低いため人気のある監視サーバのソフトウェアです。

もともと、CactiはMRTGの代替ツールとして開発されました。MRTGがテキストファイルで設定、データを管理するのに対して、Cactiはデータの保存にRRDToolを使用しており、ホストの追加やインタフェースの追加など、すべてWEBインタフェースを通して設定変更が可能です。WEBインターフェースは、日本語化もされています。
作成される多くのグラフをサーバやネットワーク機器の機種や用途などで分類し、ツリー構造で管理することができます。また、設定変更などすべての権限を持った管理者ユーザや、グラフを見ることしか出来ない一般ユーザなど、ユーザごとの権限を設定することもできます。さらに、LDAPサーバを使ったユーザ管理にも対応しています。

情報を収集するプログラム(ポーラ)を高速化し、必要に応じて分散することで多数の監視対象にも対応できる設計になっています。

Cacti構築事例 お問合せ

3. Icinga2〜設定の自由度が高い監視ツール

icinga2監視サーバ

Icinga2は、Nagiosという監視ツールから派生して開発されたオープンソースの監視ツールです。Icinga2では監視の種類も、pingやhttp、smtp、dns等の基本的なプロトコルや、CPUやメモリ、ディスク容量等のリソース監視など様々な監視を行うことができます。また、ElasticsearchやRedisのような比較的新しいソフトウェアの監視も対応しています。

Icinga2構築事例 お問合せ

4. Prometheus〜オートスケールに対応できる監視ツール

prometheus監視サーバ

Prometheusは、対象数が多いシステム動的に台数が変化するシステムに対応することができます。Prometheusは複数のコンポーネントで構成されていますが、すべてのコンポーネントを簡単にインストールして起動することができます。ソフトウェアのパッケージをダウンロードして起動するだけで利用を開始することができコンテナで起動することも可能です。サービス検知機能という機能を利用して、一定のルールに従ってサービスを自動で検知し、対象の追加・削除を自動化することができます。

サービスの検知は、オートスケーリングを行うことのできる様々な基盤に対応しています。DNS SRVレコード、AWS EC2インスタンス、AzureVM、Docker Swarmエンジン、OpenStack Nova、GCP GCEインスタンス、KubernetesのREST APIなどの環境でサービスを検知することができます。これらの基盤では、リソースの状況やパフォーマンスに応じて自動的にインスタンスを増加したり、減少したりすることができます。Prometheusなら、このようなインスタンスの増減に対応して、最適な監視を実現することができます。

お問合せ

5. Nagios〜監視ツールとして長い歴史があり人気も高いソフトウェア

nagios監視サーバ

Nagiosとは、オープンソースの統合監視ソフトウェアの中でも歴史のある監視ツールです。システムとネットワークの稼働状態を監視する機能を提供します。サーバーとネットワーク機器の稼働状態を監視する機能を提供します。異常を検知すると、それを管理者にメールで報告する機能などを備えています。OSSの監視ツールの中では、利用実績や日本語の情報が多くあり、比較的情報を入手しやすいのが特徴です。

基本機能は、サーバーにPINGを飛ばしての「死活チェック」と、クライアントとしてサーバーにアクセスして稼働状況を監視する「アクティブ・チェック」のみです。しかし、様々なプラグインを利用することで多様なサーバー機能をチェックすることができます。TCP/UDP汎用のプラグインも用意されているため、独自プロトコルを利用したサービスレベルの監視にも対応できます。

Nagiosはデータ管理をすべてファイルベースで行っており、データベースを使用しません。障害が発生したかどうかの履歴もテキストファイルに記録するため、作成できるグラフは障害履歴に関するもののみであるという欠点があります。

お問合せ

6. munin〜OSSのリソースモニタリングソフトウェア

munin監視画面

muninは、リソースモニタリング用のソフトウェアです。エージェント型でサーバーから情報を収集し、Cactiと同様にRRDToolを利用してグラフ表示します。muninには通知機能がありませんので、監視と通知に特化したNagiosと組み合わせて利用する例が多いです。

muninは、MRTGと同様にモニタリング時に随時グラフを作成しますので、サーバーの台数が増えると負荷が高くなり、あまり多くの対象をモニタすることはできません。小規模なシステムには向いています。

お問合せ

7. Hinemos〜国産の運用管理ソフトウェア

Hinemosは、非常に高機能な国産のオープンソースの運用管理ソフトウェアです。運用グループごとにコンピュータをグループ化し、ジョブの管理や性能管理、情報の収集蓄積などを行うことができる高機能なソフトウェアです。その機能の一つとして、状態監視をサポートしています。HTTPやSQLなどの高レベルのサービス監視や、syslogの監視も行うことができます。SNMPおよびSNMPトラップにも対応しています。

ジョブ管理に対応しているため、JP1などの製品の運用管理ソフトウェアからのリプレースで利用されることが多いようです。NTTデータ社からはエンタープライズ版が提供され、製品サポートも受けることができます。

お問合せ

8. Pandora FMS〜サーバの集合体としてシステムをモニタリング

Pandora FMSは、エージェントによる情報収集とSNMPの両方に対応したモニタリング用のソフトウェアです。オープンソース版、SaaS(クラウド)版、エンタープライズ版があり、SaaS版、エンタープライズ版を使えば、日本でもサポートを受けることができます。

SNMP、SNMPトラップ、エージェント型の監視のすべての方法に対応しています。メールの送信や、外部プログラムとの連携も行うことができます。直感的で操作性に優れたコンソールを備え、スマートフォンなどからの管理にも対応していることが特徴です。また、サーバー単体でなく、サーバーの集合体としてのシステムをモニタリングすることができます。複数の監視サーバーを、一括管理する機能があるため、大規模なシステムにも対応することができます。

ただ、オープンソース版では、テンプレートなどの機能が提供されていないなど、制約があります。また、構築方法や利用方法の情報が、あまり出回っていません。

お問合せ

OSSのおすすめ監視サーバ・監視ツール

ネットワーク・サーバ監視ツール
ここでは、ZabbixCactiIcinga2PrometheusNagiosmuninHinemosPandora FMSについて紹介します。
ログの管理・監視システム
ここでは、SyLASGraylogOpenObserversyslogsyslog-ngswatchについて紹介します。
稼働状況の可視化ツール
ここでは、CockpitMRTGcollectdについて紹介します。
死活監視ツール
ここでは、fpingについて紹介します。
監視コンソールとアラート管理のツール
ここでは、GrafanaAlertmanagerHatoholについて紹介します。
監視サーバ・ソフトウェアの選定ポイント
ここでは、監視サーバを選定する場合のポイントについて紹介します。
Linuxサーバの監視
ここでは、Linuxサーバの監視を行う場合に利用できるソフトウェアと注意点について紹介します。

OSSのおすすめ監視サーバ・監視ツール比較21選(2023年版)の先頭へ