Stay organized with collections
Save and categorize content based on your preferences.
This page provides basic scaling information for VMs running on an installation
of Google Distributed Cloud (software only) on bare metal. The information
provided doesn't indicate hard limits or guaranteed thresholds for the product
or your installation. The information is intended to help you determine whether
VM Runtime on GDC can meet your computing requirements.
For information about quotas, limits, and scaling for Google Distributed Cloud,
see Quotas and limits.
Maximum VM scaling
We have determined through extensive testing that you can run reliably as many
as 500 VMs concurrently on a cluster with 50 nodes.
Resource usage
To scale up VM deployments, make sure there are enough CPU, memory, and storage
resources in the cluster for both VMs and the control plane components. For
standard resource requirements for cluster node machines, see
Cluster node machine prerequisites.
Note the following VM Runtime on GDC resource usage for our maximum VM
scaling configuration:
Total CPU share used by all the components in the vm-system namespace is
approximately 1.3 at the peak usage.
Total memory consumed by all the components in the vm-system namespace is
approximately 10 GiB.
Known resource issue
When the guest agent is enabled,
each VM registers a separate watcher to the API server. Therefore, the number of registered watchers in kube-apiserver increases linearly with the number of the VMs. Depending on the workloads you run, you may
encounter issues related to kube-apiserver as the number of VMs increases. If
you're affected by this issue, you can configure the kube-apiserver or
disable the guest agent if
you aren't using it.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-02 UTC."],[],[],null,["This page provides basic scaling information for VMs running on an installation\nof Google Distributed Cloud (software only) on bare metal. The information\nprovided doesn't indicate hard limits or guaranteed thresholds for the product\nor your installation. The information is intended to help you determine whether\nVM Runtime on GDC can meet your computing requirements.\n\nFor information about quotas, limits, and scaling for Google Distributed Cloud,\nsee [Quotas and limits](/kubernetes-engine/distributed-cloud/bare-metal/docs/limits).\n\nMaximum VM scaling\n\nWe have determined through extensive testing that you can run reliably as many\nas 500 VMs concurrently on a cluster with 50 nodes.\n\nResource usage\n\nTo scale up VM deployments, make sure there are enough CPU, memory, and storage\nresources in the cluster for both VMs and the control plane components. For\nstandard resource requirements for cluster node machines, see\n[Cluster node machine prerequisites](/kubernetes-engine/distributed-cloud/bare-metal/docs/installing/node-machine-prerequisites).\n\nNote the following VM Runtime on GDC resource usage for our maximum VM\nscaling configuration:\n\n- Total CPU share used by all the components in the `vm-system` namespace is approximately **1.3** at the peak usage.\n- Total memory consumed by all the components in the `vm-system` namespace is approximately **10 GiB**.\n\nKnown resource issue\n\nWhen the [guest agent is enabled](/kubernetes-engine/distributed-cloud/bare-metal/docs/vm-runtime/connect-vms#enable-agent),\neach VM registers a separate watcher to the API server. Therefore, the number of registered watchers in `kube-apiserver` increases linearly with the number of the VMs. Depending on the workloads you run, you may\nencounter issues related to `kube-apiserver` as the number of VMs increases. If\nyou're affected by this issue, you can configure the `kube-apiserver` or\n[disable the guest agent](/kubernetes-engine/distributed-cloud/bare-metal/docs/vm-runtime/connect-vms#disable-guest) if\nyou aren't using it."]]