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

如何在Kubernetes集群内复用Ingress路由规则实现服务间通信?

解决方案:复用Nginx Ingress实现集群内无TLS路径路由

完全可以复用现有Nginx Ingress的路由能力,实现集群内单主机名+路径的无TLS HTTP通信,不需要额外创建代理或重复配置核心路由规则,具体实现步骤如下:

1. 复用Ingress Controller的集群内服务

Nginx Ingress Controller在集群内默认会以ClusterIP类型的服务运行(通常命名为nginx-ingress-controller,位于ingress-nginx命名空间),集群内Pod可直接访问该服务的80端口(HTTP端口),全程走集群内部网络,不会绕到外部。

2. 创建集群内专用的无TLS Ingress资源

针对内部通信创建独立的Ingress资源,不配置TLS,并复用现有路径路由规则,同时强制关闭HTTPS跳转:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: internal-service-ingress
  annotations:
    nginx.ingress.kubernetes.io/ssl-redirect: "false"  # 禁止HTTP转HTTPS
spec:
  rules:
  - host: cluster-internal.local  # 集群内专用主机名
    http:
      paths:
      # 直接复用现有对外Ingress的路径规则
      - path: /service-a
        pathType: Prefix
        backend:
          service:
            name: service-a
            port: { number: 80 }
      - path: /service-b
        pathType: Prefix
        backend:
          service:
            name: service-b
            port: { number: 80 }

3. 让Pod解析专用主机名到Ingress Controller

有三种简单方式实现主机名解析:

  • 方式一:修改CoreDNS配置(全局生效)
    在CoreDNS的ConfigMap中添加自定义A记录,将cluster-internal.local指向Ingress Controller的ClusterIP:
    cluster-internal.local:53 {
        errors
        cache 30
        forward . <你的Ingress Controller ClusterIP>
    }
    
  • 方式二:Pod级主机映射(单Pod/Deployment生效)
    在Pod的Deployment配置中添加hostAliases,直接映射主机名:
    spec:
      hostAliases:
      - ip: "10.96.0.10"  # 替换为你的Ingress Controller ClusterIP
        hostnames: ["cluster-internal.local"]
    
  • 方式三:直接使用Ingress服务DNS名(无需额外配置)
    直接将Ingress Controller服务的DNS全名作为主机名(比如nginx-ingress-controller.ingress-nginx.svc.cluster.local),同时修改Ingress规则中的host字段为该DNS名,Pod可直接通过Kubernetes DNS解析,无需额外配置。

4. 客户端库配置

将客户端库的主机名参数设置为上述集群内专用主机名(如cluster-internal.local),之后通过/service-a、/service-b这类路径调用对应微服务即可。

关键优势

  • 完全复用现有Ingress的路由配置逻辑,无需重复编写路径规则
  • 通信全程在集群内部网络进行,无跨网开销
  • 采用纯HTTP通信,无需TLS验证,符合集群内通信需求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 18:38:00