You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

K8s Operator调用镜像原理及Jaeger Operator切换私有仓库配置

Jaeger Operator 配置私有镜像仓库拉取镜像方案

Operator调用镜像的核心逻辑

Jaeger Operator通过解析Jaeger自定义资源(CR)中的配置,生成对应组件的Deployment、StatefulSet等Kubernetes资源,这些资源的容器镜像地址完全由CR或Operator自身的环境变量控制,默认使用quay.io官方镜像源。

具体配置方法

1. 全局配置(统一所有Jaeger实例的镜像源)

修改Jaeger Operator的Deployment,添加RELATED_IMAGE_*系列环境变量,指定私有仓库的镜像地址:

kubectl patch deployment jaeger-operator \
  -p '{"spec":{"template":{"spec":{"containers":[{"name":"jaeger-operator","env":[{"name":"RELATED_IMAGE_jaeger","value":"your-registry/jaegertracing/jaeger:latest"},{"name":"RELATED_IMAGE_collector","value":"your-registry/jaegertracing/jaeger-collector:latest"},{"name":"RELATED_IMAGE_query","value":"your-registry/jaegertracing/jaeger-query:latest"},{"name":"RELATED_IMAGE_agent","value":"your-registry/jaegertracing/jaeger-agent:latest"}]}]}}}'

替换your-registry为你的私有仓库地址,标签保持和官方镜像一致即可。配置后,所有由该Operator创建的Jaeger实例都会默认使用私有仓库镜像。

2. 单个Jaeger实例配置(针对特定实例覆盖)

直接在Jaeger CR中逐个指定组件镜像,示例YAML:

apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: custom-jaeger
spec:
  # 指定镜像拉取密钥(如果私有仓库需要认证)
  imagePullSecrets:
    - name: regcred
  # 配置各组件镜像
  agent:
    image: your-registry/jaegertracing/jaeger-agent:1.49.0
  collector:
    image: your-registry/jaegertracing/jaeger-collector:1.49.0
  query:
    image: your-registry/jaegertracing/jaeger-query:1.49.0
  ingester:
    image: your-registry/jaegertracing/jaeger-ingester:1.49.0
  # 若使用Elasticsearch存储,同步配置其镜像
  storage:
    type: elasticsearch
    elasticsearch:
      image: your-registry/elasticsearch:7.17.9

这种方式仅对当前Jaeger实例生效,适合多实例差异化配置的场景。

3. 配置私有仓库认证密钥

如果你的私有镜像仓库需要用户名密码认证,先创建拉取密钥:

kubectl create secret docker-registry regcred \
  --docker-server=your-registry \
  --docker-username=your-account \
  --docker-password=your-password \
  --docker-email=your-email@xxx.com

然后通过上述CR中的imagePullSecrets字段关联该密钥即可。

额外注意事项

  • 确保私有仓库中已同步好所有需要的Jaeger组件镜像,标签必须与配置一致
  • 若通过Helm安装Jaeger Operator,可直接在values.yaml中设置global.imageRegistry或各组件的image参数,更便于批量管理
  • Operator自身的镜像也需从私有仓库拉取时,安装Helm Chart时指定:
    helm install jaeger-operator jaegertracing/jaeger-operator \
      --set image.repository=your-registry/jaegertracing/jaeger-operator \
      --set image.tag=1.49.0
    

内容的提问来源于stack exchange,提问作者Tiriyon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 16:50:25