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

如何在代理环境的Kubernetes(kubeadm)集群中用Helm安装Jenkins?

在代理环境后方的Kubernetes集群中安装Jenkins

基于你的环境描述(包含master、node1、node2三台节点的K8s集群,部署在代理后方),我把你的安装步骤和配置整理成规范的操作流程,同时补充代理环境下容易踩坑的关键配置项:

1. 创建Jenkins专属命名空间

先为Jenkins创建独立的命名空间,避免和其他服务资源混部:

kubectl create namespace jenkins-project

2. 通过Helm安装Jenkins

使用你提供的Helm命令进行安装,指定自定义配置文件和目标命名空间:

helm install --name jenkins -f jenkins-values.yaml stable/jenkins --namespace jenkins-project

3. 你的jenkins-values.yaml核心配置片段

你给出的Master节点配置如下(保留你提供的原始内容):

Master:
  Name: jenkins-master
  Image: "jenkins/jenkins"
  ImageTag: "lts"
  ImagePullPolicy: "Always"
  # ImagePullSecret: jenkins
  Component: "jenkins-master"
  UseSecurity: true
  AdminUser: admin
  # 注:此处你提供的内容未完成,后续可补充AdminPassword等必要配置

代理环境下的关键补充配置

因为集群处于代理后方,仅靠上面的基础配置大概率会遇到镜像拉取失败、Jenkins插件无法安装的问题,我帮你补充几个必须的适配配置:

容器内网络代理配置

在Master配置块中添加环境变量,让Jenkins Pod能通过代理访问外部网络,同时避免集群内部通信走代理:

Master:
  # 原有配置...
  Env:
    - name: HTTP_PROXY
      value: "http://你的代理IP:端口"
    - name: HTTPS_PROXY
      value: "http://你的代理IP:端口"
    - name: NO_PROXY
      value: "localhost,127.0.0.1,cluster.local,.svc,.你的集群域名"

Helm客户端代理设置

如果你的Helm客户端也需要通过代理才能拉取stable/jenkins Chart包,执行安装命令前先设置环境变量:

export HTTP_PROXY=http://你的代理IP:端口
export HTTPS_PROXY=http://你的代理IP:端口
export NO_PROXY=localhost,127.0.0.1,cluster.local,.svc,.你的集群域名

Jenkins JVM级代理(解决插件安装问题)

部分场景下容器级代理无法覆盖Jenkins的插件拉取请求,需要在JVM参数中添加代理配置:

Master:
  # 原有配置...
  JAVA_OPTS: >-
    -Dhttp.proxyHost=你的代理IP
    -Dhttp.proxyPort=端口
    -Dhttps.proxyHost=你的代理IP
    -Dhttps.proxyPort=端口
    -Dhttp.nonProxyHosts=localhost|127.0.0.1|*.cluster.local|*.svc

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 06:35:03