In Cloud Repositorio, VMs are always created within a slice. Each VM gets a management interface (Documentation Index
Fetch the complete documentation index at: https://mintlify.com/markitobonito/cloud_repositorio/llms.txt
Use this file to discover all available pages before exploring further.
eth0) and optionally one or more data interfaces (eth1, eth2, …) that can be connected to other VMs via L2 links. You build the topology in design mode, then deploy the slice to bring the VMs online.
Adding a VM to a slice
Select 3. Add VM to Slice from the main menu. You will be prompted for the following inputs:| Prompt | Description |
|---|---|
| Slice ID | ID of the slice returned when you created it |
| VM name | Unique name for the VM within the slice |
| Flavor choice | 1 for cirros, 2 for ubuntu |
| Number of data interfaces | How many data interfaces (eth1, eth2, …) to create |
| Enable internet access | y to attach eth0 to VLAN 400 (internet), n for an untagged management interface |
DeploymentAPI.create_vm_with_qcow() performs the following work:
- Generates a unique MAC address for each interface using the formula:
- Assigns the next VNC port by incrementing from 5900 (e.g., first VM gets 5901).
- Creates a QCOW2 backing image for the VM on the target worker node.
VMs are in
design status until the slice is deployed. QEMU processes are not started until you run 6. Deploy Slice.VM flavors
Two flavors are available. Each VM gets its own QCOW2 file backed by the shared base image, so only blocks that the VM has actually written consume disk space on the worker (thin provisioning).| Flavor | Cores | RAM | Disk | Base image |
|---|---|---|---|---|
cirros | 1 | 0.5 GB | 1 GB | /tmp/vm_images/cirros-0.6.2-x86_64-disk.img |
ubuntu | 1 | 0.5 GB | 2.2 GB | /tmp/vm_images/focal-server-cloudimg-amd64.img |
QCOWManager automatically copies the base image from the manager host to the worker via scp if it is not already present at ~/vm_images/ on the worker.
Network interfaces
eth0 — management interfaceeth0 is always created. Its configuration depends on whether internet access is enabled:
- Internet enabled: attached to VLAN 400, subnet
10.60.7.0/24, gateway10.60.7.1, DHCP active. The VM receives an IP in the10.60.7.xrange automatically. - Internet disabled: created with no VLAN tag. The interface is present but has no network connectivity until you configure it manually inside the VM.
vm_id, interface index i:
XX:XX encodes the upper and lower bytes of vm_id.
Creating a link between VMs
Select 4. Create Link between VMs from the main menu. The CLI first prints all VMs in the slice and highlights which data interfaces are still unconnected. Walk through:- Enter the Slice ID.
- The CLI displays available VMs and their interface connection status:
- Enter First VM ID and First VM interface (e.g.,
eth1). - Enter Second VM ID and Second VM interface.
Accessing VMs
After the slice is deployed, connect to a VM over VNC using the worker IP and the VNC port reported at VM creation:vnc_port - 5900 (e.g., port 5901 = display :1). Use any VNC client that supports the host:port syntax.