Success Criteria

Recommended success criteria for an OpenNebula Proof of Concept.

Each OpenNebula deployment is different but they all have to provide a basic set of functionalities that form a complete solution. We have assembled them in functional groups to make navigation through PoC easy and ordered. Upon completion of all tests, we can announce success and move on to the next phase. Sometimes a special requirement is needed and we add them to our plan during the Information Gathering Call.

Default Success Criteria

Storage Configuration

IDTaskValidation descriptionVideo tutorialsDocumentation
SC1Configure additional System, Image & File DatastoresThis is done by adding shared storage and defining the specific datastores via CLI or GUI.▶️ Adding New Datastores in OpenNebulaStorage System
SC2Configure Backup Datastore (if required)This is done by configuring RESTIC and then adding the datastore via GUI.▶️ Backup and Restore Virtual Machines in OpenNebulaBackup System

Network Configuration

IDTaskValidation descriptionVideo tutorialsDocumentation
SC3Configure up to 3 additional Virtual Networks, using supported Networking DriversConfiguring via interface, defining 3 networks as VLAN, Bridged or VXLAN▶️ Virtual Network Management in OpenNebulaNetworking overview
SC4Add IP ranges to Virtual NetworksDefine in Virtual network specific IP range per network.▶️ Virtual Network Management in OpenNebulaVNET management
SC5Configure Security GroupsSet up Security group rule and define specific protocols.▶️ Virtual Network Security Groups in OpenNebulaVM networking

Virtual Machine Administration

IDTaskValidation descriptionVideo tutorialsDocumentation
SC6Deploy a Windows VMCreate a Windows Template, and instantiate it successfully.▶️ Build a Windows VM Template and ImageVM template
SC7Deploy a Linux VMDownload a Linux Template from the marketplace and instantiate it.▶️ Run the Linux OS Workloads with OpenNebulaVM template
SC8Add CPU / RAM Resources to a templateWhen creating a template, define CPU and RAM.▶️ Resizing a Running Virtual Machine in OpenNebulaConfiguration references
SC9Add CPU / RAM Resources to an running VMUsing the interface, modify Resources by updating the VM.▶️ Resizing a Running Virtual Machine in OpenNebulaVM instances
SC10Add additional disk to a running VMUsing the interface, update and add a disk.▶️ Disk and vNIC Operations on a Running VM in OpenNebulaVM instances
SC11Add additional NIC to a running VMUsing the interface, update and add a new NIC.▶️ Disk and vNIC Operations on a Running VM in OpenNebulaVM instances
SC12Migrate (Hot or Cold) VM from one hypervisor to anotherIn the interface, use the migrate option to move a VM. Also use the hot migrate option for live migrate.▶️ Migrate a VM in OpenNebulaVM instances
SC13Take disk and VM snapshots of a Virtual MachineIn the VM interface select the disk and perform a disk snapshot. In the snapshot interface select a VM smapshot.▶️ Disk and VM Snapshots in OpenNebulaVM instances
SC14Use of power options on a VM (Start / Stop / Reboot / etc.)Go into the VM interface, and choose Stop and start.▶️ Basic VM Operations in OpenNebulaVM instances
SC15Manage VM via VNC ConsoleClick on VNC icon and open console.VNC access

Platform Administration

IDTaskValidation descriptionVideo tutorialsDocumentation
SC16Create additional usersUse the User panel, define a user and log in as the user.▶️ Users, Groups, and Views in OpenNebulaManage users
SC17Create additional groupsUse the Group panel, define a group and and group admin and log in as user.▶️ Users, Groups, and Views in OpenNebulaManage groups
SC18Create additional ‘views’ and assign to group(s)Create a non-standard view and switch to it.▶️ Managing Custom Sunstone Views in OpenNebulaSunstone views
SC19Create a VDC and assign to group(s)Define a VDC, allocate resources and assign a group.▶️ Create and Manage Virtual Datacenters in OpenNebulaManage VDCs
SC20Create and assign quota to group(s)In an existing group, create a quota and showcase how it functions.▶️ Enforcing Resource Quotas in OpenNebulaQuotas

AI Factory Success Criteria (Optional)

GPU Instances

IDTaskValidation descriptionVideo tutorialsDocumentation
AI‑SC1Configure GPU PassthroughConfigure a host so that a physical GPU can be assigned directly to a virtual machine. Validate that the GPU is exposed by the hypervisor and available for PCI passthrough.NVIDIA GPU Passthrough
AI‑SC2Deploy a VM with GPU resourcesCreate or update a VM template with a GPU device, instantiate the VM successfully, and verify that the guest operating system detects and can use the assigned GPU.NVIDIA GPU Passthrough
AI‑SC3Configure MIG PartitioningPartition a MIG-capable GPU and assign separate MIG instances to independent workloads. Validate that each workload sees only its allocated MIG resources.NVIDIA vGPU and MIG‑backed vGPU
AI‑SC4Configure GPU QuotasDefine GPU resource limits for a group or VDC and verify that users cannot allocate GPU resources beyond the configured quota.Usage Quotas
AI‑SC5Validate GPU Tenant IsolationRun GPU workloads for separate tenants or VMs and validate that assigned GPU resources are isolated and cannot be accessed by other tenants.Multi‑tenancy Models and User Roles
AI‑SC6Monitor GPU ResourcesValidate visibility of GPU utilization, memory consumption, health and other relevant GPU metrics through the monitoring stack.Prometheus and Grafana

Managed Kubernetes

IDTaskValidation descriptionVideo tutorialsDocumentation
AI‑SC7Deploy a GPU-enabled Kubernetes ClusterProvision a Kubernetes cluster with GPU-capable worker nodes and verify that the cluster is operational and the GPU nodes are registered correctly.Deployment of AI‑ready Kubernetes
AI‑SC8Schedule a Kubernetes GPU WorkloadSubmit a pod that requests GPU resources and verify that Kubernetes schedules it onto an appropriate GPU node and that the GPU is visible inside the container.Deployment of AI‑ready Kubernetes
AI‑SC9Validate NVIDIA GPU Operator IntegrationDeploy or validate the NVIDIA GPU Operator and confirm that GPU drivers, device plugins and related components are healthy and advertise GPU resources to Kubernetes.Deployment of AI‑ready Kubernetes
AI‑SC10Run Kubernetes Workloads on MIG ResourcesConfigure MIG resources and verify that separate Kubernetes workloads can request and consume individual MIG instances.NVIDIA vGPU and MIG‑backed vGPU
AI‑SC11Validate Manual Elastic GPU CapacityManually add GPU worker capacity to a Kubernetes cluster when additional resources are required and verify that the new capacity becomes available to workloads. Then remove the additional GPU worker capacity when demand decrease.Deployment of AI‑ready Kubernetes
AI‑SC12Validate Advanced GPU Scheduling with Run:ai (if required)Submit GPU workloads through Run:ai and validate project allocation, quotas and scheduling policies against the OpenNebula-provisioned Kubernetes infrastructure.Deployment of AI‑ready Kubernetes

Token Factory

IDTaskValidation descriptionVideo tutorialsDocumentation
AI‑SC13Deploy an LLM Inference ServiceDeploy an approved language model as an inference service on GPU infrastructure and verify that the service reaches a healthy state.Inferencing with vLLM
AI‑SC14Access the Inference APIExpose the deployed model through an inference API endpoint and validate successful request and response processing from an authorized client.Inferencing with vLLM
AI‑SC15Validate Tenant Isolation for Inference ServicesProvide independent access to inference services for different tenants and verify that each tenant can access only its authorized endpoints and resources.Multi‑tenancy Models and User Roles
AI‑SC16Validate GPU-backed InferenceRun inference requests and verify that the model executes on the assigned GPU resources and that GPU utilization is observable during execution.Inferencing with vLLM
AI‑SC17Measure Token UsageRecord input and output token consumption per tenant, project or API consumer so that usage can be attributed for operational, showback or billing purposes.AI factory deployment and validation.
AI‑SC18Monitor the Inference ServiceValidate monitoring of service availability, request performance, model-serving metrics and underlying GPU utilization.Prometheus and Grafana

Elastic Slurm / HPC

IDTaskValidation descriptionVideo tutorialsDocumentation
AI‑SC19Deploy a GPU-enabled Slurm ClusterProvision a Slurm cluster with GPU-capable compute nodes and verify that Slurm detects and manages the GPU resources correctly.Elastic Slurm Overview
AI‑SC20Schedule a Slurm GPU JobSubmit a Slurm job that requests GPU resources and verify that it is scheduled onto an appropriate GPU node and completes successfully.Elastic Slurm Overview
AI‑SC21Run a Multi-GPU Slurm JobExecute a workload that requests multiple GPUs and verify that all assigned GPUs are available to the job and operate as expected.Elastic Slurm Overview
AI‑SC22Validate Manual Elastic Slurm CapacityManually add compute capacity in response to queued workload demand and verify that the new nodes are provisioned, join the Slurm cluster, execute the workload, and can be manually released when no longer required.Elastic Slurm Overview