クイックスタート: 実行中の EC2 Linux インスタンスに CloudWatch Logs エージェントをインストールして設定する - Amazon CloudWatch Logs

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

クイックスタート: 実行中の EC2 Linux インスタンスに CloudWatch Logs エージェントをインストールして設定する

重要

古いログエージェントは非推奨です。 には、EC2インスタンスとオンプレミスサーバーからログとメトリクスの両方を収集できる統合エージェント CloudWatch が含まれています。詳細については、「Logs CloudWatch の開始方法」を参照してください。

古い CloudWatch Logs エージェントから統合エージェントへの移行については、「ウィザードを使用して CloudWatch エージェント設定ファイルを作成する」を参照してください。

古いログエージェントは、Python の 2.6 から 3.5 までのバージョンしかサポートしていません。さらに、古い CloudWatch Logs エージェントはインスタンスメタデータサービスバージョン 2 () をサポートしていませんIMDSv2。サーバーが を使用している場合はIMDSv2、古い CloudWatch Logs エージェントではなく、新しい統合エージェントを使用する必要があります。

このセクションの残りの部分では、古い CloudWatch Logs エージェントをまだ使用しているお客様向けの使用について説明します。

ヒント

CloudWatch には、EC2インスタンスとオンプレミスサーバーからログとメトリクスの両方を収集できる新しい統合エージェントが含まれています。古い CloudWatch Logs エージェントをまだ使用していない場合は、新しい統合 CloudWatchエージェントを使用することをお勧めします。詳細については、「Logs CloudWatch の開始方法」を参照してください。

さらに、古いエージェントはインスタンスメタデータサービスバージョン 2 () をサポートしていませんIMDSv2。サーバーが を使用している場合はIMDSv2、古い CloudWatch Logs エージェントではなく、新しい統合エージェントを使用する必要があります。

このセクションの残りの部分では、古い CloudWatch Logs エージェントの使用について説明します。

実行中の EC2 Linux インスタンスで古い CloudWatch Logs エージェントを設定する

既存のEC2インスタンスで CloudWatch Logs エージェントインストーラーを使用して、 CloudWatch Logs エージェントをインストールして設定できます。インストールが完了したら、エージェントのインストール中に、インスタンスから、作成したログストリームにログが自動的に流れます。エージェントは開始を確認し無効にされるまで実行し続けます。

エージェントの使用に加えて、 を使用してログデータを発行することもできます。 AWS CLI、 CloudWatch ログ SDK、または CloudWatch ログ API。- AWS CLI は、コマンドラインまたはスクリプトによるデータの公開に最適です。 CloudWatch Logs SDKは、アプリケーションから直接ログデータを発行したり、独自のログ発行アプリケーションを構築したりする場合に最適です。

ステップ 1: CloudWatch Logs のIAMロールまたはユーザーを設定する

CloudWatch Logs エージェントは、IAMロールとユーザーをサポートします。インスタンスに既に IAMロールが関連付けられている場合は、以下のIAMポリシーを含めてください。インスタンスに IAMロールをまだ割り当てていない場合は、次のステップでIAM認証情報を使用するか、そのインスタンスに IAMロールを割り当てることができます。詳細については、「インスタンスへの IAMロールのアタッチ」を参照してください。

CloudWatch Logs のIAMロールまたはユーザーを設定するには
  1. でIAMコンソールを開きますhttps://console.aws.amazon.com/iam/

  2. ナビゲーションペインで [ロール] を選択します。

  3. ロール名を選択してロールを選択します (名前の横にあるチェックボックスを選択しないでください)。

  4. [Attach Policies (ポリシーのアタッチ)] を選択して、[ポリシーの作成] を選択します。

    新しいブラウザタブまたはウィンドウが開きます。

  5. JSON タブを選択し、次のJSONポリシードキュメントを入力します。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": [ "*" ] } ] }
  6. 完了したら、[ポリシーの確認] (ポリシーの確認) を選択します。構文エラーがある場合は、Policy Validator (ポリシー検証) によってレポートされます。

  7. [ポリシーの確認] ページで、作成するポリシーの [名前] と [説明] (オプション) を入力します。ポリシーの [Summary] (概要) を参照して、ポリシーによって付与された許可を確認します。次に、[Create policy] (ポリシーの作成) を選択して作業を保存します。

  8. ブラウザタブまたはウィンドウを閉じ、ロールの [アクセス権限の追加] を選択します。[更新] を選択し、新しいポリシーを選択してロールに追加します。

  9. [Attach Policy] を選択します。

ステップ 2: 既存の Amazon EC2インスタンスに CloudWatch ログをインストールして設定する

CloudWatch Logs エージェントをインストールするプロセスは、Amazon EC2インスタンスが Amazon Linux、Ubuntu、CentOS、Red Hat のいずれを実行しているかによって異なります。インスタンスの Linux のバージョンに適切な手順を使用してください。

既存の Amazon Linux インスタンスに CloudWatch Logs をインストールして設定するには

Amazon Linux AMI2014.09 以降、 CloudWatch awslogs パッケージRPMのインストールとして Logs エージェントを使用できます。それ以前のバージョンの Amazon Linux は、sudo yum update -y コマンドを使用してインスタンスを更新することで awslogs パッケージにアクセスできます。Logs インストーラーを使用するRPM代わりに として awslogs CloudWatch パッケージをインストールすることで、インスタンスは から定期的なパッケージの更新とパッチを受け取ります。 AWS CloudWatch Logs エージェントを手動で再インストールする必要はありません。

警告

以前に Python スクリプトを使用してエージェントをインストールした場合は、RPMインストール方法を使用して CloudWatch Logs エージェントを更新しないでください。これにより、Logs エージェントが CloudWatch にログを送信できない設定の問題が発生する可能性があります CloudWatch。

  1. Amazon Linux インスタンスに接続します。詳細については、「Amazon ユーザーガイド」の「インスタンスに接続する」を参照してください。 EC2

    接続の問題の詳細については、「Amazon EC2 ユーザーガイド」の「インスタンスへの接続のトラブルシューティング」を参照してください。

  2. Amazon Linux インスタンスを更新してパッケージリポジトリの最新の変更を取得します。

    sudo yum update -y
  3. awslogs パッケージをインストールします。これは Amazon Linux インスタンスで awslogs をインストールする推奨手段です。

    sudo yum install -y awslogs
  4. /etc/awslogs/awslogs.conf ファイルを編集して追跡するログを設定します。このファイルの編集方法については、「CloudWatch Logs エージェントリファレンス」を参照してください。

  5. デフォルトでは、/etc/awslogs/awscli.conf は us-east-1 リージョンを指します。ログを別の領域にプッシュするには、awscli.conf ファイルを編集し、その領域を指定します。

  6. awslogs サービスを開始します。

    sudo service awslogs start

    Amazon Linux 2 を実行している場合は、次のコマンドを使用して awslogs サービスを開始します。

    sudo systemctl start awslogsd
  7. (オプション) /var/log/awslogs.log ファイルでサービス開始時に記録されたエラーがあるかどうか確認します。

  8. (オプション)システム起動時に毎回 awslogs サービスを起動する場合は、次のコマンドを実行します。

    sudo chkconfig awslogs on

    Amazon Linux 2 を実行している場合は、次のコマンドを使用してシステムブートのたびにサービスを開始します。

    sudo systemctl enable awslogsd.service
  9. エージェントがしばらく実行された後、 CloudWatchコンソールに新しく作成されたロググループとログストリームが表示されます。

    詳細については、「Logs に送信された CloudWatch ログデータを表示する」を参照してください。

既存の Ubuntu Server、CentOS、または Red Hat インスタンスに CloudWatch Logs をインストールして設定するには

AMI 実行中の Ubuntu Server、CentOS、または Red Hat を使用している場合は、次の手順を使用してインスタンスに CloudWatch Logs エージェントを手動でインストールします。

  1. EC2 インスタンスに接続します。詳細については、「Amazon ユーザーガイド」の「インスタンスに接続する」を参照してください。 EC2

    接続の問題の詳細については、「Amazon EC2 ユーザーガイド」の「インスタンスへの接続のトラブルシューティング」を参照してください。

  2. 2 つのオプションのいずれかを使用して、 CloudWatch Logs エージェントインストーラを実行します。インターネットから直接実行するか、ファイルをダウンロードしてスタンドアロンで実行できます。

    注記

    CentOS 6.x、Red Hat 6.x、または Ubuntu 12.04 を実行している場合は、インストーラをダウンロードしてスタンドアロンで実行する手順を使用してください。これらのシステムでは、インターネットから直接 CloudWatch Logs エージェントをインストールすることはできません。

    注記

    Ubuntu では、次のコマンドを実行する前に apt-get update を実行してください。

    インターネットから直接実行するには、次のコマンドを使用してプロンプトに従います。

    curl https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/awslogs-agent-setup.py -O
    sudo python ./awslogs-agent-setup.py --region us-east-1

    前のコマンドが機能しない場合は、以下を試してください。

    sudo python3 ./awslogs-agent-setup.py --region us-east-1

    スタンドアロンをダウンロードして実行するには、次のコマンドを使用してプロンプトに従います。

    curl https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/awslogs-agent-setup.py -O
    curl https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/AgentDependencies.tar.gz -O
    tar xvf AgentDependencies.tar.gz -C /tmp/
    sudo python ./awslogs-agent-setup.py --region us-east-1 --dependency-path /tmp/AgentDependencies

    CloudWatch Logs エージェントをインストールするには、us-east-1、us-west-1、us-west-2、ap-south-1、ap-northeast-2、ap-southeast-1、ap-southeast-2、ap-northeast-1、eu-central-1、eu-west-1、または sa-east-1 リージョンを指定します。

    注記

    の現在のバージョンとバージョン履歴の詳細についてはawslogs-agent-setup、「.CHANGELOGtxt」を参照してください。

    CloudWatch Logs エージェントインストーラは、セットアップ中に特定の情報を必要とします。開始する前に、モニタリングするログファイルとそのタイムスタンプ形式を知っておく必要があります。また、次の情報を準備する必要があります。

    項目 説明

    AWS アクセスキー ID

    IAM ロールを使用する場合は、Enter キーを押します。それ以外の場合は、 AWS アクセスキー ID。

    AWS シークレットアクセスキー

    IAM ロールを使用する場合は、Enter キーを押します。それ以外の場合は、 AWS シークレットアクセスキー。

    デフォルトリージョン名

    Enter キーを押します。デフォルトは us-east-2 です。これは、us-east-1、us-west-1、us-west-2、ap-south-1、ap-northeast-2、ap-southeast-1、ap-southeast-2、ap-northeast-1、eu-central-1、eu-west-1、または sa-east-1 に設定できます。

    デフォルト出力形式

    空白にしたまま Enter キーを押します。

    アップロードするログファイルのパス

    送信するログデータを含むファイルの場所です。インストーラはパスの候補を表示します。

    送信先ロググループ名

    ロググループの名前です。インストーラはロググループ名の候補を表示します。

    送信先ログストリーム名

    デフォルトでは、ホストの名前です。インストーラはホスト名の候補を表示します。

    タイムスタンプ形式

    指定ログファイル内のタイムスタンプ形式を指定します。独自の形式を指定するには、[custom] を選択します。

    初期位置

    データをどのようにアップロードできますか データファイルのすべてをアップロードする場合は [start_of_file] に設定します。新しく付け加えられたデータのみをアップロードする場合は [end_of_file] に設定します。

    これらの手順が完了すると、インストーラは別のログファイルを設定するかどうか尋ねてきます。各ログファイルについて何回でもプロセスを実行できます。他にモニタリングするログファイルがない場合、別のログをセットアップするようにインストーラに求められた時に [N] を選択します。エージェント設定ファイルの設定の詳細については、「CloudWatch Logs エージェントリファレンス」を参照してください。

    注記

    複数のログソースから単一のログストリームにデータを送信する設定はサポートされていません。

  3. エージェントがしばらく実行された後、 CloudWatchコンソールに新しく作成されたロググループとログストリームが表示されます。

    詳細については、「Logs に送信された CloudWatch ログデータを表示する」を参照してください。