Proxmox
Available VM Types
- Place ISOs in /var/lib/vz/template/iso
- To upload via Proxmox web ui:
Storage View > Datacenter > melange > local > (you might have to hit refresh now!) > ISOs > Upload
VM Installation
- VM install from ISO
- When you first boot an ubuntu iso, it will behave like an installation thumb drive.
- Install to the only available drive of the VM (/dev/sda). Proxmox is smart enough to allow this. The install ISO ends up as a DVD drive.
- Once VM install is completed, remove the DVD:
- sudo umount /dev/sf0 (or whatever)
- Proxmox > (VM) > hardware > DVD > remove
- Proxmox > (VM) > shutdown, then start
Changing VM disk size
Increase is fairly easy:
- (VM) > Hardware > Hard Disk > Resize disk > Add number of GB to increase
- Update the ubuntu filesystem (if you didn't use LVM (which is basically useless))
sudo resizepart # End? 100% sudo resize2fs /dev/sda#
- For a macOS VM, thenickdude has notes.
- If you used LVM in ubuntu (stop doing that!), you have to do all this:
sudo su - parted -s -a opt /dev/sda "print free" # see existing partitions parted -s -a opt /dev/sda "print free" "resizepart 3 100%" "print free" # resize partition to fill space pvresize /dev/sda3 # to get the LVM resized to the partition lvdisplay lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv # to resize the logical volume resize2fs /dev/ubuntu-vg/ubuntu-lv
Changing VM CPU allocation
- Navigate to (VM) > Hardware > Processors
- Adjust core count. Overallocation is a very good idea. CPU cores will be used only as threads need them. I've read that some shops successfully overallocate by a factor of 20:1. With our 12 Ryzen 9 cores, that means we would allocate 120 total cores to our VMs(!). Don't do that, ha.
- Stick with 1 socket (that's just for sizing to match any paid licensing)
VM remote desktop display
I'm using SPICE for a full responsive 4k UI on other thin(ner) clients.
Proxmox config
Storage
CIFS
To mount a samba share as proxmox storage:
proxmox UI > Server view > Datacenter > Storage > Add > CIFS > enter fields
Remember to set Content Type to include the things you will place there.
Backups
- I am backing up to softraid/backup on bitpost. Proxmox puts files here:
/spiceflow/softraid/backup/dump/vzdump-qemu-103-2022_03_24-09_15_59.vma.zst
- I am currently keeping 1 backup and 1 "weekly" backup. Odd, but you configure that in Storage:
proxmox UI > Server view > Datacenter > Storage > bitpost-backup > Edit > Backup Retention tab
It's a bit confusing, this tool helps a lot!
Configuration:
- I set up a dedicated CIFS share for that on bitpost, named backup.
- I added a Storage that uses it, and set 'VZDump backup file' as the Content Type.
- From there, it's easy to configure VM backups.
proxmox UI > Server view > Datacenter > Backup > Add
I don't want to try to back up my massive FreeNAS data! So select "Exclude VMs" and check hive/104.
- If something goes wrong, you can kill the backup task from a terminal:
🌐 m@melange [~] ps ax|grep vz 🌐 m@melange [~] sudo kill -9 #pid# # this may cause "VM is locked (backup)" - to fix that: sudo qm unlock 101
- You can watch the backup job logging in the proxmox system log:
sudo tail -f /var/log/syslog ... Mar 24 09:23:01 melange pvedaemon[21327]: INFO: Finished Backup of VM 103 (00:07:02) Mar 24 09:23:01 melange pvedaemon[21327]: INFO: Starting Backup of VM 105 (qemu) ...
debian
I had debian apt-get stop working due to distro changes. Run this to fix it:
ssh melange sudo apt-get --allow-releaseinfo-change update
Proxmox Installation
- In BIOS, enable SVM (cpu virtualization) (you need a modern AMD or Intel chipset)
- Get the latest proxmox release ISO, dd it to a thumb drive (use Flash_Drives SAM 64 EVO)
- Boot and install onto the primary drive over any existing OSes
- During install, use ext4
- I deemed ZFS too fancy, it's basically software raid, and troublesome according to some
- Create a user and use ssh key (NOTE you might want to keep some root terminals open so you don't screw up and get locked out!):
apt install sudo adduser m visudo # and allow m to sudo nano /etc/ssh/sshd_config # and turn off password login, root login su - m # set up ssh keys # in another terminal, test: ssh melange
- Fix the fucking default proxmox apt repo from "enterprise" to "no-license". BTW, they say it's not well tested, and you better pay for a subscription and get a key for the "better" repo. Cmon you all that is utter bullshit...
# Either delete /etc/apt/sources.list.d/pve-enterprise.list file or comment all lines in this file with #. emacs -nw /etc/apt/sources.list.d/pve-no-subscription.list deb http://download.proxmox.com/debian/pve buster pve-no-subscription