SensuはSonian社(現在はHeavy Water Operations社)が開発したシステム監視ソフトウェアだ。システム監視の自動化を目的としたフレームワーク製品で、Nagiosの問題点の改善を基本コンセプトとして開発されており、Nagiosとはプラグインなどで互換性を持っている。
2011年9月にVer 0.9.0が公開され、現在の最新バージョンは2014年7月28日にリリースされたVer 0.13.1。本バージョンでは旧来存在したダッシュボード機能「Sensu-dashboard」が廃止され、代わりにNode.jsで動作する「Uchiwa」が提供されている。
「Sensu」「Uchiwa」というネーミングから国産製品のように考えられられることもあるが、米国企業の製品で残念ながら日本語対応はしていない。
SensuはEventMachineライブラリを使用したRubyで作成されており、モニタリングツールとして大量のデータを監視処理できるように設計されている。Sensuは集中管理サーバーとエージェントの形で構成されており、ネットワーク通信途絶は他製品と同様、集中管理サーバーからの検知となるが、クライアント内にインストールされたエージェントが集中管理サーバーに対して、監視対象への追加申請を自動的に行う機能が存在する。障害発生時もクライアント側からサーバーに通知を行うことで、障害検知の速度や情報の正確さが向上する。
サーバー・クライアント間の通信にはメッセージ思考アーキテクチャを採用しており、RabbitMQ・JSONペイロードを使用して通信する。このRabbitMQは非常に軽量で信頼性があるミドルウェアであり、ヴイエムウェアが「VMware vFabric」にも採用している。
インストールは、LinuxであればSensuリポジトリを追加することで、yum/aptコマンドでインストールすることが可能。設定ファイルはJSON形式のファイルを使用する。
SensuのGitHubのリポジトリにSensu本体のインストールと設定ファイルの編集に使用する、ChefレシピおよびPuppetマニフェストのサンプルが公開されている。サーバーはLinuxのみで動作するが、エージェントはLinux/Windows版が提供されている。新しいダッシュボードであるUchiwaについてはSensuとは別にインストールする必要がある(Chefでのインストールも可能)。
機能は、sensu-server/sensu-client/sensu-api/sensu-dashboardと分かれている。ダッシュボードは、前述の通りUchiwaを使用。ダッシュボードには、sensu-apiを経由してRadis/RabbitMQ上で取得したデータを表示するため、APIを利用したカスタムページを作成することも可能だ。
この他、Nagiosで利用したプラグインをそのまま利用することもできるため、Nagiosの監視機能を継承することが可能。Sensuのコミュニティも活発で、コミットも頻繁に行われており、製品更新も速い。
クライアントノード側で監視対象の追加が自動で実行されるため、システム監視基盤の自律運用が可能。この点で、オートスケールなどでサーバーの増減が発生したり、Immutable Infrastructure(Disposable Infrastructure)のコンセプトで設計されたシステムの監視基盤として活用するケースが考えられる。新しいコンセプトの製品であり、これからさらに製品の進化や用法の研究が進むことで、より利便性が向上することが期待されている。
Copyright © ITmedia, Inc. All Rights Reserved.