本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
教程:使用收集主机级日志 Fluent Bit
在本教程中,您将使用在 Amazon Batch 托管计算环境实例上设置自动日志收集Fluent Bit。完成本教程后,主机级诊断日志会自动上传到 Amazon S3 以进行故障排除并与 Amazon 支持人员共享。
Host-level 日志是由底层 Amazon EC2 实例生成的诊断文件。这些日志包括 Amazon ECS 代理日志、Docker 和容器运行时日志、内核消息、系统日记条目和网络状态。它们不同于任务容器日志,后者捕获应用程序的stdout和stderr输出。有关容器日志记录的更多信息,请参阅使用 awslogs 日志驱动程序。
您可以将这种方法用于使用亚马逊 EC2 On-Demand 和 Amazon EC2 Spot 的 Amazon Batch 托管计算环境。要开启或关闭日志记录,计算环境必须支持基础架构更新。有关更多信息,请参阅 执行基础设施更新。
本主题中的说明假设您使用的是适用于亚马逊 Linux 2023 的亚马逊 ECS-optimized AMI。如果您使用自定义 AMI,则可能需要额外的配置。
Fluent Bit作为 systemd 服务在每个实例上运行,通过启动模板user-data脚本安装。该代理收集诊断日志文件,应用 Lua-based 编辑过滤器删除敏感数据,并将按实例 ID 组织的压缩日志文件上传到 Amazon S3。
重要
示例 Lua 编辑脚本为敏感数据提供了尽最大努力的编辑。经过编辑的数据包括机密环境变量、Amazon ECS 配置值和 Docker 检查环境输出。为工作负载特定的机密添加自定义模式。在与外部各方共享文件之前,请查看日志输出。
完成本教程需要大约 30 分钟。
重要
您在本教程中创建的资源可能会向您的 Amazon
账户收费。有关更多信息,请参阅亚马逊 EC2
先决条件
有权创建 IAM 策略、亚马逊 EC2 启动模板、亚马逊 S3 存储桶和 Amazon Batch 计算环境的 Amazon 账户。
Amazon Command Line Interface 已安装并配置(如果您更喜欢 CLI 步骤)。
要设置主机级日志收集,请完成以下步骤:
设置 Amazon S3 存储桶和Fluent Bit配置。
为您的实例角色配置 IAM 权限。
创建启动模板并将其附加到计算环境。
验证并排除故障。
清理资源。