Network Load Balancer のアクセスログを有効にする - エラスティックロードバランシング

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

Network Load Balancer のアクセスログを有効にする

ロードバランサーのアクセスログの作成を有効にする場合は、ロードバランサーがログを保存する S3; バケットの名前を指定する必要があります。このバケットは、バケットにアクセスログを書き込む許可を Elastic Load Balancing に付与するバケットポリシーが必要です。

バケットの要件

既存のバケットを使用するか、アクセスログ専用のバケットを作成できます。バケットは、次の要件を満たしている必要があります。

要件
  • バケットは、ロードバランサーと同じリージョンに配置されている必要があります。バケットとロードバランサーは、異なるアカウントにより所有できます。

  • 指定するプレフィックスに AWSLogs を含めることはできません。指定したバケット名とプレフィックスの後に、AWSLogs で始まるファイル名部分が追加されます。

  • このバケットは、バケットにアクセスログを書き込む許可を付与するバケットポリシーが必要です。バケットポリシーは、バケットのアクセス許可を定義するためにアクセスポリシー言語で記述された JSON ステートメントのコレクションです。

バケットポリシーの例

以下は、ポリシーの例です。Resource 要素については、amzn-s3-demo-destination-bucket をアクセスログの S3 バケットの名前に置き換えます。バケットプレフィックスを使用していない場合は、Prefix/ を必ず省略してください。にはaws:SourceAccount、ロードバランサーで AWS アカウントの ID を指定します。aws:SourceArn については、region012345678912 をそれぞれロードバランサーのリージョンとアカウント ID に置き換えます。

{ "Version": "2012-10-17", "Id": "AWSLogDeliveryWrite", "Statement": [ { "Sid": "AWSLogDeliveryAclCheck", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket", "Condition": { "StringEquals": { "aws:SourceAccount": ["012345678912"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:region:012345678912:*"] } } }, { "Sid": "AWSLogDeliveryWrite", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/Prefix/AWSLogs/account-ID/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "aws:SourceAccount": ["012345678912"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:region:012345678912:*"] } } } ] }
Encryption

Amazon S3 アクセスログバケットのサーバー側の暗号化は、次のいずれかの方法で有効にできます。

  • Amazon S3 が管理するキー (SSE-S3)

  • AWS KMS AWS Key Management Service (SSE-KMS) に保存されている キー †

† Network Load Balancer アクセスログでは、 AWS マネージドキーを使用することはできません。カスタマーマネージドキーを使用する必要があります。

詳細については、Amazon S3暗号化 (SSE-S3) の指定」およびAWS KMS 「 (SSE-KMS) によるサーバー側の暗号化の指定」を参照してください。 Amazon S3

キーポリシーで、ログの暗号化および復号化する許可をサービスに与える必要があります。以下は、ポリシーの例です。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" } ] }

アクセスログを設定

以下の手順を使用して、リクエスト情報を収集して S3 バケットにログファイルを配信するように、アクセスログを設定します。

コンソールを使用してアクセスログの作成を有効にするには
  1. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  2. ナビゲーションペインで、[ロードバランサー] を選択します。

  3. ロードバランサーの名前を選択して、その詳細ページを開きます。

  4. [属性] タブで、[編集] を選択します。

  5. [Edit load balancer attributes] ページで、以下を実行します。

    1. [モニタリング] で [アクセスログ] をオンにします。

    2. [S3 をブラウズ] を選択し、使用するバケットを選択します。または、プレフィックスを含めて S3 バケットの場所を入力します。

    3. [Save changes] (変更の保存) をクリックします。

を使用してアクセスログ記録を有効にするには AWS CLI

modify-load-balancer-attributes コマンドを使用します。