# 云原生日志采集插件
#### 插件简介
云原生日志采集插件（原名log-agent）是基于开源fluent-bit和opentelemetry构建的云原生日志、K8s事件采集插件。log-agent支持基于CRD的日志采集策略，可以根据您配置的策略规则，对集群中的容器标准输出日志、容器文件日志、节点日志及K8s事件日志进行采集与转发。同时支持上报K8s事件到AOM，用于配置事件告警，默认上报所有异常事件和部分正常事件。
![](https://support.huaweicloud.com/usermanual-cce/public_sys-resources/note_3.0-zh-cn.png)
自1.3.2版本起，云原生日志采集插件默认会将上报所有Warning级别事件以及部分Normal级别事件到应用运维管理（AOM），上报的事件可用于配置告警。
当集群版本为1.19.16、1.21.11、1.23.9或1.25.4及以上时，安装云原生日志采集插件后，控制面组件不再负责将事件上报至AOM，改为由云原生日志采集插件上报。卸载插件时：若插件版本低于1.7.3，控制面不会重新接管，事件将不再上报AOM；若插件版本为1.7.3及以上，控制面会重新接管，继续上报事件到AOM。
#### 日志采集可靠性说明
日志系统的核心功能在于记录业务组件的全生命周期状态数据（包括启动初始化、退出、运行时信息及异常事件等），主要服务于组件运行状态查看与故障根因分析等运维场景。
请注意标准输出流（stdout/stderr）及本地日志文件采用非持久化存储机制，其数据完整性受制于以下风险因素：
- 日志轮转压缩机制可能触发历史文件清除。
- Kubernetes Pod实例终止导致的临时存储卷回收。
- 节点存储空间限制触发的操作系统自动清理。
尽管云原生日志采集插件通过多级缓冲、优先级队列、断点续传等机制优化采集可靠性，但在以下场景仍存在日志采集丢失的可能：
- 业务日志吞吐量超过采集端处理能力。
- 业务Pod终止并立即被容器运行时回收。
- 日志采集器Pod运行异常。
以下是基于云原生日志管理的最佳实践建议，请您认真考虑并采纳：
- 请通过专用高可靠性通道记录并持久化关键业务数据（如金融交易）。
- 请勿在日志中进行记录客户信息、支付凭证、会话令牌等敏感数据。
 
#### 约束与限制
仅支持1.17及以上版本集群。
 #### 插件性能规格
| 性能项   | 说明                                                                                                                                                                                                                                 | 备注                   |
|:---|:---|:---|
| 单条日志大小  | 单条日志不得超过512000bytes，多行日志采集则每行日志单独计算长度。                                                                                                                                                                                              | 不涉及                 |
| 最大采集文件数 | 单个节点所有日志采集规则监听的文件数不超过4095个文件。                                                                                                                                                                                                      | 不涉及                 |
| 日志采集速率   | - 插件低于1.5.0版本，每个集群限制单行日志采集速率不超过10000条/秒，多行日志不超过2000条/秒。  - 插件为1.5.0及以上版本，单节点限制日志采集速率不超过20000条/s、10MB/s。   | 超过限制尽可能提供服务，不保证服务质量。 |
| 配置更新    | 配置更新生效的延时约1-3分钟。                                                                                                                                                                                                                   | 不涉及                 |
   
#### 权限说明
云原生日志采集插件中的fluent-bit组件会根据用户的采集配置，读取各节点上容器标准输出、容器内文件日志以及节点日志并采集。
fluent-bit组件运行需要以下权限：
- CAP_DAC_OVERRIDE：忽略文件的 DAC 访问限制。
- CAP_FOWNER：忽略文件属主 ID 必须和进程用户 ID 相匹配的限制。
- DAC_READ_SEARCH：忽略文件读及目录搜索的 DAC 访问限制。
- SYS_PTRACE：允许跟踪任何进程。
![](https://support.huaweicloud.com/usermanual-cce/public_sys-resources/caution_3.0-zh-cn.png)
云原生日志采集插件通过上述权限提升日志读取能力。但若日志文件存储在外部挂载的文件系统（如SFS），该权限可能无法生效。为确保日志采集正常，请确保paas用户（UID 10000）拥有日志所在目录的读权限和执行权限、以及目录下文件的读权限。
#### 安装插件
1. 登录[CCE控制台](https://console.huaweicloud.com/cce2.0/?#/cce/cluster/list)，单击集群名称进入集群。
2. 在左侧导航栏中选择"插件中心"，在右侧找到**云原生日志采集插件**，单击"安装"。
3. 在安装插件页面，根据需求选择"规格配置"。 
   - 选择"系统预置规格"时，您可根据节点日志量选择"小规格"或"大规格"，系统会根据不同的预置规格配置插件的实例数及资源配额，具体配置值请以控制台显示为准。
   
   - 选择"自定义规格"时，您可根据需求调整插件实例数和资源配额。实例数为1时插件不具备高可用能力，当插件实例所在节点异常时可能导致插件功能无法正常使用，请谨慎选择。
   
   
   
   
4. 设置"委托配置"。1.7.9及以上版本的插件支持该配置。 
   插件在运行时需要访问其他云服务资源，需要您通过委托配置授权插件对各类云服务资源进行操作。详情请参见[插件自定义委托说明](https://support.huaweicloud.com/usermanual-cce/cce_10_1099.html)。
   - 使用系统推荐委托：自动创建该插件的默认委托并使用，默认委托如果已存在则不会重复创建。
   
   - 使用已有委托：在选择委托的下拉列表中选择创建的委托。**请确保已对创建的自定义委托授予了必须的权限，否则插件功能可能无法正常使用。**
    
   
   
5. （1.6.1及以上版本的插件支持）配置插件参数，相关参数说明请参见[Tail](https://docs.fluentbit.io/manual/pipeline/inputs/tail)。
   
   
   | 参数名称                       | 参数解释                                                                   | 默认取值                                         ||
   | 参数名称                       | 参数解释                                                                   | 大规格    | 其他规格   |
   |:---|:---|:---|:---|
   | 初始缓冲区大小（Buffer_Chunk_Size） | 设置初始缓冲区大小以读取文件。                                                        | 256k    | 128k |
   | 缓冲区最大限制值（Buffer_Max_Size） | 设置每个受监视文件的缓冲区大小限制。当需要增加缓冲区时，此值用于限制内存缓冲区可以增加多少。如果超过此限制，则将从监控文件列表中删除该文件。 | 1024k     | 512k |
   | 内存缓冲区限制（Mem_Buf_Limit）   | 数据追加到引擎时的内存限制。如果达到此限制，插件读取日志文件数据将暂停；刷新数据后，将再次恢复。                       | 300mb | 40mb  |
      
   ![](https://support.huaweicloud.com/usermanual-cce/public_sys-resources/note_3.0-zh-cn.png)
   参数单位支持k、kb、m、mb、g、gb（不区分大小写），如果不填写单位则表示以字节为单位。
   
   
6. 设置插件实例的部署策略。 
   ![](https://support.huaweicloud.com/usermanual-cce/public_sys-resources/note_3.0-zh-cn.png)
   调度策略对于DaemonSet类型的插件实例不会生效。
   表1插件调度配置 
   | 参数   | 参数说明                                                                                                                                                                                                                                                                                              |
   |:---|:---|
   | 多可用区部署 | - 优先模式：优先将插件的Deployment实例调度到不同可用区的节点上，如集群下节点不满足多可用区，插件实例将调度到单可用区下的不同节点。  - 强制模式：插件Deployment实例强制调度到不同可用区的节点上，每个可用区下最多运行一个实例。如集群下节点不满足多可用区，插件实例将无法全部运行。节点故障后，插件实例存在无法迁移风险。   |
      
   
   
7. 完成以上配置后，单击"安装"。
 
#### 组件说明
表2log-agent组件 
| 容器组件               | 说明                                                                                                                                                                                                                                                 | 资源类型        |
|:---|:---|:---|
| fluent-bit           | 轻量级的日志收集器和转发器，部署在每个节点上采集日志。1.5.0及以上版本将直接上报日志到LTS，低于1.5.0版本则上报到otel-collector。                                                                                                                                                                    | DaemonSet  |
| cop-logs            | 负责生成采集文件的软链接，和fluent-bit运行在同一Pod。                                                                                                                                                                                                                | DaemonSet    |
| log-operator           | 负责生成内部的配置文件。                                                                                                                                                                                                                                        | Deployment  |
| otel-collector      | 负责采集Kubernetes事件上报到LTS以及AOM，同时接收日志数据上报至LTS。 其中，日志数据上报范围与插件版本有关。低于1.5.1版本时，该组件会上报不同应用程序和服务的日志数据，在1.5.1及以上版本则仅上报弹性到CCI的工作负载日志。 1.7.5及以上版本中，该组件仅用于上报弹性到CCI的工作负载日志，若没有该使用场景，可将该组件的副本数设为0。 | Deployment   |
| otel-collector-event | 1.7.5及以上版本新增的组件，负责采集Kubernetes事件上报到LTS以及AOM。                                                                                                                                                                                                     | Deployment |
   
#### 插件使用说明
该插件支持采集容器标准输出日志、容器文件日志、节点日志及K8s事件日志。您可以选择使用云日志服务（LTS）或应用运维管理服务（AOM）存储日志，但二者支持的日志类型存在差异，详情请参见[表3]。
 表3日志存储位置说明 
| 日志存储位置 | 支持的日志类型                                                                                                                                                                                                                 | 使用说明                                                                                                                                                                                                  |
|:---|:---|:---|
| LTS    | - 容器标准输出日志  - 容器文件日志  - 节点日志   | 请前往日志中心创建策略，具体配置方法请参见[通过云原生日志采集插件采集容器日志](https://support.huaweicloud.com/usermanual-cce/cce_10_0555.html)。                                                                                       |
| LTS    | Kubernetes事件                                                                                                                                                                                                        | 具体配置方法请参见[采集Kubernetes事件](https://support.huaweicloud.com/usermanual-cce/cce_10_0793.html)。                                                                                                          |
| LTS    | 控制平面组件日志                                                                                                                                                                                                              | 具体配置方法请参见[采集控制面组件日志](https://support.huaweicloud.com/usermanual-cce/cce_10_0554.html)。                                                                                                             |
| LTS    | Kubernetes审计日志                                                                                                                                                                                                       | 具体配置方法请参见[采集Kubernetes审计日志](https://support.huaweicloud.com/usermanual-cce/cce_10_0792.html)。                                                                                                     |
| LTS    | NGINX Ingress插件日志                                                                                                                                                                                                     | 具体配置方法请参见[采集NGINX Ingress访问日志](https://support.huaweicloud.com/usermanual-cce/cce_10_0933.html)。                                                                                                     |
| AOM       | Kubernetes事件                                                                                                                                                                                                         | 当集群版本为1.19.16、1.21.11、1.23.9或1.25.4及以上时，默认上报所有异常事件和部分正常事件，具体配置方法请参见[Kubernetes事件上报应用运维管理（AOM）](https://support.huaweicloud.com/usermanual-cce/cce_10_0793.html#cce_10_0793__section1626024011253)。 |
   
#### 相关文档
- 安装云原生日志采集插件后，您可以使用日志中心，帮助您实现Kubernetes集群的日志采集，详情请参见[日志中心概述](https://support.huaweicloud.com/usermanual-cce/cce_10_0557.html)。
- 日志采集过程中可能会出现采集中断、数据丢失等情况，为确保日志的完整性和可用性，建议您设置日志采集状态的监控与告警，详情请参见[日志采集状态监控及告警最佳实践](https://support.huaweicloud.com/usermanual-cce/cce_10_0989.html)。
 
#### 版本记录
表4云原生日志采集插件版本记录 
| 插件版本     | 支持的集群版本                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | 更新特性                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|
| 1.7.14    | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 v1.31 v1.32 v1.33 v1.34 v1.35 v1.36       | 修复部分问题                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| 1.7.13   | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 v1.31 v1.32 v1.33 v1.34 v1.35 v1.36 | 支持CCE v1.36集群                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| 1.7.10  | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 v1.31 v1.32 v1.33 v1.34 v1.35                                                                    | 支持CCE v1.35集群                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| 1.7.9   | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 v1.31 v1.32 v1.33 v1.34                                                                                                                                          | 修复部分问题                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| 1.7.8   | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 v1.31 v1.32 v1.33 v1.34                                                                                                                                     | 支持CCE v1.34集群                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| 1.7.6    | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 v1.31 v1.32 v1.33                                                                                                                                                                                                                | - 适配CCE v1.33集群  - 优化事件采集的内存消耗                                                                                                                                                                                                |
| 1.7.4   | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 v1.31 v1.32                                                                                                                                                                                                                                                                       | 所有命名空间的标准输出采集策略支持通过实例标签配置黑名单                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| 1.7.3  | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 v1.31 v1.32                                                                                                                                                                                                                                                                    | 适配CCE v1.32集群                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| 1.7.2    | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 v1.31                                                                                                                                                                                                                                                                                                                                       | 支持日志gzip压缩上报LTS                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| 1.7.1      | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 v1.31                                                                                                                                                                                                                                                                                                                                    | 修复部分问题                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| 1.7.0    | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 v1.31                                                                                                                                                                                                                                                                                                                                        | 支持v1.31集群                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| 1.6.1    | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30                                                                                                                                                                                                                                                                                                                                                                                                        | - 支持自动创建LTS日志流  - 支持配置Buffer_Chunk_Size、Buffer_Max_Size、Mem_Buf_Limit参数  - 上报到AOM的事件中添加pod_ip字段   |
| 1.6.0   | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30                                                                                                                                                                                                                                                                                                                                                                                                        | - 支持v1.30集群  - 安全加固：将插件使用的查询secret的权限限制在monitoring命名空间                                                                                                                                                        |
| 1.5.2    | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 新增创建容器日志默认日志流时索引功能                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| 1.5.1   | v1.21 v1.23 v1.25 v1.27 v1.28 v1.29                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | - 支持v1.29集群  - 支持日志从各节点直接上报LTS                                                                                                                                                                                               |
| 1.4.5   | v1.21 v1.23 v1.25 v1.27 v1.28                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 修复部分问题                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| 1.4.2   | v1.21 v1.23 v1.25 v1.27 v1.28                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | - 支持v1.28集群  - 支持本地集群日志采集  - 支持GPU事件上报AOM字段特殊处理                                                    |
| 1.3.10 | v1.17 v1.19 v1.21 v1.23 v1.25 v1.27 v1.28                                                                                                                                                                                                                                                                                                                                                                                                    | 修复fluent-bit内存崩溃漏洞                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| 1.3.6   | v1.17 v1.19 v1.21 v1.23 v1.25 v1.27                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| 1.3.4   | v1.17 v1.19 v1.21 v1.23 v1.25 v1.27                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | - 支持v1.27集群  - 默认不再上报标准输出和Kubernetes事件到云日志服务(LTS)                                                                                                                                                                    |
| 1.3.2   | v1.17 v1.19 v1.21 v1.23 v1.25                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 支持Kubernetes事件上报至AOM                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| 1.3.0   | v1.17 v1.19 v1.21 v1.23 v1.25                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | 支持v1.25集群                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| 1.2.3   | v1.17 v1.19 v1.21 v1.23                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| 1.2.2   | v1.17 v1.19 v1.21 v1.23                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | log-agent是基于开源fluent-bit和opentelemetry构建的云原生日志采集插件。log-agent支持基于CRD的日志采集策略，可以根据您配置的策略规则，对集群中的容器标准输出日志、容器文件日志、节点日志及K8s事件日志进行采集与转发。                                                                                                                                                                                                                                                                                                                                     |
   
