はじめてAWSを勉強するインフラ素人が、サーバー監視について勉強したくCloudWatchサービスについてまとめました。
勉強の元としたAWS公式ハンズオンはこちらから。
スポンサーリンク
CloudWatchとは
EC2やRDSなどAWSリソースの稼働状況を監視するためのサービス
CloudWatch Metricsとは
CloudWatch Metricsとは、CPU使用率などの情報を収集し統計情報を取得することができるサービスのこと。
メトリクスとは
メトリクスとは、CPU使用率、メモリ使用量などCloudWatchに発行された時系列にデータポイントのセットのこと、平たくいえば情報そのもののこと。メトリクス名、タイムスタンプ、測定単位を持つ。
メトリクスは同一リージョン内でのみ確認可能(東京リージョンで作成されたものは大阪リージョンでは確認できない)
標準メトリクス
標準メトリクスとは、AWSがコントロールする範囲の情報のこと。例えば、EC2ではCPU使用率、ハードウェアのステータス情報などが含まれる。一方で、メモリ情報やディスク使用量は含まれない。RDSでは、マネージドサービスということもあり、メモリ情報やディスク使用量も標準メトリクスとして含まれている。
カスタムメトリクス
カスタムメトリクスとは、標準メトリクス以外の情報で、ユーザーがコントロールする情報のこと。AWSサービスの標準範囲では提供されない情報のため、PutMetricData APIを使ってカスタムメトリクスとしてCloudWatchに提供する。
CloudWatchエージェントとして、CloudWatchに提供するためにプログラム自体はAWSから提供されているため、このプログラムをEC2に自分でインストールしさえすれば、利用できるようになる。
名前空間とは
名前空間とは、要するに、AWSリソース、AWSサービスのこと。
ディメンションとは
ディメンションとは、メトリクスを一意にするためのキー&値のペア情報。例)インスタンスID=xxxxxxxとようなもの
CloudWatch 画面で確認
CloudWatchを設定すると次のような画面で、設定した環境の状態を確認可能。
名前空間から確認したいメトリクスを掘り下げていくことで、詳細を確認可能。
スポンサーリンク
CloudWatchアラームとは
CloudWatchアラームとは、CloudWatchから収集したメトリクス値をもとにアラーム通知とそれに伴うアクションを設定できるサービスのこと。
メトリクスから得た情報をもと、サーバーのスケールアウトや管理者へのメール通知を行う仕掛けを構築することができる。
◆どういったメトリクス(情報)をどんな条件で監視するか
◆アラームを検知した際のアクション設定
AWS SNSを使った通知設定
Auto Scalingを使った設定
その他、Lambda関数の設定やEC2の回復設定(EC2が障害発生した際の自動回復設定)なども可能。
スポンサーリンク
CloudWatch Logsとは
CloudWatch Logsとは、AWSリソースのログを収集するためのサービス。
1台ずつサーバーにログインしてログ回収することも可能であるが、AWS各サーバーにログインして確認することが手間であるという場合や、そもそもサーバーに接続できないといった場合が発生した場合に利用する。また、EC2に障害があった場合、通常はログ収集する必要があるのだが、CloudWatch Logsを使用していないと、ログ収集するまでEC2を再起動することができないため、対応が遅れることにも繋がる。
収集できるログは、EC2アプリケーションログ、Lambdaのログ、VPCフローログなど。
ログデータを収集し、別サービス(S3やLambdaなど)に転送することができる。ただし、転送量にはコストがかかるため、転送するデータは選別することが推奨されている。
ロググループ>ログストリーム>ログイベントという階層構造でログを確認。
注意点として、CloudWatchを設定するだけではCloudLogsは利用はできず、EC2にカスタムメトリクスと同様に、CloudWatchエージェントをインストールする必要がある。
スポンサーリンク
CloudWatch Logs Insightsとは
CloudWatch Logs Insightsとは、ログを収集後、その中からビジネスに必要な情報を可視化・分析するサービスのこと。専用のクエリを実行することで検索&分析が可能。
スポンサーリンク
CloudWatch ダッシュボードとは
CloudWatch ダッシュボードとは、ステータスを効率的に監視するためのサービス。複数のメトリクスやログを1つの画面で確認することが可能。例えば、1つのAWSアカウントで複数のサービスが動いている場合に、複数のサービスに跨ってEC2インスタンスを横断的に監視可能。
Automatic Dashboardを使えば、AWSが推奨するダッシュボードを自動で作成可能。
◆自分でダッシュボードを作成する
◆AWSが推奨するダッシュボードをそのまま利用する
リソースグループを利用することでAWSが推奨するダッシュボードをもとに監視したいリソースに限定したダッシュボードの作成も可能。
スポンサーリンク
まとめ
以上、AWS CloudWatchについてでした。
CloudWatch Eventsについては、現在はEventBridgeに統合されている点に注意です。
コメント