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

GKE中Kubernetes服务无法配置IPv6负载均衡IP求助

GKE IPv6 LoadBalancer 部署错误排查

问题详情

Service 配置(service.yaml)

apiVersion: v1
kind: Service
metadata:
  annotations:
    cloud.google.com/neg: '{"ingress":true}'
  labels:
    run: ubuntu
  name: ubuntu
  namespace: default
spec:
  loadBalancerIP: "<ipv6-address>"
  ipFamilies:
  - IPv6
  ipFamilyPolicy: SingleStack
  ports:
  - nodePort: 30783
    port: 5000
    protocol: TCP
    targetPort: 5001
  selector:
    run: ubuntu
  sessionAffinity: None
  type: LoadBalancer

预留的IPv6地址信息

deletable-pzk-reg-ip2-6           <ipv6-address>/96  EXTERNAL                    us-central1  pzksubnet1  RESERVED

部署错误提示

Warning  SyncLoadBalancerFailed  13s (x6 over 2m49s)  service-controller  Error syncing load balancer: failed to ensure load balancer: requested ip "<ipv6-address>" is neither static nor assigned to the LB

排查与解决步骤

  • 确认IPv6地址类型:GKE的IPv6 LoadBalancer仅支持全局静态外部IPv6地址,你当前的地址是区域级(us-central1)的静态IP,不符合要求。运行以下命令验证地址类型:

    gcloud compute addresses describe deletable-pzk-reg-ip2-6 --region=us-central1
    

    若输出显示为区域级地址,重新创建全局IPv6地址:

    gcloud compute addresses create ipv6-global-static --ip-version=IPV6 --global
    
  • 检查地址占用状态:确保该IPv6地址未被其他资源绑定,运行以下命令确认状态:

    gcloud compute addresses list --filter="<ipv6-address>"
    

    需保证STATUS列显示为RESERVED,而非IN_USE。

  • 修正Service配置:

    • 将loadBalancerIP替换为新创建的全局IPv6地址
    • 若无需固定nodePort,建议删除nodePort: 30783字段,让Kubernetes自动分配
    • 验证集群IPv6配置:运行gcloud container clusters describe <cluster-name> --zone=<zone>,检查ipAllocationPolicy.ipv6AccessType是否为EXTERNAL
  • 重新部署并验证:

    kubectl delete service ubuntu
    kubectl apply -f service.yaml
    kubectl describe service ubuntu
    

    观察事件日志,确认错误是否消除。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 04:22:35