关于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是正常的,如果这块理解不对,希望大家指正

相关推荐
老实巴交的麻匪6 分钟前
Logs 可观测性 | Grafana Loki 架构窥探与实践
运维·云原生·容器
塑遂7 分钟前
Kubernetes高级调度01
容器·kubernetes
MarkGosling7 分钟前
【开源项目】轻量加速利器 HubProxy自建 Docker、GitHub 下载加速服务
docker·容器·github
MarkGosling20 分钟前
【开源项目】轻量加速利器 HubProxy 自建 Docker、GitHub 下载加速服务
运维·git·docker·容器·开源·github·个人开发
chanalbert28 分钟前
Docker网络技术深度研究与实战手册
docker·容器·自动化运维
东风微鸣1 小时前
AI 赋能的故障排除:技术趋势与实践
docker·云原生·kubernetes·可观察性
KubeSphere 云原生2 小时前
云原生周刊:2025年的服务网格
云原生
Etual2 小时前
云原生联调利器:Telepresence实战
云原生
陌上阳光14 小时前
docker搭建ray集群
docker·容器·ray
这就是佬们吗14 小时前
初识 docker [上]
java·开发语言·笔记·docker·容器