Amazon CloudWatchの監視項目を解説!標準・カスタムでできることと注意点

    AWS環境の監視を実現する「Amazon CloudWatch」。AWS自身が提供するサービスで、AWS環境との親和性が高いと多くの企業で利用されています。ここでは「Amazon CloudWatch」の監視項目について標準でできること、カスタムメトリクスでできること、そして注意したいポイントを解説します。

    Amazon CloudWatchは標準・カスタムでそれぞれ何を監視できる?

    AWS環境の様々な項目を監視できる「Amazon CloudWatch」には、標準で監視可能な項目「標準メトリクス」と、利用者自身で、設定することにより監視可能になる項目「カスタムメトリクス」の2種類があります。

    標準メトリクスでは、EC2インスタンスのCPU使用率やディスク、ネットワークの利用状況、インスタンスのステータスチェックといった項目が用意されており、閾値を設定するだけですぐに監視をはじめることができます。

    これら以外の項目に関しては、利用者がカスタムメトリクスを作成することで監視可能になります。「Amazon CloudWatch」は70以上のAWSサービスに対応しており、ニーズやシステムの用途などにあわせたカスタムメトリクスにより、きめ細かな監視を実現できます。例えば、EC2インスタンス上で稼働するアプリケーションの状態などです。標準メトリクスの「インスタンスステータスチェック」では、仮想マシン・OSレベルで問題が起きているかまでしかチェックできませんが、アプリケーションの状態を確認するカスタムメトリクスを作成することで監視できるようになります。

    一筋縄ではいかない!Amazon CloudWatchカスタムメトリクス作成

    ここでは、カスタムメトリクスの設定方法について解説しましょう。上記で例に挙げたアプリケーションの稼働状況をAmazon CloudWatchで監視するには、インスタンス上で稼働しているプロセスから、該当するプロセスの数をカウントするメトリクスを作成し、プロセス数が一定の数を下回った場合(もしくは、ゼロになった場合)に異常とする形となります。

    監視対象となるインスタンスにAmazon CloudWatchのエージェントをインストールする必要がありますが、設定自体は対話形式(ウィザード)で進めることができます。ただし、質問に対して順番に回答すればよいものの、OSや設定内容など、かなりの数の項目に回答することになります。

    さらに、同一インスタンス内であっても監視対象のプロセスごとに設定をおこなう必要があり、複数のアプリケーションやプロセスを監視するとなると、かなりの手間がかかることは否めません。実運用を考えると、「AWS CloudFormation」というリソース設定をテンプレート化し、設定を自動化するツールなどの活用も検討した方がよさそうです。

    また、カスタムメトリクスで異常を検知したあとの対処についても、Amazon CloudWatch単体ではインスタンス全体を再起動することしかできず、アプリケーションのみの再起動はできません。これでは、同一インスタンス内で複数のアプリケーションを稼働させている場合、問題が起きていないアプリケーションまで一緒に再起動されてしまいます。異常が発生したアプリケーションのみを再起動させる場合は、AWS Systems ManagerやAWS Lambdaといったサービスとの連携が必須となり、さらにハードルがあがってしまいます。

    アプリケーションの監視&再起動を簡単に実現する方法は?

    「コストを抑えて手軽にAWS環境を監視できる」と言われるAmazon CloudWatchですが、カスタムメトリクスを作り込んで運用するとなると、思った以上に手間がかかります。標準メトリクスのみであれば、すぐに使えるものの、CPU使用率の閾値はいくつに設定するのかなどの細かな運用設計が必要になり、こちらも使いこなすにはある程度のスキルが求められます。

    重要度の高いシステムであれば、工数をかけてきっちり運用する必要がありますが、なかにはそこまで運用に手間をかけられないシステムもあるはずです。「とりあえずアプリケーションの状態を監視して、停止したら再起動」といった運用を簡単に実現したい……といったケースにはAmazon CloudWatchでは難易度が高すぎると言えそうです。

    そこで、こういったケースでおすすめしたいのが、サイオステクノロジーが提供する「SIOS AppKeeper」。EC2インスタンス上で稼働するアプリケーションのサービス(プロセス)を簡単に監視でき、異常検出時には該当するアプリケーションだけを再起動。手間をかけずに、最低限の運用を実現できます。

     

    運用負荷の軽減はオンプレミスからAWSに移行するメリットの1つ。この効果を最大化するためにも、「SIOS AppKeeper」のようなツールを活用してはいかがでしょうか?

    実際にどうやって監視ができるのか、自動再起動の仕組みはどうなっているのか、料金体系は?などの詳細は、以下よりご確認ください。

    SNSでもご購読できます。