What is a ‘Cloud Image’?
Cloud Images are lightweight, faster, certified cloud-ready versions of operating systems. They have Cloud Init pre-installed, meaning they can be configured using ‘Cloud Config’.
This works great combination with setting up a GPU server in Proxmox.
Getting Started
First, you’ll want to decide which version of Ubuntu you’d like. We generally recommend 18.04LTS or 20.04LTS for AI applications.
Once you’ve decided, copy one of the URL’s from here.
Next, login to your Proxmox server and download it, being sure to use the URL of the version of your choosing:
1
wget https://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64.img
Create a VM
Next, let’s create a virtual machine
1
qm create 8000 --memory 4096 --core 4 --name ubuntu-cloud --net0 virtio,bridge=vmbr0
Import the new disk to local-lvm
storage (or whichever disk you prefer)
1
qm importdisk 8000 focal-server-cloudimg-amd64.img local-lvm
Attach the new disk to the virtual machine as a scsi drive on the scsi controller
1
qm set 8000 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-8000-disk-0
Add a ‘cloud init’ drive:
1
qm set 8000 --ide2 local-lvm:cloudinit
Make the cloud init drive bootable and restrict BIOS to boot from disk only:
1
qm set 8000 --boot c --bootdisk scsi0
Add a serial console:
1
qm set 8000 --serial0 socket --vga serial0
Setting up hardware
If you’d like to make any hardware changes at this point, you should do so in the GUI. However, do not start the VM.
It’s best to keep the minimum amount of resources possible, as this will serve as a template. So don’t attach any GPU’s yet, and we recommend you keep the storage capacity low, as we can always expand this later.
Copy - Paste
Now let’s create a template:
1
qm template 6000
and clone it:
1
qm clone 6000 135 --name noor1 --full
(Replace noor1
with any name you want to give the VM, and 6000
with any ID)
For pre-built, pre-configured GPU servers for AI, be sure to visit: