• AWS入門
  • AWS

AWSの運用を可視化するAmazon CloudWatch、その利用価値とは

システムの動きを捉える「可視化」は、セキュリティ上、運用効率上で重要なテーマであることは言うまでもありません。オンプレミスよりコスト優位とされるクラウドコンピューターの利用においても、それは変わらないのです。Amazonでは、AWSというパブリッククラウドで、多くのアプリケーションサービスを提供していますが、そのなかに、AWSの動きを可視化できるAmazon CloudWatchがあります。今回は、このAmazon CloudWatchについて解説します。

Amazon CloudWatchとは

Amazon CloudWatchとは、どのようなものなのでしょうか。

Amazon CloudWatchとは

システムのリソース不足は、IT技術者にとっては心配のもとです。とはいえ、常に余裕のある容量を用意するとなると、過剰の設備となります。また、今どのようなアプリケーションが使われているのか、無駄なシステムの稼働はないかなど、適切な運用を促すようにすることで、最適なシステム環境と、最良のコストバランスを得ることができます。そのためにはシステムの可視化が不可欠ですが、Amazon CloudWatchは、AWS上のアプリケーションのリアルタイム・モニタリングの機能を提供するサービスです。

Amazon CloudWatchの仕組み

Amazon CloudWatchで利用システムを可視化する方法は、システムモニタリングデータと運用データをログ、メトリクス、イベントという形式で取得することで実現します。それらのシステムやアプリケーションの運用情報を視覚化して、利用者に提示する仕組みがモニタリング機能です。さらに、これらの情報から察知したイベントの変化などに合わせ、アラームを発信したり、利用システムの自動切り替えなどを設定したりすることが可能なのです。それぞれの形式の概要は、以下のとおりです。

  • ログの収集:CloudWatch Logsにより、AWSからのログ収集のほか、オンプレミスのシステムからも条件が適合すればログを取得できます。ログは蓄積、フィルタリング、グラフ化、アラート機能の利用などが可能です。
  • メトリクス:インスタンスからシステムの稼働状態を定量化し、CloudWatchに送信することで、リスト表示やグラフ化など、わかりやすいかたちでシステムの状態を把握できるようにする機能です。検知レベルの設定で、アラート表示を設定することもできます。
  • イベントの設定:CloudWatch Eventsは条件設定したイベントが発生すると、条件に合致したものの処理を自動的に行う機能です。

可視化やアラート設定という点では類似性がありますが、それぞれの適用場面で使い分けることで、利便性の高い可視化・自動化ツールとなるわけです。

Amazon CloudWatchの使い方

続いて、具体的な利用場面について見てみましょう。

どのようにモニタリングするか

CloudWatchに集積された情報は、AWS Management Consoleなどの上にグラフなどにして表示し、常時、システムの状態を把握することが可能です。

Amazon CloudWatchダッシュボードは、CloudWatch コンソールにあるカスタマイズすることができるホームページです。Amazon CloudWatchダッシュボードを使うことで、複数の異なるリージョン(地域)にまたがっているリソースでも、ひとつの画面でモニタリングすることができます。CloudWatch ダッシュボードを使用することで、AWS上 のリソースのメトリクスや、カスタマイズしたアラームの状態などを表示させることができます。「AWS CLI(AWSサービスを管理するための統合ツール)」、「CloudWatch API(APIを利用してCloudWatchを自社に適したように設定)」、「AWS SDK(希望する開発言語やプラットフォームでAWSのサービスにアクセスし、管理する)」などからCloudWatchへのアクセスや設定が可能です。

どのような場面で効果的か

定期的に把握できるイベントならば手動での切り替えも可能ですが、偶発的あるいは非計画的な動きへの対応は難しい面があります。その点、Amazon CloudWatchでルール等を定義しておけば、予想外の動きに応じたアラームの発信はもちろん、自動的に利用するシステムを切り替えるなどの設定もできます。

予期せぬ動きへの備えだけではなく、充分に活用されていないインスタンスを監視・抽出することもでき、自動的に停止することなどで、従量課金制(使った分のみの利用料の請求)のAWSでは、パフォーマンスに合った適切なコスト管理も可能になります。

このようにAmazon CloudWatchは、システムの監視のためのモニタリングだけではなく、自動設定などにより、運用管理の負担やコストを削減することもできるのです。

Amazon CloudWatchの料金体系

それでは、Amazon CloudWatchの料金体系はどのようになっているのでしょうか。

基本体系

Amazon CloudWatchも、他のAWSサービスと同様に、導入のための初期費用や、月々の基本料金のようなものはありません。従量制の料金体系となり、利用量に応じた料金を月末に支払うだけです。

無料枠と有料枠

AWSのEC2やS3などのサービスには無料利用枠が用意されており、検討の段階で試用して評価し、そして本格的な導入へ移行できるようになっています。Amazon CloudWatchにも無料枠が用意されており、以下を実際に試してみることができます。

  •  メトリクス:基本モニタリングのメトリクス(5分間隔)、詳細モニタリングのメトリクス 10 個 (1 分間隔)、 100 万の API リクエストが可能ですが、GetMetricData および GetMetricWidgetImage には適用されません。
  • ダッシュボード:毎月最大 50 個のメトリクスに対応するダッシュボード 3 個までです。
  • アラーム:10 件のアラームメトリクスが設定できますが、高分解能アラームは無料枠からは対象外となります。
  • ログ: 取り込み、ストレージのアーカイブ、Logs Insights クエリによってスキャンされたデータなど、 5 GBまでのログが取得できます。
  • イベント:カスタムイベントを除くすべてのイベントが対象となります。

これらのモニタリング機能を試すために適したアプリケーションも多数用意されているので、実際の利用を想定したAmazon CloudWatchのパフォーマンスをシミュレーションすることができます。

ただし、この無料利用の枠内だけでは、機能や利点の確認には不十分であることもありえます。他の監視ツールと併用して比較したり、一時的に最小限の範囲に限定し、有料枠で使ってみたりすることをおすすめします。Amazon CloudWatchは初期費用、月額基本料が不要ですので、試用期間の利用料だけのお支払いですみます。AWSの料金体系はすべてそのような設定ですので、Amazon CloudWatchの試用を機会に、他に興味のあるAWSと合わせて試してみることも検討できます。

さて、本格的なAmazon CloudWatchの導入の場合を考えてみましょう。やはり気になるのは料金ですが、有料枠は「AWS簡易見積りツール」で、サービスの設定をいくつかのパターンで想定しつつ、月額料金のシミュレーションをすることができます。また見積りを使わなくても、アジアパシフィック(東京)でのメトリクス、API、ダッシュボード、アラーム、ログ、イベント別に料金の目安が提示されていますので、まずはそちらを参照してみるとよいでしょう。

Amazon CloudWatchは無料枠からはじめてみる

AWSをすでに利用している場合は、Amazon CloudWatchの利便性について、無料枠や限定的な有料枠での利用から知ることができます。AWSには各種のサービスが用意されていますが、イベントの変化に合わせた利用システムの自動変更や、稼働の最適化によるコストダウンなどに使えるAmazon CloudWatchについても、これを機会に検討してみてはいかがでしょうか。

もちろん、AWSはこれからというユーザーでも、Amazon CloudWatchを中心に、システムの可視化や最適化を目的として、導入の検討としての無料利用枠から試してみることをおすすめします。

またNHN テコラスでは、2019年11月にAWSの監視・運用代行サービスにMackerelを利用できるプランの提供を開始しました。MackerelとAmazon CloudWatchをAPIで連携させることでよりグラフィカルかつ直感的なモニタリングが可能となります。AWSの監視・障害対応をアウトソースしたい場合には是非ご検討ください。※2

C-Chorus マネージドサービス

※本記事の内容につきましては2019年3月時点での情報です。
※2019年11月14日追記

AWSの運用を始める方にオススメ!

よく分かる「AWS請求代行サービス」とは?

AWSの料金を安くする方法
AWSを利用している方が意外と知らない割引サービスの「AWS請求代行サービス」。利用するとどのようなメリットがあるかをご紹介します。

おすすめの記事

おすすめのカテゴリ