关于k8s中镜像的服务端口被拒绝的问题

错误信息:502,bad gateway

排查

1.网络服务502,放弃走apisixroute地址转发,直接访问pod的service

错误信息Failed to connect to fd00::52f4 port 80: Connection refused

说明不是apisixroute的问题

2.进入pod,curl的方式访问localhost服务,发现服务正常

3.pod正常运行,可以ping通pod暴露的地址

说明pod网络也是ok,正常运行

3.发现pod目前是ipv6单栈的方式,修改成ipv4单栈的方式,可以正常访问到服务,修改方式,在service的yml文件中spec维度下修改ip类型

shell 复制代码
spec:  
  targetPort: cmc-web-port
  ipFamilyPolicy: SingleStack
  ipFamilies:
    - IPv4

说明服务正常的,但是ipv6的方式访问不到,但是ping ipv6也可以ping通

4.最后发现是因为前端走了Nginx.conf的configmap,Nginx默认走的ipv4端口监听,ipv6监听需要额外配置。

shell 复制代码
server{

listen 80;

listen [::]:80;   #ipv6的监听

}

所以用ipv6 的方式访问不到服务,因为服务没有监听ipv6的端口

这段配置跟后端不同,后端使用sprintboot的application.yml文件,虽然只配了一个端口监听,但是ipv4和ipv6的端口都监听到了,因为没有走nginx,直接访问了内置的tomcat端口(而tomcat默认的ipv4和ipv6都支持),所以后端服务只用ipv6是正常的,如果这块理解不对,希望大家指正

相关推荐
another heaven5 小时前
【Docker/虚拟机 深度对比Docker与虚拟机:原理、区别与最佳使用场景】
运维·docker·容器
独自归家的兔5 小时前
2026年4月16日 Ubuntu系统 Docker 的安装与配置
运维·docker·容器
舒一笑5 小时前
Docker 离线镜像导入后变成 <none>:<none>?一文讲透原因、排查与正确打包姿势
后端·docker·容器
匀泪6 小时前
云原生(Kubernetes service微服务)
微服务·云原生·kubernetes
倔强的胖蚂蚁7 小时前
Ollama Modelfile 配置文件 全指南
云原生·开源
鹅是开哥9 小时前
XXL-Job Docker 部署中“登录无响应”的排查与解决
运维·docker·容器
AutoMQ9 小时前
AWS 新发布的 S3 Files 适合作为 Kafka 的存储吗?
云原生·消息队列·云计算
木雷坞11 小时前
2026年4月实测:K8s containerd 镜像拉取全方案汇总
运维·容器·kubernetes
MY_TEUCK13 小时前
从零开始:使用Sealos Devbox快速搭建云原生开发环境
人工智能·spring boot·ai·云原生·aigc
小夏子_riotous1 天前
Docker学习路径——3、常用命令
linux·运维·服务器·学习·docker·容器·centos