Create a VMO Profile
The Virtual Machine Orchestrator pack conveniently includes several components and automatically installs the Spectro Proxy pack when you use the default profile configuration. To learn about pack components, refer to Virtual Machine Orchestrator Pack.
Limitations
-
If you are updating the profile of an existing cluster that already has the Spectro Proxy pack. You must restart the Spectro Proxy pod for the proxy to work as expected.
To restart the Spectro Proxy pod, delete the pod and it will restart automatically. You can issue the following command to delete the pod:
kubectl delete pods --selector app=spectro-proxy --all-namespaces
Prerequisites
-
A Palette permission key
create
for the resourceclusterProfile
. -
If you are creating an Edge cluster profile, your profile must have a Container Storage Interface pack.
Create the Profile
- Non-edge
- Edge
-
Log in to Palette.
-
Select Profiles in the left Main Menu and click the Add Cluster Profile button.
-
Enter basic information for the profile: name, version if desired, and optional description.
-
Select type Add-on, and click Next.
-
In the following screen, click Add New Pack.
-
Locate the Virtual Machine Orchestrator pack and add it to your profile.
-
Review the Access configuration panel at right. The default setting is Proxied, which automatically adds the Spectro Proxy pack when you create the cluster, allowing access to the Spectro VM Dashboard from anywhere. Check out the Spectro Proxy guide to learn more. Changing the default may require some additional configuration.
The Direct option is intended for a private configuration where a proxy is not implemented or not desired.
warningWe recommend using the pack defaults. Default settings provide best practices for your clusters. Changing the default settings can introduce misconfigurations. Carefully review the changes you make to a pack.
-
Click Confirm & Create.
-
In the following screen, click Next.
-
Review the profile and click Finish Configuration.
-
Apply the profile to your cluster. For more information, refer to Create a Cluster.
-
Log in to Palette.
-
Select Profiles in the left Main Menu and click the Add Cluster Profile button.
-
Enter basic information for the profile: name, version if desired, and optional description.
-
Select type Add-on, and click Next.
-
In the following screen, click Add New Pack.
-
Locate the Virtual Machine Orchestrator pack and add it to your profile.
-
Review the Access configuration panel at right. The default setting is Proxied, which automatically adds the Spectro Proxy pack when you create the cluster, allowing access to the Spectro VM Dashboard from anywhere. Changing the default may require some additional configuration. Check out the Spectro Proxy guide to learn more
The Direct option is intended for a private configuration where a proxy is not implemented or not desired.
-
If you are using PKX-E, no change is required and you can skip this step.
If you are using K3s or RKE2 as the Kubernetes layer in your cluster profile, you need to update the
charts.virtual-machine-orchestrator.multus.networkController
parameter in thevalues.yaml
for the VMO pack. Add a line for the parameterenableK3SHostPath
and set its value totrue
. In addition, changecriSocketContainerPath
to/host/run/containerd/containerd.sock
.networkController:
criSocket:
enableK3SHostPath: true
criSocketContainerPath: /host/run/containerd/containerd.sock -
If your cluster profile does include a load balancer such as MetalLB, no changes are required and you can skip this step. For more information about MetalLB, refer to MetalLB pack documentation.
If your cluster profile does not include a load balancer, update the services
charts.virtual-machine-orchestrator.kubevirt
andcharts.virtual-machine-orchestrator.cdi
to type ClusterIP in values.yaml for the VMO pack:- cdi
- kubevirt
cdi:
enabled: true
replicas: 1
image:
repository: quay.io/kubevirt/cdi-operator
pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion.
tag: "v1.56.0"
service:
type: ClusterIP
port: 443
targetPort: 8443kubevirt:
enabled: true
# defaults to kubevirt
namespace: kubevirt
replicas: 1
service:
type: ClusterIP
port: 443
targetPort: 8443 -
Click Confirm & Create.
-
In the following screen, click Next.
-
Review the profile and click Finish Configuration.
-
Add the add-on profile when you create a cluster. For more information, refer to Create Cluster Definition.
Validate
You can validate the profile is created.
-
Log in to Palette.
-
Navigate to Profiles from the left Main Menu.
-
Locate the newly created profile in the list.
-
From the left Main Menu, click Clusters and select your cluster.
-
Based on your Single Sign-On (SSO) settings, the Virtual Machines tab may display on the Cluster Overview page, or the Connect button may display next to Virtual Machines Dashboard in cluster details.
Next Steps
You will need to configure roles and role bindings to give users access to clusters. You can use VM user roles and permissions or standard Kubernetes roles. For configuration guidance, refer to Add Roles and Role Bindings. The VM User Roles and Permissions reference lists Cluster Roles and equivalent Palette Roles.
If you have OpenID Connect (OIDC) configured at the Kubernetes layer of your cluster profile, you can create a role binding that maps individual users or groups assigned within the OIDC provider's configuration to a role. To learn more, review Use RBAC with OIDC.