Weitere ähnliche Inhalte
Ähnlich wie Pandora FMS による Web サービス監視 (20)
Pandora FMS による Web サービス監視
- 2. 目次
‣ PandoraFMS について
‣ ポート監視(ネットワークサーバ)
‣ http 応答監視(プラグインサーバ)
‣ 標準プラグイン/Nagios プラグイン
‣ ブラウザを利用する監視(プラグインサーバ )
‣ Selenium WebDriver
‣ Pandora console 拡張機能
2
- 3. PandoraFMS ご紹介
‣ スペイン発の統合監視ツール
‣ コミュニティページ: http://pandorafms.org
‣ ドキュメント: http://wiki.pandorafms.com
‣ 開発: https://github.com/pandorafms/pandorafms
‣ 日本語コミュニティ: http://pandorafms.jp
‣ 最新リリースは 6.0SP1 ライセンスは GPLv2
‣ 商用版 (Enterprise 版)も http://pandorafms.com
3
- 7. お試し Docker 環境
‣ docker-compose 環境を用意しました
‣ 今回紹介する監視方法を試せます
‣ Docker ホストの 80 番ポートで pandora_console
が閲覧できます。ユーザ名: admin パスワード:
pandora
$ git clone https://github.com/rworksjp/docker-compose-osc2016-tokyo-spring
$ cd docker-compose-osc2016-tokyo-spring
$ cp dot.env .env
$ edit .env
$ docker-compose pull
$ docker-compose up -d mysql
$ docker-compose up -d pandora_console
$ docker-compose up -d pandora_server
$ docker-compose up -d pandora_agent
7
- 9. ポート監視
設定に必要な情報
‣ 「対象IP」と「ポート番号」
‣ 「TCP 送信文字列」と「TCP 受信文字列」
例: / に対する GET リクエストで 200 OK が返るか
‣ TCP 送信文字列: GET / HTTP/1.1^M^M
‣ TCP 受信文字列: 200 OK
http://wiki.pandorafms.com/index.php?title=Pandora:Documentation_ja:Remote_Monitoring
9
- 11. http応答監視(標準タイプ)
‣ 標準タイプのプラグインは登録したコマンドの標
準出力を結果として受け取ります
‣ 例えば curl を利用して監視するなら
‣ 前後に「_」を含む文字列は実行前にマクロとして
評価されます
‣ 真偽値の場合は 1 が正常、0 が障害を表します
http://wiki.pandorafms.com/index.php?title=Pandora:Documentation_ja:Remote_Monitoring
11
/bin/sh -c 'curl -sf --connect-timeout _field2_ "_field1_" > /dev/null && echo 1 || echo 0'
- 19. WebDriver のアーキテクチャ
‣ 主な構成要素
‣ クライアント(ライブラリなど)
‣ ブラウザドライバ(リクエストを受け
て実際にブラウザを動かす部分)
‣ Selenium Server (構成によっては省
略可能、複数ブラウザがある場合の
割り振り、ドライバ起動などを担当)
‣ 各要素は WebDriver specに従い通信
https://www.w3.org/TR/webdriver/
(実態は RESTful API)
‣ クライアント側がブラウザドライバの
実装を気にしなくて済む、独自ブラウ
ザドライバ実装によるモバイル対応な
どの利点
19
- 20. WebDriver を利用するツール
‣ 各言語向けバインディングを利用したスクリプト
‣ Selenium 公式: Java/C#/Ruby/Python/JavaScript
‣ サードパーティライブラリ(Perl/PHP/Haskel…)
‣ 今回は selenese-runner-java を使います
‣ SeleniumIDE (Firefox 拡張) でブラウザ操作を録
画
‣ 生成されたテストケース(WebDriver 以前の
Selenium 向け)を WebDriver に変換し実行
20
- 23. selenese-runner-java
お試し環境に JavaScript ベースの Web アプ
リケーションを同梱しています
そのアプリケーションを監視するテストケー
スファイル例
‣ open コマンドでページを開く
‣ waitForElementPresent コマンドで特
定の要素が表われるのを待つ
‣ click コマンドで特定要素のクリック
‣ assertText コマンドで特定要素に意図
した文字列があるか確認
23
- 25. PandoraFMS の console 拡張機能
シナリオ監視できても、実行結果の確認がしにくいと
いう問題が…
‣ PandoraFMS には監視コンソールを拡張する機能
があります。
‣ 監視プラグインと協調動作させるることで実行結
果の詳細を表示することもできます
http://wiki.pandorafms.com/index.php?title=Pandora:Documentation_ja:Anexo_Console_extensions_develop
ment
25
- 27. 宣伝
株式会社アールワークスでは Selenium WebDriver を利
用した Web シナリオ監視サービスを SaaS 提供してい
ます
‣ シナリオ監視用 pandora_console 拡張を含む
PandoraFMS Enterprise がフロントエンド
‣ ブラウザは Firefox, Chrome(PC/Android), IE を選択
可SaaS なのでブラウザ実行環境を用意いただく必
要がありません
‣ http://ms.rworks.jp/saas/s-scenario-monitoring/
27