TMAegisBeta
More rules for gke

Google Kubernetes Engine (GKE)

TMA-GKE-5.6.2

Use VPC native GKE clusters with alias IP address ranges

MediumLevel 1Automatedgke

Description

Use VPC native GKE clusters with alias IP address ranges so Pod and Service IP addresses are allocated from subnet secondary IP address ranges in the cluster’s VPC network. This provides native VPC routing for GKE workloads and avoids relying on custom static routes for Pod routing. Requires gcloud with container.clusters.get; the cluster comes from GKE_CLUSTER and GKE_LOCATION (optional GKE_PROJECT, else the gcloud default project).

How it is checked

Audit method: Shell command

shell
v=$(gcloud container clusters describe "${GKE_CLUSTER:?set GKE_CLUSTER}" --location "${GKE_LOCATION:?set GKE_LOCATION}" ${GKE_PROJECT:+--project=$GKE_PROJECT} --format='value(ipAllocationPolicy.useIpAliases)') || exit 1
if [ "$v" = True ]; then echo compliant; else echo "noncompliant: ipAllocationPolicy.useIpAliases=$v"; fi
Expected output
compliant

How it is fixed

Fix method: Guidance or infrastructure patch

VPC native networking is selected at cluster creation and cannot be enabled on an existing routes based cluster. To remediate a noncompliant cluster, create a new GKE cluster with alias IP address ranges enabled, migrate workloads to the new cluster, validate application connectivity, and decommission the routes based cluster after migration is complete. gcloud container clusters create $CLUSTER_NAME \ --location $LOCATION \ --project $PROJECT_ID \ --enable-ip-alias For production clusters, define or select appropriate subnet secondary IP address ranges for Pods and Services before cluster creation. Proper IP range planning helps avoid Pod or Service IP exhaustion as the cluster scales. • Note: VPC native networking is selected at cluster creation and cannot be enabled on an existing routes based cluster.

Properties

Operating systems
Any
Tags
gkemanaged-servicesnetwork
Reference
CIS Google Kubernetes Engine (GKE) Benchmark v2.0.0 - 5.6.2 Use VPC native GKE clusters with alias IP address ranges

Check this host

Run this on a machine you are allowed to audit. The scan is read-only.

shell
tmaegis scan --target gke