Nの外部記憶

作ったアプリや、作成時の備忘録を書くブログ。やりたいことが多すぎるッ!

システムを監視するにあたって考えるべき点について

はじめに

オライリーから出ている「入門 監視」を読んで自分なりにまとてみた。パート2。
前回はアンチパターンについてまとめてみましたが、今回は監視するときの考慮点についてまとめます。

考慮点

  • 各監視項目において特化したツールを組み合わせて監視プラットフォームを作る
  • ユーザ視点で監視を設計
  • SaaSを使うべき
  • 継続的な改善の実施

ツールを組み合わせた監視プラットフォーム

システムで実施している監視を変更したい場合、統合運用管理ソフトを利用していると、
監視プラットフォーム全体を変更せざるを得ない可能性が出てくる。

一方、特化したツールを組み合わせて作成した監視プラットフォームだと、 変更したい箇所を変更、最新にすることが可能。

監視プラットフォームを作る際、以下の点をおさえて組み合わせる。

  • データ収集(方法・収集内容)
  • データの保存方法
  • データの可視化
  • データの分析・レポート化
  • 通知方法

データ収集

収集する方法としては、2つ。

  1. ポーリング
  2. トラップ

収集する内容は大まかに分けると2種類。

  1. メトリクス
  2. ログ

データの保存方法

  • メトリクス:TSDB
  • ログ:Elasticsearch

※TSDB:タイムスタンプをキーとして格納される時系列で管理することに特化したDB

可視化

  • 1つのサービスやプロダクトに焦点を当てたビューにするべき。(無駄にたくさんの情報を表示しない)
  • そのビューも、プロダクトをメインにかかわっている人が作成するべき。

分析・レポート

  • SLAを考慮する場合に必要

アラート

  • アラートを出すために監視をするわけではない。
  • あくまでも機能としての一部であり、必ず出さなくてはいけないわけではない。

ユーザ視点で監視を設計

  • 設計する上で、まずユーザ側から見て問題となりそうなところから監視設定をする。
  • ユーザにとっては、サーバ内にいくつのジョブ・プロセスが動いているかなどは関係ない。
  • どの問題を知ることができれば、ユーザに影響がでていることがわかるか」が重要

SaaSを使うべき

  • 自社内で作成するより断然お金がかからない。
  • 専門の人が対応しているので、自社内で作成するよりはるかに高性能
  • もちろん工数短縮にもなる

継続的な改善の実施

  • 監視プラットフォームは簡単につくれるものではない。
  • 今までの経験等があり、現在の監視ツール等が存在している。
  • 常に監視状況を見直し改善を行ってこそ、いい監視プラットフォームができあがっていく

おわりに

自分は、Hinemos・Zabbix・JP1ぐらいしか知らなかったので、「組み合わせて監視プラットフォームを作り上げる」というのが、新鮮さを感じた。理屈を見れば確かにその通りだと思った。
ただ、導入しやすさというところでは、パッケージになっているものがいいのだろうなーと。
まだ半分くらいしか読めてないが、まだまだ知識が足りないことを痛感した。何回か読み返す必要がありそうだ....。