初识 Banzai Cloud 的 Logging operator

2022-12-28 17:10:06 浏览数 (2)

初识 Banzai Cloud 的 Logging operator

欢迎阅读 Logging operator 文档!Logging operator 是 Banzai Cloud One Eye for Kubernetes 可观测性工具的核心部分.

概述

Logging operator

基于 Fluentd 和 Fluent-bit 的 Kubernetes Logging operator

Logging operator 自动执行 Kubernetes 日志记录管道的部署和配置。operator 在每个节点上部署和配置 Fluent Bit 守护程序集,以从节点文件系统收集容器和应用程序日志。Fluent Bit 查询 Kubernetes API,并使用有关 Pod 的元数据丰富日志,并将日志和元数据传输到 Fluentd。Fluentd 接收、过滤日志并将其传输到多个输出。日志将始终在经过身份验证和加密的通道上传输;

这个运算符是干什么用的?

此 operator 可将日志记录信息与应用程序捆绑在一起:可以在其图表中描述应用程序的行为,其余的由 Logging operator 完成;

log_operatorlog_operator

功能亮点

. 命名空间隔离

. 原生 Kubernetes 标签选择器

. 安全通信 (TLS)

. 配置验证

. 多流支持(为不同转换乘以日志)

. 多输出支持(将相同的日志存储在多个存储中:S3,GCS,ES,Loki 等...

. 多日志记录系统支持(在同一集群上部署多个 Fluentd、Fluent Bit)

架构

可以定义 outputs(想发送日志信息的目的地,例如 Elasticsearch 或 Amazon S3 桶),以及使用过滤器和选择器将日志信息发送到适当的输出的 flows。也可以定义集群范围内的输出和流量,

例如,使用一个集中的输出,命名的用户可以参考,但不能修改

可以使用以下自定义资源定义来配置 Logging operato:

logging

logging 资源定义了你的集群的日志基础设施,收集和传输日志信息。它还包含 Fluentd 和 Fluent-bit 的配置

output

定义了一个日志流的输出,日志信息在那里被发送。这是一个命名的资源。请参阅 clusteroutput

flow

使用 filters 和 outputs 来定义一个日志流。基本上,该流将选定的日志消息路由到指定的输出。这是一个命名的资源。请参阅 clusterflow

clusteroutput

定义一个所有 flow 和 clusterflows 都可以使用的输出。除非 allowClusterResourcesFromAllNamespaces 被设置为 "true",否则 operator 只评估 controlNamespace 中的 clusteroutputs

clusterflow

定义一个日志流,默认从所有命名空间收集日志。除非 allowClusterResourcesFromAllNamespaces 被设置为 "true",否则该 operator 只在 controlNamespace 中评估 clusterflows

日志流程图:

log_flowlog_flow

支持

Logging operator 是 Banzai Cloud One Eye for Kubernetes 可观测性工具的核心部分。虽然日志记录 operator 本身是一个开源项目,但 Banzai Cloud One Eye 产品通过商业功能扩展了日志记录operator 的功能(例如,收集主机日志和 Kubernetes 事件)

0 人点赞