一、安装 cert-manager OpenTelemetry Operator 提供了 OpenTelemetryCollector CRD(自定义资源定义),能自动处理服务发现和 RBAC(基于角色的访问控制) 该 Operator 需要 cert-manager 来支持准入 Webhook,部署步骤如下: 安装OpenTelemetry Operator 自定义资源,需先部署 cert-manager ,使用yaml 直接部署,文件:02-cert-manager.yaml (官方文档里) 官方文档链接:https://cert-manager.io/docs/installation/kubectl/ cert-manager 将安装在cert-manager命名空间中,安装了cert-manager后,通过以下方式验证其部署是否正确 检查cert-manager命名空间: kubectl get pods --namespace cert-manager NAME READY STATUS RESTARTS AGE cert-manager-7b8b89f89d-tpchr 1/1 Running 0 24s cert-manager-cainjector-7f9fdd5dd5-px66h 1/1 Running 0 25s cert-manager-webhook-769f6b94cb-zmjmv 1/1 Running 0 24s 二、安装 OpenTelemetry Operator 使用 helm 安装OpenTelemetry ,添加 Operator helm 仓库、更新、安装: helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts helm repo update helm install opentelemetry-operator open-telemetry/opentelemetry-operator \ --namespace opentelemetry-operator \ --create-namespace 或者直接使用yaml部署:文件 03-opentelemetry-operator.yaml kubectl apply -f https://github.com/open-telemetry/opentelemetry-operator/releases/latest/download/opentelemetry-operator.yaml kubectl delete -f https://github.com/open-telemetry/opentelemetry-operator/releases/latest/download/opentelemetry-operator.yaml # 查看安装的CRD kubectl get crd | grep opentelemetry.io 输出: instrumentations.opentelemetry.io 2025-12-11T09:02:11Z opampbridges.opentelemetry.io 2025-12-11T09:02:13Z opentelemetrycollectors.opentelemetry.io 2025-12-11T09:02:14Z targetallocators.opentelemetry.io 2025-12-11T09:02:17Z # 查看安装的operator控制器 Pod 状态 kubectl get pods -n opentelemetry-operator-system NAME READY STATUS RESTARTS AGE opentelemetry-operator-controller-manager-9c4b5467d-dhhp7 1/1 Running 0 3m10s # 查看 Operator Deployment 状态 kubectl get deploy opentelemetry-operator-controller-manager -n opentelemetry-operator-system NAME READY UP-TO-DATE AVAILABLE AGE opentelemetry-operator-controller-manager 1/1 1 1 4m43s # 查看证书是否签发成功(验证与 cert-manager 协同正常) NAME READY SECRET AGE certificate.cert-manager.io/opentelemetry-operator-serving-cert True opentelemetry-operator-controller-manager-service-cert 6m13s NAME READY AGE issuer.cert-manager.io/opentelemetry-operator-selfsigned-issuer True 6m12s # 查看 Operator 相关 CRD kubectl get crd | grep opentelemetry.io 输出: instrumentations.opentelemetry.io 2026-01-14T07:28:56Z opampbridges.opentelemetry.io 2026-01-14T07:28:57Z opentelemetrycollectors.opentelemetry.io 2025-12-11T09:02:14Z targetallocators.opentelemetry.io 2026-01-14T07:29:03Z # 卸载命令 # 格式:helm uninstall -n <命名空间> helm uninstall opentelemetry-operator -n opentelemetry-operator # 删除 CRD(仅当你确认不再需要任何 OTel 相关自定义资源实例时执行) # 批量删除 Operator 相关 CRD kubectl delete crd \ instrumentations.opentelemetry.io \ opentelemetrycollectors.opentelemetry.io \ targetallocators.opentelemetry.io