

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 登录 Amazon EKS 的最佳实践
<a name="logging-best-practices"></a>

以下最佳实践有助于为您的 Amazon EKS 环境创建强大、可扩展且高效的日志系统，并为您的 Kubernetes 集群提供更好的故障排除、监控和整体管理。
+ **集中日志收集**：使用集中式日志解决方案（例如 CloudWatch 日志、Elasticsearch 或第三方服务）来聚合来自所有组件的日志。这为日志分析提供了单一访问点并简化了管理。
+ **实现结构化**日志：使用 JSON 等结构化日志格式，以便更轻松地解析和搜索日志。包括相关的元数据，例如时间戳、日志级别和源标识符。
+ **适当使用日志级别**：在应用程序中实现适当的日志级别（例如`DEBUG``INFO``WARN`、、和`ERROR`）。将生产环境配置为在适当级别进行日志，以避免过多的日志记录。
+ **启用容器日志记录**：将您的容器配置为登录`stdout`和`stderr`。这允许 Kubernetes 捕获这些日志并将其转发到您选择的日志解决方案。
+ **启用应用程序日志记录**：将应用程序配置为向`stdout`日志写入日志，`stderr`而不是写入日志文件。这遵循 [12要素应用程序方法](https://12factor.net/logs)，并符合云原生最佳实践。
+ **使用 Kubernetes DaemonSets 进行日志收集**：部署日志收集代理（例如 Fluent Bit）， DaemonSets 以确保它们在集群中的每个节点上运行。
+ **实施保留策略**：定义和强制执行日志保留政策，以遵守法规并管理存储成本。
+ **安全日志数据**：对传输中的日志和静态日志进行加密。实施访问控制以限制谁可以查看和管理日志。
+ **监控日志摄取**：为日志提取失败或延迟设置警报，以确保持续记录。
+ **使用 Kubernetes 注释和标签**：使用 Kubernetes 注释和标签向日志添加元数据，以提高可搜索性和筛选性。
+ **实现分布式跟踪**：使用分布式跟踪工具（例如[AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html)或 Jaeger）在微服务之间关联日志。
+ **优化日志量**：对记录的内容要有选择性，以避免不必要的成本和性能问题。对大容量、低价值的日志使用采样。
+ **实现日志聚合**：使用 Logstash 等工具汇总来自多个来源的日志，然后再将其发送到中央日志系统。
+ **尽可能 AWS 服务 使用**： CloudWatch 日志和容器见解等服务可与其他服务无缝集成 AWS 服务。
+ **实现日志分析和可视化**：使用 CloudWatch 日志见解、带有 Kibana 的 Elasticsearch 或第三方解决方案等工具进行日志分析和可视化。
+ **实现自动日志分析**：使用机器学习和 AI 驱动的工具自动检测日志中的异常和模式。
+ **记录您的日志策略**：为团队保留关于日志架构、实践和工具的清晰文档。