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

AWS EC2上的Jenkins无法连接updates.jenkins.io下载插件求助

问题分析与解决方法

核心原因

  1. IPv6连通性限制:官方Jenkins更新站updates.jenkins.io未提供完善的IPv6支持,导致你的IPv6-only EC2实例无法建立连接,curl超时的结果直接验证了这一点。
  2. 镜像源配置错误:你之前替换的是插件文件的根目录URL,但Jenkins更新需要的是**update-center.json索引文件**的完整地址,而非插件存储目录,这是导致镜像站配置后仍报错的关键。

解决方法

方法一:强制Jenkins使用IPv4访问更新源

这是最直接的解决方案,绕过IPv6的连通问题:

  • 编辑Jenkins启动配置文件(YUM安装的实例通常路径为/etc/sysconfig/jenkins)
  • 找到JENKINS_JAVA_OPTIONS参数,添加-Djava.net.preferIPv4Stack=true,修改后示例:
    JENKINS_JAVA_OPTIONS="-Djava.net.preferIPv4Stack=true -Djava.awt.headless=true"
    
  • 重启Jenkins服务:
    sudo systemctl restart jenkins
    
  • 验证:重启后进入「Manage Jenkins>Plugins」,点击「Check Now」,或在EC2实例上执行curl -4 -i https://updates.jenkins.io/update-center.json确认连通性。

方法二:配置正确的镜像更新源

若需保留IPv6环境,需使用提供完整update-center.json索引的镜像源:

  1. 选择支持IPv6的Jenkins镜像源(需包含可访问的update-center.json文件)
  2. 进入Jenkins后台「Manage Jenkins>Manage Plugins>Advanced」标签页
  3. 在「Update Site」区域,将URL替换为镜像源的update-center.json完整地址(而非插件目录)
  4. 点击「Submit」保存,再点击「Check Now」验证更新功能

备选方案:本地离线索引文件

如果找不到合适的IPv6镜像,可手动生成本地索引:

  • 在有IPv4网络的机器上下载官方索引:
    curl https://updates.jenkins.io/update-center.json -o update-center.json
    
  • 将文件上传至EC2实例,用Python临时启动HTTP服务:
    python3 -m http.server 8000
    
  • 在Jenkins更新站点URL填入http://localhost:8000/update-center.json,即可使用本地索引获取插件列表

额外排查点

  • 检查EC2安全组与NACL的出站规则,确认允许IPv6的443端口(HTTPS)访问外部
  • 验证EC2的IPv6路由表,确保存在指向Internet Gateway的默认路由
  • 若强制IPv4后仍有问题,检查EC2的IPv4 NAT网关配置是否正常

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 00:45:12