Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

coderwangke/eks-log

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

5 Commits

Repository files navigation

EKS Fluent bit 日志采集

EKS 场景下,通过 Fluent bit 自定义采集配置来采集容器的标准输出日志。 当前已支持:

1、kafka 投递,支持用户密码认证

2、es 投递

关键注解介绍

## 指定日志采集组件
eks.tke.cloud.tencent.com/log-collector: fluent-bit 
## 指定日志采集配置对应的configmap
eks.tke.cloud.tencent.com/log-collector-configmap: logging/fluent-bit-config
## 开启配置变更自动重启采集组件
eks.tke.cloud.tencent.com/hot-reload-config: "true"

F-bit 权限

用于与 EKS 集群通信,获取 pod 的 metadata 等信息。

# 创建命名空间
$ kubectl create namespace logging
$ kubectl -n logging apply -f fbit-serviceaccount.yaml

F-bit 配置文件 configmap 详细配置

备注:<> 是需要客户自行调整的

通用配置

1、ca.crttoken: 连接 EKS 集群,获取命令参考如下:

# 获取 ca.crt
$ kubectl -n logging get ServiceAccount fluent-bit -o jsonpath='{.secrets[0].name}' | xargs kubectl -n logging get secret -o jsonpath='{.data.ca\.crt}' | base64 -d
# 获取 token
$ kubectl -n logging get ServiceAccount fluent-bit -o jsonpath='{.secrets[0].name}' | xargs kubectl -n logging get secret -o jsonpath='{.data.token}' | base64 -d

2、kubernetes.endpoints: EKS apiserver 连接地址

# 获取 ENDPOINTS 字段
$ kubectl get endpoints kubernetes

kafka 相关配置

配置块位置在 output-kafka.conf(不需要kafka投递则可直接删除)

1、BrokersTopic: kafka 投递配置

2、usernamepassword: kafka 用户验证配置

es 相关配置

配置块位置在 output-es.conf(不需要es投递则可直接删除)

1、HostPort: es 的 Hostname 和 端口

2、HTTP_UserHTTP_Passwd: es 用户认证相关配置

完成上述配置字段替换之后,执行如下命令创建:

$ kubectl -n logging apply -f fbit-cm.yaml

F-bit 采集注解的全局配置

避免每次都要修改 pod 的配置,插入注解。

EKS 支持注解全局配置,参考如下:

apiVersion: v1
data:
 pod.annotations: |-
 eks.tke.cloud.tencent.com/log-collector: fluent-bit
 eks.tke.cloud.tencent.com/log-collector-configmap: logging/fluent-bit-config
 eks.tke.cloud.tencent.com/hot-reload-config: "true"
kind: ConfigMap
metadata:
 name: eks-config
 namespace: kube-system

补充:Fluent bit 的版本 1.8.9

About

Tencent EKS 日志采集配置

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /