Skip to main content
Version: latest

Architecture

The Palette Virtual Machine Orchestrator (VMO) pack consolidates all components that you need to deploy and manage Virtual Machines (VMs) alongside containers in a Kubernetes host cluster. You can deploy VMO as an add-on cluster profile on top of an existing data center or edge cluster.

Diagram that explains the architecture behind Palette VMO.

For more detailed information about the technical architecture of VMO, refer to Palette VMO Reference Architecture.

Palette VMO Components

By default, Palette VMO includes the following components:

  • Descheduler. Enables VM live migration to different nodes in the node pool when the original node is in maintenance mode.

  • Snapshot Controller. Enables you to create VM snapshots. This component is automatically installed when you initiate or schedule cluster backups.

    info

    Palette installs a snapshot controller into every cluster where backups are scheduled or have been created on-demand in the past. To prevent resource conflicts, you can disable the VMO snapshot controller in the pack YAML configuration.

    charts:
    virtual-machine-orchestrator:
    snapshot-controller:
    enabled: false
  • Spectro VM Dashboard. Enables you to create, manage, and monitor VMs from Palette. The dashboard becomes available once the VMO pack is successfully deployed as part of your cluster profile.

  • KubeVirt. This open-source solution enables you to create and manage VMs within Kubernetes clusters. KubeVirt extends Kubernetes with additional virtualization resource types using Kubernetes Custom Resource Definitions (CRD) API.

    With KubeVirt, you can use the Kubernetes API to manage VM resources in the same way you would manage standard Kubernetes resources.

    tip

    Palette VMO is pre-configured to use a number of KubeVirt feature gates out of the box, and you can configure additional feature gates as necessary. Refer to the Feature Gates section for more information.

  • KubeVirt CDI. Provides persistent storage for Kubernetes clusters and enables the use of Persistent Volume Claims (PVCs) as disks for KubeVirt VMs.

  • Volume Snapshot Controller. Watches VolumeSnapshot CRD objects and manages the creation and deletion of volume snapshots. A snapshot represents a point-in-time copy of a volume.

  • Multus CNI. Enables multiple network interfaces to attach to Kubernetes pods. In the context of VMO, Multus Controller Network Interface (CNI) automatically creates VLAN interfaces onto which you can place VMs.

Feature Gates

Palette VMO includes the following KubeVirt feature gates by default:

  • LiveMigration
  • Snapshot
  • HotplugVolumes
  • VMExport
  • ExpandDisks
  • HotplugNICs
  • VMLiveUpdateFeatures
  • CPU Hotplug

For more information on KubeVirt feature gates, refer to the KubeVirt Activating feature gates guide.

Next Steps

Now that you understand the architecture behind Palette VMO, you can continue exploring it by reviewing our Environment Setup and Create a VMO Profile pages.