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

能否让AWS EKS中Service流量仅路由至Primary Pod?

在AWS EKS中实现Service仅路由至Primary Pod的方案(排除就绪探针)

方案1:标签选择器+动态标签切换

  • 为Service配置精准标签选择器,仅匹配带有role: primary标签的Pod:
    apiVersion: v1
    kind: Service
    metadata:
      name: app-service
    spec:
      selector:
        app: your-java-app
        role: primary
      ports:
      - protocol: TCP
        port: 80
        targetPort: 8080
    
  • 给Primary Pod固定打上role: primary标签,Standby Pod打上role: standby标签。
  • 主备切换时,通过命令更新Pod标签即可:
    # 将Standby Pod切换为Primary
    kubectl label pod <standby-pod-name> role=primary --overwrite
    # 将原Primary Pod切换为Standby
    kubectl label pod <primary-pod-name> role=standby --overwrite
    
  • 优势:Standby Pod保持正常运行状态,可通过Pod IP、单独的Standby Service或Headless Service直接访问,完全不影响其可用性。

方案2:Headless Service + 自定义流量代理

  • 创建Headless Service匹配所有两个Pod(不做负载均衡,返回所有Pod IP):
    apiVersion: v1
    kind: Service
    metadata:
      name: app-headless
    spec:
      clusterIP: None
      selector:
        app: your-java-app
      ports:
      - protocol: TCP
        port: 80
        targetPort: 8080
    
  • 在应用Pod中部署轻量代理Sidecar(比如Nginx),或在集群内部署独立代理服务,让代理层判断Pod角色,仅将请求转发到Primary Pod。
  • 对外暴露的主Service指向代理端口,外部请求通过Service到达代理后路由到Primary Pod;Standby Pod可通过Headless Service或直接IP访问。

方案3:基于Gateway API的流量规则(适用于支持Gateway API的EKS集群)

  • 使用AWS Gateway Controller for EKS配置Gateway和HTTPRoute,通过Route规则精准筛选Primary Pod:
    apiVersion: gateway.networking.k8s.io/v1beta1
    kind: HTTPRoute
    metadata:
      name: app-route
    spec:
      parentRefs:
      - name: your-gateway
      rules:
      - matches:
        - path:
            type: PathPrefix
            value: /
        backendRefs:
        - name: app-service-backend
          port: 8080
          filters:
          - type: FilterMatch
            filterMatch:
              labels:
                role: primary
    
  • 该方案通过Gateway路由规则直接将流量导向Primary Pod,Standby Pod可通过单独Route或直接访问,适合已采用云原生网关架构的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 11:46:06