matobaの学んだことスマートフォン用の表示で見るmatobaの学んだこととあるPythonエンジニアのブログ。ソフトウェア開発、執筆活動、ライフログ。統合監視ツールって何?って人に向けたnagiosの説明2018-03-14統合監視ツールって何?って人に向けたnagiosの説明nagios仕事でnagiosを使うときがあります。僕もまだ勉強中ですが、少し前の自分のような人と、少し先の自分のためにnagiosについて説明します。(少し先の自分は、この記事を見て、微妙なところにツッコミをいれられる予定です。)nagiosとはnagiosは、ホストを監視するミドルウェアです。運用監視ソフトウェアとか統合監視ツールとか呼ばれてます。ネットワークで繋がったサービスを監視できます。サーバーとエージェントからnagiosはできているようです。監視対象のサーバーの情報を集めるのがエージェントです。CoreとかNagiosホスト、エージェントのことをリモートホストと呼ぶことがあるようです。nagiosって何を監視できるの?nagiosは、ホストを監視できます。あるホスト『example.com』とか『192.168.10.1』にpingを打って返ってくるのかどうか、あるホストでsshデーモンが起動しているかあるホストのMySQLサーバーが起動してるかとかです。シェルでコマンドを実行した結果からわかる情報の監視ができます。言え、SNTPトラップをキャッチすることもできます。他の監視ソフトは何があるの?運用監視ソフトウェアの検索すると、オープンソースということで、Zabbixとよく比較されてるようです。商用のソフトウェアだともっとたくさんあると思います。調べてみるとたくさん出てきます。他の監視ソフトと何が違うの?まず、nagiosとZabbixは、オープンソースです。nagiosとZabbixを比べるとnagiosは、データベースを使いません。結果はプレインテキストに保存します。設定も、設定ファイルで管理します。Zabbixは、データベースを使います。設定はブラウザ上で行います。設定ファイルもあるのかもしれないですが、ざっと検索すると、ブラウザ上での設定方法が紹介されてるのをよく見かけます。Web上の評判を見てる限り、nagiosは設定が細かくできて自由度が高く、玄人向けの印象です。APMってのとは違う?統合監視ソフトは、よくモニタリングツール。モニタリングツールとか、監視ソフトというと、APMというソフトを聞くこともあります。これは何が違うの?というと、APMはアプリケーションの性能を測定します。PythonだったらDjangoやgunicorn、JavaScriptならnode.jsに組み込んで、パフォーマンスを測定するようです。nagiosってどうやって監視するの?nagiosは、コマンドをシェルで実行して、その結果を見てるようです。リモートホストを監視する場合、sshで接続してコマンドを実行しているようです。nagiosは、どう監視するかには、プラグインを使いますが自分でプラグインを作ることもできます。一度、ゼロからインストールして監視コマンドを実行してみるとわかります。以下の本の評判が良さげだったので買いました。見るパラパラと見ると、nagiosのプラグインや設定値のカタログのようになっています。一通りどんなプラグインや設定値項目があるか、には目を通したのですが、300とか400は設定やプラグインが書いてあって、ふむふむ。