You need to enable JavaScript to run this app.
导航

通过日志服务采集 VCI 容器日志

最近更新时间2024.03.07 17:36:37

首次发布时间2022.08.04 20:24:22

弹性容器实例支持通过火山引擎日志服务采集容器日志。本文将介绍如何将 VCI 容器的标准输出和日志文件采集到日志服务。

前提条件

  • 已在日志服务中创建了名称和机器标识均为k8s-vke-${cluster_id}的机器组。详细操作,请参见 创建机器组(机器标识)
    其中${cluster_id}请替换为您自己容器集群的 ID。
    alt
  • 已在日志服务中创建了 日志项目日志主题。详细操作,请参见 日志项目日志主题
  • 在日志项目中创建采集配置,关联上述创建的机器组,并配置采集规则。详细操作,请参见 采集容器日志

弹性容器实例开启日志采集

弹性容器实例支持如下两种日志采集方式:

  • 通过 Kubernetes 方式增加 Pod Annotation 开启日志采集能力。对于存量弹性容器实例,新增 Pod Annotation 之后需要重新部署。
  • 通过控制台按钮,在创建工作负载时开启采集日志能力。

Kubernetes 方式配置

创建 Pod 或者工作负载(包括 Deployment、StatefulSet、Job、CronJob)时,通过添加 Pod Annotation 开启日志采集能力。

Annotation 说明如下所示。

Annotation KeyAnnotation Value 示例值说明
vci.volcengine.com/tls-enabletrue支持将弹性容器实例的日志采集到日志服务。value 取值如下:
  • false:不开启日志采集。
  • true:开启日志采集。

以创建无状态负载(Deployment)为例,完整的示例代码如下所示:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      annotations:
        vke.volcengine.com/burst-to-vci: enforce  # 强制使用 VCI
        vci.volcengine.com/tls-enable: "true"  # 开启日志采集功能,将日志采集至日志服务
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: cr-cn-beijing.volces.com/tw/nginx:1.0 # 应用镜像的地址和版本,请配置为您自己的镜像地址。
        ports:
        - containerPort: 80
        resources:
          requests:  # 指定容器的 vCPU 和内存    
            cpu: "500m"      
            memory: "1024Mi"
          limits:
            cpu: "1"      
            memory: "2048Mi"

控制台方式配置

  1. 创建一个容器网络模型为 VPC-CNI 的集群。详细操作,请参见 创建 VPC-CNI 容器网络模型的集群
  2. 创建工作负载 时,基本信息 处:选择 以弹性容器实例方式部署,并开启 日志采集 按钮,即可采集弹性容器实例日志到日志服务。
    alt

查看日志

登录 日志服务控制台,对所采集的日志数据进行检索和分析。详细说明,请参见 检索概述分析概述