Skip to content



A cluster is a logical grouping of physical resources within which virtual machines run. A cluster must be assigned a type (technological classification), and may optionally be assigned to a cluster group, site, location, and/or tenant.

Physical devices may be associated with clusters as hosts. This allows users to track on which host(s) a particular virtual machine may reside. However, Nautobot does not support pinning a specific VM within a cluster to a particular host device.

Cluster Types

A cluster type represents a technology or mechanism by which a cluster is formed. For example, you might create a cluster type named "VMware vSphere" for a locally hosted cluster or "DigitalOcean NYC3" for one hosted by a cloud provider.

Cluster Groups

Cluster groups may be created for the purpose of organizing clusters. The arrangement of clusters into groups is optional.

Virtual Machines

A virtual machine represents a virtual compute instance hosted within a cluster. Each VM must be assigned to exactly one cluster.

Like devices, each VM can be assigned a platform and/or functional role, and an operational status. The following statuses are available by default:

  • Active
  • Offline
  • Planned
  • Staged
  • Failed
  • Decommissioning

Additional fields are available for annotating the vCPU count, memory (GB), and disk (GB) allocated to each VM. Each VM may optionally be assigned to a tenant. Virtual machines may have virtual interfaces assigned to them, but do not support any physical component.


Virtual machine interfaces behave similarly to device interfaces, and can be assigned IP addresses, VLANs, an operational status and services. However, given their virtual nature, they lack properties pertaining to physical attributes. For example, VM interfaces do not have a physical type and cannot have cables attached to them.

The following operational statuses are available by default:

  • Planned
  • Maintenance
  • Active
  • Decommissioning
  • Failed

Added in version 1.4.0

  • Added bridge field.
  • Added parent_interface field.
  • Added status field.