Skip to content

# Virtualization

## Clusters

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.

## Interfaces

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.