フォーム読み込み中
大手クラウドベンダ(Alibaba Cloud(以降Alibabaと表記)、 Amazon Web Services(以降AWSと表記)、 Microsoft Azure、Google Cloud(以降Googleと表記))の統合監視サービスへ迫っていきます。
※クラウドサービスの並びはアルファベット順となります
サービスを監視する道具として、オンプレであれば、NagiosやZabbixなどを選ぶこともあるでしょう。またSaaSとしてDatadog、Mackerel、New Relicなどを導入している方もいるかもしれません。
本記事は、クラウドのサービスをそれらでどう監視するか、ではなく、クラウドに備わっているネイティブな監視サービス、また、個別の監視サービスについてではない、統合された監視サービスへ焦点をあてた内容となっています。
クラウドを利用して開発するアプリケーションやツールをなぜ監視をしないといけないのでしょうか。
提供するサービスが安定稼働し、品質が保証されていることを運用時に把握するためです。またその品質が脅かされそうな事態になった場合に、原因と対策を検討するためにも必要です。
障害が発生してしまった場合でも、いつ何が起きたのかを正確に把握できていなければ復旧も改善も難しくなります。
リリース時の信頼性と生産性を上げるために(SREやDevOpsの観点でも)、開発時から運用視点でデータを眺めることも多くなっているでしょう。
さらに、クライアントへ提示するサービスレベル目標(SLO:Service Level Objectives)、サービス品質保証(SLA:Service Level Agreement)があれば、そこで決めたパーセンタイルを満たしているかどうかをテレメトリとしてトレースしなければなりません。
クラウドの監視サービスの機能を紹介する前に、そもそもクラウドの何を見ないといけないのでしょうか。
さらにその前段として、クラウド利用者が、なぜクラウドを監視しないといけないのでしょうか。
管理責任の範囲がOn-Premises、IaaS、PaaS、SaaSで異なるためです。
出典:https://s7280.pcdn.co/wp-content/uploads/2017/09/iaas-paas-saas-comparison.jpg.optimal.jpg
また、クラウド提供側の管理責任となっている要素でも、そのワークロードは利用者が把握しないといけません。例えば、自動拡張なしの100GBのディスクを選択したら、それ以上は使えません。非機能の定義のもとに機能要求は実現されているとも言えるでしょう。
では、当初の疑問に戻り、何を監視しないといけないのでしょうか。主要なところをあげてみます。
オンプレの時代と変わっていない、という印象を抱かれたかもしれません。クラウドに移行しても監視の要素は減るとは限りません。逆にマイクロサービス化させたりすると、監視要素と複雑性が増えていくこともありえます。
クラウドへ移行しても、運用環境の整備と維持の大変さが大きく軽減しないことへ不安を抱かれたかもしれませんが、大丈夫です。
各クラウドベンダは、便利な監視サービスを提供してくれています。さらに朗報として、各種の監視系サービスが1つの運用スイートとして統合されてきている流れがあります。
| Alibaba | AWS | Azure | ||
| 統合監視 サービス名 | CloudMonitor | Amazon CloudWatch | Azure Monitor | Cloud Monitoring |
例として、AzureのMonitorサービスへアクセスしてみます。
監視の要素が一画面にそろっています。本記事内で繰り返し、"統合" + 監視サービスと表記していた理由です。
AWSのCloudWatchを統合監視として表現していることに違和感を抱かれるかもしれません。例えば、ARMの要素がなく、X-RAYとの連携が必要では、などの理由からです。AWSのCloudWatchを開いてみると、そこにX-Rayのボタンが見えるようになっています。監視の目的が異なるサービスは分かれていますが、各種の監視スイーツは、主となるモニタリングサービスでコントロールできるように一元化されてきています。
統合監視サービス上で、先の監視項目が本当に網羅されているか確認していきましょう。
Alibaba | AWS | Azure | |||
リソース | インフラ | ○ | ○ | ○ | ○ |
ネットワーク | ○ | ○ | ○ | ○ | |
トラフィック | IN側 | ○ | ○ | ○ | ○ |
OUT側 | ○ | ○ | ○ | ○ | |
ログ | アプリケーション | ○ | ○ | ○ | ○ |
インフラ | ○ | ○ | ○ | ○ | |
ネットワーク | ○ | ○ | ○ | ○ | |
APM | トレーシング | ○ | ○ | ○ | ○ |
プロファイラ | ○ | ○ | ○ | ○ | |
データベース クエリ | ○ | ○ | ○ | ○ | |
外部監視 | エンドツーエンド | ○ | ○ | ○ | ○ |
プロコンの比較になりませんでした。すでにクラウド側で充実した監視機能を提供してくれている証左でもあります。
リソースのモニタリング機能を有効にすれば、基本的なメトリクスは収集されます。ハイパーバイザーから見えないOSレイヤーのメトリクスなどは、エージェントをインストールし、デーモンとして稼働させることで取得できます。
標準外のメトリクスも、カスタムメトリクスとしてのインターフェースがあるため、任意の項目を取得できます。エージェントの設定ファイルで収集したい項目やログを指定できるため、固有のサービスの性格に合わせた、柔軟な運用ができるようになっています。
アプリケーションレイヤもオープンテレメトリに準じた作法で、トレース・スパン情報などが得られます。
閾値を設定してアラームを飛ばすことも可能です。またその閾値も単純な一定の値だけではなく、通常とは異なる振る舞いがあれば、その変化をAIに認識させて判断させることもできます。
編集権限とリード権限をログインアカウントごとに制御することもIAMを利用して行えます。
Azureを例に、運用時のダッシュボードイメージも見てみましょう。
出典:https://docs.microsoft.com/ja-jp/azure/azure-monitor/overview
画面から必要項目をクリックしていくだけで、驚くほどリッチで有益なダッシュボードができあがります。
モニタリングの運用費用はどの程度でしょうか。メトリクスとログが内訳の多くを占めますので、そこを中心にAWSのCloudWatchで概算見積りをしてみましょう。
(クラウド構成例)
(AWS CloudWatch 無料枠)
(AWS CloudWatch 有料枠)
(概算)
仮に、kubernetes構成をとっており、各仮想マシンで複数のpodを動かしていたらどうなるでしょうか。ログ量は増えるかもしれません。あくまで参考として見ていただき、実際に監視構成を考える場合は、詳細な計算をご実施いただければと思います。
(各クラウド 見積もりサイト)
クラウドを運用するための、クラウドサービスという観点での紹介記事でした。
運用は24時間365日、間断なく行い続けなければならない業務です。その大事さは分かっていても、特に開発側へリソースが割かれる場合などは、準備が後ろ向きなりがちです。であれば便利な運用サービスを利活用していきましょう。安心して任せられる環境は整ってきています。
また、ソフトバンクでは、お客さまのパブリッククラウドの導入から運用までをトータルでご提供するMSPサービスも提供しています。
ソフトバンクはAWS アドバンストティアサービスパートナーです。「はじめてのAWS導入」から大規模なサービス基盤や基幹システムの構築まで、お客さまのご要望にあわせて最適なAWS環境の導入を支援します。
Microsoft Azureは、Microsoftが提供するパブリッククラウドプラットフォームです。コンピューティングからデータ保存、アプリケーションなどのリソースを、必要な時に必要な量だけ従量課金で利用することができます。
Google サービスを支える、信頼性に富んだクラウドサービスです。お客さまのニーズにあわせて利用可能なコンピューティングサービスに始まり、データから価値を導き出す情報分析や、最先端の機械学習技術が搭載されています。
Alibaba Cloudは中国国内でのクラウド利用はもちろん、日本-中国間のネットワークの不安定さの解消、中国サイバーセキュリティ法への対策など、中国進出に際する課題を解消できるパブリッククラウドサービスです。
MSP(Managed Service Provider)サービスは、お客さまのパブリッククラウドの導入から運用までをトータルでご提供するマネージドサービスです。
条件に該当するページがございません