云原生日志采集插件
插件简介
云原生日志采集插件(log-agent)是基于开源fluent-bit和opentelemetry构建的云原生日志、K8s事件采集插件。log-agent支持基于CRD的日志采集策略,可以根据您配置的策略规则,对集群中的容器标准输出日志、容器文件日志、节点日志及K8s事件日志进行采集与转发。同时支持上报K8s事件到AOM,用于配置事件告警,默认上报所有异常事件和部分正常事件。
自1.3.2版本起,云原生日志采集插件默认会将上报所有Warning级别事件以及部分Normal级别事件到应用运维管理(AOM),上报的事件可用于配置告警。当集群版本为1.19.16、1.21.11、1.23.9或1.25.4及以上时,安装云原生日志采集插件后,事件上报AOM将不再由控制面组件上报,改为由云原生日志采集插件上报,卸载插件后将不再上报事件到AOM。
约束与限制
仅支持1.17及以上版本集群。
插件性能规格
性能项 |
说明 |
备注 |
---|---|---|
单条日志大小 |
单条日志不得超过512k,多行日志采集则每行日志单独计算长度。 |
不涉及 |
最大采集文件数 |
单个节点所有日志采集规则监听的文件数不超过4095个文件。 |
不涉及 |
日志采集速率 |
|
超过限制尽可能提供服务,不保证服务质量。 |
配置更新 |
配置更新生效的延时约1-3分钟。 |
不涉及 |
权限说明
云原生日志采集插件中的fluent-bit组件会根据用户的采集配置,读取各节点上容器标准输出、容器内文件日志以及节点日志并采集。
fluent-bit组件运行需要以下权限:
- CAP_DAC_OVERRIDE:忽略文件的 DAC 访问限制。
- CAP_FOWNER:忽略文件属主 ID 必须和进程用户 ID 相匹配的限制。
- DAC_READ_SEARCH:忽略文件读及目录搜索的 DAC 访问限制。
- SYS_PTRACE:允许跟踪任何进程。
安装插件
- 登录CCE控制台,单击集群名称进入集群,在左侧导航栏中选择“插件中心”,在右侧找到云原生日志采集插件,单击“安装”。
- 在安装插件页面,设置“规格配置”。
表1 插件规格配置 参数
参数说明
插件规格
该插件可配置“小规格”、“大规格”或“自定义”规格。
实例数
选择上方插件规格后,显示插件中的实例数。
选择“自定义”规格时,您可根据需求调整插件实例数。
实例数为1时插件不具备高可用能力,当插件实例所在节点异常时可能导致插件功能无法正常使用,请谨慎选择。
容器
log-agent插件包含以下容器,您可根据需求自定义调整规格:
- fluent-bit:日志收集器,以DaemonSet形式安装在每个节点。
- cop-logs:负责采集侧配置文件生成及更新的组件。
- log-operator:负责解析及更新日志规则的组件。
- otel-collector:负责集中式日志转发的组件,将fluent-bit收集的日志转发到LTS。
- 设置插件实例的“调度策略”。
调度策略对于DaemonSet类型的插件实例不会生效。
表2 插件调度配置 参数
参数说明
多可用区部署
- 优先模式:优先将插件的Deployment实例调度到不同可用区的节点上,如集群下节点不满足多可用区,插件实例将调度到单可用区。
- 强制模式:插件Deployment实例强制调度到不同可用区的节点上,如集群下节点不满足多可用区,插件实例将无法全部运行。
- 完成以上配置后,单击“安装”。
组件说明
容器组件 |
说明 |
资源类型 |
---|---|---|
fluent-bit |
轻量级的日志收集器和转发器,部署在每个节点上采集日志。 |
DaemonSet |
cop-logs |
负责生成采集文件的软链接,和fluent-bit运行在同一Pod。 |
DaemonSet |
log-operator |
负责生成内部的配置文件。 |
Deployment |
otel-collector |
负责收集来自不同应用程序和服务的日志数据,集中后上报至LTS。 |
Deployment |