title: “gke/WARN/2024_007” linkTitle: “WARN/2024_007” weight: 1 type: docs description: > Google Kubernetes Engine (GKE) clusters with dual-stack networking and IPv6 enabled need internal IP address for Internal LB

Product: Google Kubernetes Engine
Rule class: WARN - Something that is possibly wrong

Description

When using a Google Kubernetes Engine (GKE) cluster with a dual-stack subnet configured for external IPv6 access, you won’t be able to create or update an internal load balancer service. Internal load balancers require an internal IP address, typically obtained from the GKE subnet. External IPv6 access prevents internal IPallocation. When your subnet is set up for external IPv6 access, the system prioritizes external IPs, making it impossible to get an internal IPv6 address for the load balancer. This limitation applies to services with the annotation “networking.gke.io/load-balancer-type: “Internal” which specifically instructs GKE to create an internal load balancer.

Remediation

Create a separate subnet within your VPC specifically for internal resources and services. Configure this subnet with internal IPv6 access only. This ensures that internal IPv6 addresses are available for your internal load balancer. When creating your GKE cluster, specify this new subnet for your nodes and internal services.

References

Load Balancer subnet Configuring dual-stack clusters