将 apache 日志从 k8s Pod 转发到 Syslog 服务器

将 apache 日志从 k8s Pod 转发到 Syslog 服务器

我是 Kubernetes 的新手,我知道有多种日志收集方法。但我特别想问一下我的情况。我们有一个 Syslog xyz.com 端口 8090。现在我们希望我们的 pod 将日志发送到我们的服务器 xyz.com。实现这一目标的最佳方法是什么?是否有任何集中的方式可以自定义来自所有部署 pod 的日志,或者我们是否必须在容器中配置 rsyslog 服务并重建容器?或者你们可以建议任何最佳实践。

谢谢,优素福

答案1

參閱Sudheer Chamarthi 的Medium 博客在 ITNEXT 上发布在 Kubernetes 中运行 Rsyslog 服务器并按照以下步骤在 Syslog 服务器中传输日志:

  1. 构建并将镜像推送到 Docker Registry
  2. 创建单独的命名空间
  3. 创建持久存储
  4. 创建 Rsyslog 部署
  5. 向服务公开部署
  6. 向 NLB 公开服务
  7. 进行测试和扩展

您可以查看Github 档案日志架构kubernetes-rsyslog-logging提供 kubernetes 配置以建立集中式日志解决方案。您可以浏览约翰·斯塔里奇教程Kubernetes 使用 Syslog 进行日志转发

作为 @拉斯克评论中提到,使用带有日志记录代理的 sidecar 容器被广泛使用。它独立于应用程序,使其成为一种更加灵活的解决方案,请注意,它可以用两种不同的方式实现。

相关内容