Increase network traffic speed for GPU nodes Stay organized with collections Save and categorize content based on your preferences.
This page shows you how to increase network bandwidth for GPU nodes onGoogle Kubernetes Engine (GKE) clusters by usingGoogle Virtual NIC (gVNIC).
In Autopilot clusters, nodes that run GKE version 1.30.2-gke.1023000and later have Google Virtual NIC (gVNIC) installed automatically.The instructions on this page only apply to Standard clusters.
To increase bandwidth on CPU nodes, consider enablingTier-1 bandwidth.
Before you begin
Before you start, make sure that you have performed the following tasks:
- Enable the Google Kubernetes Engine API. Enable Google Kubernetes Engine API
- If you want to use the Google Cloud CLI for this task,install and theninitialize the gcloud CLI. If you previously installed the gcloud CLI, get the latest version by running the
gcloud components updatecommand. Earlier gcloud CLI versions might not support running the commands in this document.Note: For existing gcloud CLI installations, make sure to set thecompute/regionproperty. If you use primarily zonal clusters, set thecompute/zoneinstead. By setting a default location, you can avoid errors in the gcloud CLI like the following:One of [--zone, --region] must be supplied: Please specify location. You might need to specify the location in certain commands if the location of your cluster differs from the default that you set.
Limitations
- Compute Enginelimitations apply.
Requirements
- GKE nodes must use a Container-Optimized OSnode image.
Enable gVNIC
You can create a cluster that has node pools that use gVNIC, create a node poolwith gVNIC enabled, or update a node pool to use gVNIC.
Create a cluster
Create a cluster with node pools that use gVNIC:
gcloudcontainerclusterscreateCLUSTER_NAME\--acceleratortype=GPU_TYPE,count=AMOUNT\--machine-type=MACHINE_TYPE\--enable-gvnicReplace the following:
CLUSTER_NAME: the name of the new cluster.GPU_TYPE: the type ofGPU accelerator that you use. For example,nvidia-tesla-t4.AMOUNT: the number of GPUs to attach to nodes in thenode pool.MACHINE_TYPE: the type of machine you want to use.gVNIC is not supported onmemory-optimized machine types.
Create a node pool
Create a node pool that uses gVNIC:
gcloudcontainernode-poolscreateNODEPOOL_NAME\--cluster=CLUSTER_NAME\--enable-gvnicReplace the following:
NODEPOOL_NAME: the name of a new node pool.CLUSTER_NAME: the name of the existing cluster.
Update a node pool
Update a node pool to use gVNIC:
gcloudcontainernode-poolsupdateNODEPOOL_NAME\--cluster=CLUSTER_NAME\--enable-gvnicReplace the following:
NODEPOOL_NAME: the name of the node pool that you wantto update.CLUSTER_NAME: the name of the existing cluster.
This change requires recreating the nodes, which can cause disruption to yourrunning workloads. For details about this specific change, find thecorresponding row in themanual changes that recreate the nodes using a nodeupgrade strategy without respecting maintenancepoliciestable. To learn more about node updates, seePlanning for node updatedisruptions.
Caution: GKE immediately begins recreating the nodes for thischange using the node upgrade strategy, regardless of active maintenancepolicies. GKE depends onresourceavailability for thechange. Disabling node auto-upgradesdoesn't prevent thischange.Ensure that your workloads running on the nodes are prepared for disruptionbefore you initiate this change.Disable gVNIC
Update the node pool using the--no-enable-gvnic flag:
gcloudcontainernode-poolsupdateNODEPOOL_NAME\--cluster=CLUSTER_NAME\--no-enable-gvnicThis change requires recreating the nodes, which can cause disruption to yourrunning workloads. For details about this specific change, find thecorresponding row in themanual changes that recreate the nodes using a nodeupgrade strategy without respecting maintenancepoliciestable. To learn more about node updates, seePlanning for node updatedisruptions.
Caution: GKE immediately begins recreating the nodes for thischange using the node upgrade strategy, regardless of active maintenancepolicies. GKE depends onresourceavailability for thechange. Disabling node auto-upgradesdoesn't prevent thischange.Ensure that your workloads running on the nodes are prepared for disruptionbefore you initiate this change.Troubleshooting
To troubleshoot gVNIC, seeTroubleshooting Google Virtual NIC.
What's next
- Usenetwork policy loggingto record when connections to Pods are allowed or denied by your cluster'snetwork policies.
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-12-15 UTC.