目次
はじめに
今回は EC2 に CloudWatch エージェントのインストール手順についてまとめていきます。
CloudWatch エージェントをインストールすることで、Amazon CloudWatch にログやメトリクスを送信することができます。
なお、今回の環境は以下で試しています
- Amazon Linux 2023
CloudWatch について
Amazon CloudWatch は AWS のサービスの監視、管理、およびトラブルシューティングのためのモニタリングサービスです。CloudWatch は、AWSリソースやアプリケーションのパフォーマンスや利用状況に関するデータを収集してメトリクスやログを表示することができます。
- メトリクス監視(Metrics Monitoring):
- AWS リソースやカスタムアプリケーションからメトリクス(例:CPU使用率、ネットワークトラフィック、データベース接続数など)を収集します。
- アラーム(Alarms):
- メトリクスに対して閾値を設定し、特定の条件が満たされた場合にアラームを発行します。
- アラームを使用して、例えばCPU使用率が80%を超えた場合に通知を受け取るなどのアクションを実行することができます。
- ログ監視(Logs Monitoring):
- CloudWatch Logs を使用して AWS サービスやカスタムアプリケーションのログデータを収集、監視、分析できます。
- カスタムフィルタリングやリアルタイムの監視、アーカイブ、アラームの設定などが可能です。
- クロスアカウントおよびクロスリージョン対応:
- CloudWatch はクロスアカウントおよびクロスリージョンの監視をサポートしています。これにより、複数の AWS アカウントやリージョンのリソースを中央集中的に管理できます。
CloudWatch エージェントのインストール
IAM ロールの作成
新規に作成する場合
EC2 に IAM ロールが設定されていなく、新規に IAM ロールを作成する場合の手順は以下を参考にしてください。
- IAM コンソールを開きナビゲーションペイン [ロール] を選択して [ロールの作成] を選択します。
- 「信頼されたエンティティを選択」のページで、以下を選択して [次へ] を選択します。
- 信頼されたエンティティ: AWS のサービス
- ユースケース: EC2
- 「許可を追加」のページで、以下のポリシーをチェックして [次へ] を選択します。
- CloudWatchAgentServerPolicy
- AmazonSSMManagedInstanceCore
- 「名前、確認、および作成」ページで、ロール名、説明を入力して [ロールの作成] を選択します。
作成済みのロールに追加する場合
既に EC2 に IAM ロールが設定されていて、その IAM ロールにポリシーを追加する場合の手順は以下を参考にしてください。
- IAM コンソールを開きナビゲーションペイン [ロール] を選択し、一覧から EC2 に設定しているロール名を選択します。
- 「許可ポリシー」のセクションで [ポリシーをアタッチ] のプルダウンから [ポリシーをアタッチ] を選択します。
- 以下のポリシーをチェックして [許可を追加] を選択します。
- CloudWatchAgentServerPolicy
- AmazonSSMManagedInstanceCore
- ロールの詳細ページが表示され、「許可ポリシー」のセクションに追加したポリシーが追加されていることを確認します。
CloudWatch エージェントのインストール
Run Command を使用して CloudWatch エージェントをインストールする
- Systems Manager コンソールを開きます。
- ナビゲーションペイン [RunCommand] を選択して [コマンドを実行する] を選択します。
- 「コマンドドキュメント」の一覧から [AWS-ConfigureAWSPackage] を選択します。
- 「コマンドのパラメータ」のセクションで以下を設定します。
- Actin: Install
- Name: AmazonCloudWatchAgent
- 「ターゲット」のセクションで、CloudWatch エージェントをインストールするインスタンスを選択します。
- 「出力オプション」のセクションは任意に設定します。
設定することで、実行結果を S3 や CloudWatch に出力することができます。 - 入力内容を確認して [実行] を選択します。
- インストールが終了すると「コマンドのステータス」全体的なステータスが成功と表示されます。
CloudWatch エージェントの起動と自動起動設定
CloudWatch エージェントをサーバーで実行する前に、CloudWatch エージェント設定ファイルを作成する必要があります。
CloudWatch エージェント設定ファイルを手動で作成する
設定ファイルについては、次回以降にまとめます。
CloudWatch エージェントを起動する
CloudWatch エージェントを起動するには systemctl start コマンドを実行します。
# CloudWatch エージェントを起動する
sudo systemctl start amazon-cloudwatch-agent.service
# 確認
sudo systemctl status amazon-cloudwatch-agent.service
CloudWatch エージェントの自動起動設定
CloudWatch エージェントを起動するには systemctl enable コマンドを実行します。
# CloudWatch エージェントを起動する
sudo systemctl enable amazon-cloudwatch-agent.service
# 実行結果
Created symlink /etc/systemd/system/multi-user.target.wants/amazon-cloudwatch-agent.service → /etc/systemd/system/amazon-cloudwatch-agent.service.