实战案例 | 为 AWS 美国东部一区中的 Application Load Balancer 启用访问日志


  实验目标

通过实际动手操作,为 AWS 美国东部一区中 Application Load Balancer 启用访问日志。逐步了解和熟悉访问日志的主要功能和作用。AWS Application Load Balancer 访问日志可捕获有关发送到负载均衡器的每条请求的详细信息。例如,收到请求的时间、客户端的 IP 地址、延迟、请求路径和服务器响应)。技术人员可以使用这些访问日志分析流量模式并解决各种问题。
注意:可以随时禁用访问日志。

  作业步骤

本次采用AWS Console界面完成作业。
注意:根据项目的具体情况,可以采用不同的实施方法。比如使用命令行(CLI)部署、代码部署 (CloudFomation、Terraform等)、以及其它开发语言(SDK)完成作业。

步骤一:创建 S3 存储桶,为访问日志提供日志存储空间
1. 打开 Amazon S3 控制台,选择创建存储桶 (Create bucket)
2. 加密选项,选择亚马逊 S3 托管密钥 (SSE- S3),然后创建存储桶

步骤二:将策略附加到 S3 存储桶
1. 打开 Amazon S3 控制台,选择存储桶的名称,打开详细信息页面
2. 选择 Permissions(权限),然后选择 Bucket policy(存储桶策略)、Edit(编辑)
3. 更新存储桶策略以授予所需权限。
注意:
存储桶策略取决于区域的类型 Amazon Web Services 区域和类型。
elb-account-id 为:127311923021

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::elb-account-id:root"
      },
      "Action": "s3:PutObject",
      "Resource": "s3-bucket-arn"
    }
  ]
}
          

4. 选择 Save changes(保存更改)

步骤三:配置访问日志
1. 打开亚马逊EC2控制台,选择负载均衡器,打开其详细信息页面
2. 在属性选项卡上,选择编辑。在监控中,选择打开访问日志
3. 在 S3 URI 中,输入用来保存日志文件的 S3 存储桶的 URI。URI格式取决于在 S3存储桶的配置是否使用前缀。
使用前缀时:s3://amzn-s3-demo-logging-bucket/logging-prefix
不使用前缀时:s3://amzn-s3-demo-logging-bucket
4. 选择 Save changes(保存更改)

...

步骤四:确认存储桶权限
1. 打开 Amazon S3 控制台,选择访问日志的存储桶的名称,查看自动生成的测试日志文件
2. 确认自动生成的测试日志文件存在

  结果验证

1. 打开 Amazon EC2 控制台,查看创建成功的 EC2 实例。
2. 进行简单测试后删除该 EC2 实例。
3. 实验结束后删除创建的 EC2 实例,以及保存 CloudFormation 模板文件的 S3 存储桶。