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

Kubernetes Pod无法请求HTTPS站点TLS连接失败问题排查求助

裸金属Kubernetes集群Pod内HTTPS请求故障解决方案

故障现象整理

  • 部署环境:裸金属Kubernetes集群,已安装Calico、Kubernetes Dashboard、MetalLB、ingress-nginx组件,正在部署SonarQube
  • 核心故障:集群基础功能正常,但所有Pod内发起的HTTPS请求均失败,Pod仅内置wget工具,无curl、不支持ping
  • 初期故障表现:执行wget https://google.com时域名被错误解析为内网IP 192.168.1.179,报错如下:
Connecting to google.com (192.168.1.179:443)
ssl_client: google.com: TLS connect failed
wget: error getting response: Connection reset by peer
command terminated with exit code 1

排查验证:宿主机resolv.conf配置为公共DNS 1.1.1.1/1.0.0.1,无内网DNS配置

  • 重启后故障变化:宿主机重启后域名解析恢复正常,可正确解析到公网IP,但HTTPS请求仍报错:
Connecting to google.com (142.250.204.14:443)
ssl_client: google.com: TLS connect failed
wget: error getting response: Connection reset by peer
command terminated with exit code 1

排查解决步骤

1. 网络策略拦截排查

检查SonarQube所在命名空间及集群全局的Calico网络策略,确认是否存在规则禁止了Pod向外发起443端口的TCP请求。可临时清空对应命名空间的所有网络策略后重试请求,验证是否为网络策略拦截导致故障。

2. 节点/内网防火墙排查

  • 执行iptables -L -n | grep 443和ufw status检查宿主机防火墙规则,确认未拦截Calico虚拟网卡发起的443端口出站请求
  • 确认内网出口网关、防火墙未对Kubernetes Pod网段的出站HTTPS请求做拦截限制

3. SNAT配置验证

检查Calico的SNAT配置是否正常:Pod访问公网时需要被正确SNAT为宿主机IP,若未配置SNAT,公网返程流量无法路由回Pod,会直接触发连接重置。

4. 根证书缺失排查

部分精简容器镜像默认未携带CA根证书,会导致TLS握手校验失败。可执行wget --no-check-certificate https://google.com验证:如果跳过证书校验后请求正常,说明是根证书缺失问题,在镜像内安装ca-certificates包即可修复。

5. MTU配置冲突排查

Calico默认MTU为1450,若宿主机物理网卡MTU为1500且未配置MSS clamping,HTTPS传输大包时会出现包丢弃问题,引发连接重置。可将Calico的MTU配置调整为宿主机物理网卡MTU减50后重试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 10:57:03