安装
Fluent Bit

参考文档

先决条件

节点组授权: CloudWatchAgentServerPolicy

否则的话,即使控制器部署成功,最后也是没有权限去收集

创建命名空间

# 创建命名空间
kubectl create ns amazon-cloudwatch


配置configmap

# 配置configmap
ClusterName=raymond-eks
RegionName=us-east-1
FluentBitHttpPort='2020'
FluentBitReadFromHead='Off'
[[ ${FluentBitReadFromHead} = 'On' ]] && FluentBitReadFromTail='Off'|| FluentBitReadFromTail='On'
[[ -z ${FluentBitHttpPort} ]] && FluentBitHttpServer='Off' || FluentBitHttpServer='On'
kubectl create configmap fluent-bit-cluster-info \
--from-literal=cluster.name=${ClusterName} \
--from-literal=http.server=${FluentBitHttpServer} \
--from-literal=http.port=${FluentBitHttpPort} \
--from-literal=read.head=${FluentBitReadFromHead} \
--from-literal=read.tail=${FluentBitReadFromTail} \
--from-literal=logs.region=${RegionName} -n amazon-cloudwatch

在此命令中,默认情况下,用于监控插件指标的 FluentBitHttpServer 处于启用状态。要将其关闭,请将命令中的第三行更改为命令中的 FluentBitHttpPort=''(空字符串)。

同样,默认情况下,Fluent Bit 从尾部读取日志文件,并在部署后仅捕获新日志。如果你想要相反的设置,请设置 FluentBitReadFromHead='On',它将收集文件系统中的所有日志。

采集说明

日志组名称日志源

/aws/containerinsights/Cluster_Name/application

/var/log/containers 中的所有日志文件

/aws/containerinsights/Cluster_Name/host

/var/log/dmesg/var/log/secure  /var/log/messages 中的日志

/aws/containerinsights/Cluster_Name/dataplane

kubelet.servicekubeproxy.service  docker.service  /var/log/journal 中的日志。

demonset方式部署采集器

kubectl apply -f https://raw.githubusercontent.com/aws-samples/amazon-cloudwatch-container-insights/latest/k8s-deployment-manifest-templates/deployment-mode/daemonset/container-insights-monitoring/fluent-bit/fluent-bit.yaml

验证

在cloudwatch搜索集群的日志组

自我判定

#

判定描述

自我判定(是/否)

1在各搜索引擎中是否能找到知识信息(包括但不限于Google、百度、Bing)
2是否需要代码集成开发