This page provides basic scaling information for VMs running on Google Distributed Cloud. 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 Google Distributed Cloud 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 an GKE 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 Google Distributed Cloud 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
Currently, 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.