fluentd

使用fluentd收集kubernetes日志并推送给kafka

2022-10-3
technology
fluentd

这篇文章使用fluentd官方提供的kubernetes部署方案daemonset来部署日志收集, 参考项目地址: https://github.com/fluent/fluentd-kubernetes-daemonset 本文使用的kubernetes版本为: 1.22.8 使用fluentd镜像为: fluent/fluentd-kubernetes-daemonset:v1.15.2-debian-kafka2-1.0 请注意下文配置中<var>标记, 需要根据需求自行替换. 创建命名空间 # 本项目所有的资源创建在logging下, 先创建它: kubectl create ns logging-kafka 先创建服务账号 # 创建服务账号并赋予集群查看的权限, 使用下面的命令: kubectl -n logging-kafka create -f - <<EOF apiVersion: v1 kind: ServiceAccount metadata: name: fluentd EOF 创建绑定关系: kubectl create -f - <<EOF kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: fluentd-kafka roleRef: kind: ClusterRole name: view apiGroup: rbac.authorization.k8s.io subjects: - kind: ServiceAccount name: fluentd namespace: logging-kafka EOF 创建配置文件 # 执行下面到命令创建configmap: ...

使用fluentd收集kubernetes日志并推送到ES

2022-9-20
technology
fluentd

这篇文章使用fluentd官方提供的kubernetes部署方案daemonset来部署日志收集, 参考项目地址: https://github.com/fluent/fluentd-kubernetes-daemonset 本文使用的kubernetes版本为: 1.22.8 使用fluentd镜像为: fluent/fluentd-kubernetes-daemonset:v1.15.2-debian-elasticsearch7-1.0 请注意下文配置中<var>标记, 需要根据需求自行替换. 创建命名空间 # 本项目所有的资源创建在logging下, 先创建它: NAMESPACE=logging kubectl create ns $NAMESPACE 先创建服务账号 # 创建服务账号并赋予集群查看的权限, 使用下面的命令: kubectl -n $NAMESPACE create -f - <<EOF apiVersion: v1 kind: ServiceAccount metadata: name: fluentd EOF 创建绑定关系: kubectl create -f - <<EOF kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: fluentd roleRef: kind: ClusterRole name: view apiGroup: rbac.authorization.k8s.io subjects: - kind: ServiceAccount name: fluentd namespace: ${NAMESPACE} EOF 创建配置文件 # 配置文件使用configmap挂在在容器内, 覆盖容器内现有的配置文件. ...

Fluentd配置文件最佳实践

2022-7-31
technology
kubernetes, fluentd

Fluentd负责Kubernetes中容器日志的收集工作, 以Daemonset形式运行在每一个节点上. 下面这个配置是在多个生产集群使用的配置, 经过多次调优的. 有一些关键的配置增加了配置解释说明. 目前使用问题不大. 持续更新配置中…