全部產品
Search
文件中心

Simple Log Service:使用CR執行個體管理採集配置

更新時間:Aug 27, 2026

CRD(CustomResourceDefinition)允許使用者定義自訂資源類型,Log Service利用CRD定義了自己的資源類型,您可以通過建立CR(CustomResource)執行個體來管理採集配置。本文主要介紹Log Service的兩類CRD(AliyunPipelineConfig和AliyunLogConfig)的區別和優勢。

背景資訊

CRD全稱為“CustomResourceDefinition”,是Kubernetes(k8s)的一種API對象,允許使用者定義自訂資源類型。通過CRD,使用者可以擴充Kubernetes原生的API,以滿足特定的應用情境需求。CR即“CustomResource”,是基於CRD定義的資源類型建立的具體的執行個體。

Log Service定義了自己的CRD,並支援通過CR來管理Logtail採集配置。您需要串連Kubernetes叢集,並額外使用Kubernetes鑒權。然後向kube-apiserver提交YAML設定檔來建立資源,從而建立相應的Logtail採集配置。

警告

通過CR建立的配置,在控制台上對其修改不會同步到CR中。因此,如需修改由CR建立的配置內容,只能修改CR執行個體,禁止直接在控制台操作,避免配置不一致。

通過CR管理Logtail採集配置的工作原理

  1. Log Service通過Deployment部署了一個控制器alibaba-log-controller,該控制器負責監聽 AliyunLogConfig 資源的變化。

  2. 當使用者通過kubectl或其他Kubernetes管理工具建立、更新或刪除AliyunLogConfig資源時,alibaba-log-controller會監測到這些變化,然後根據資源設定檔中的內容和服務端Logtail採集配置的狀態,自動向Log Service提交各種請求,如採集配置變更等。

CRD類型

警告

使用AliyunPipelineConfig,需要日誌組件版本最低為0.5.1。

為了便於通過雲原生方式管理Logtail採集配置,Log Service定義了兩類CRD,它們的能力與區別見下表:

類型

AliyunPipelineConfig(推薦使用)

AliyunLogConfig

ApiGroup

telemetry.alibabacloud.com/v1alpha1

log.alibabacloud.com/v1alpha1

CRD資源名

ClusterAliyunPipelineConfig

AliyunLogConfig

範圍

叢集

命名空間

採集配置格式

基本等價於Log ServiceAPI中的LogtailPipelineConfig

基本等價於Log ServiceAPI中的LogtailConfig

跨地區能力

支援

支援

跨帳號能力

支援

支援

Webhook校正參數

支援

不支援

配置衝突檢測

支援

日誌組件0.5以上版本支援

配置難度

較低

較高

配置可觀測性

Status包含錯誤詳情、更新時間、上次應用成功配置、上次應用成功時間等資訊

Status包含錯誤碼與錯誤資訊

CRD 刪除後 404 報錯排查

建立或更新採集配置時,如果報錯no matches for kind "ClusterAliyunPipelineConfig"或the server could not find the requested resource,可能是ClusterAliyunPipelineConfig CRD 被誤刪。

排查步驟

  1. 確認 CRD 是否存在:

    kubectl get crd | grep ClusterAliyunPipelineConfig

    如果無輸出,說明 CRD 已被刪除。

  2. 重新部署 LoongCollector 以恢複 CRD:

    helm upgrade loongcollector loongcollector/loongcollector -n kube-system --reuse-values

    或直接應用 CRD YAML:

    kubectl apply -f crd.yaml
  3. 驗證 CRD 已恢複:

    kubectl get crd | grep ClusterAliyunPipelineConfig
  4. 驗證採集配置可正常建立:

    kubectl apply -f your-pipeline-config.yaml
說明

CRD 由 Helm chart 的crds目錄管理,重啟loongcollector-operator不會重建 CRD,需通過helm upgrade或kubectl apply恢複。刪除 CRD 會同時刪除所有已存在的ClusterAliyunPipelineConfig資源。