Proxmox Server Upgrades

For the past few months, I’ve been playing with TrueNAS Scale, and for a few reasons I’ll be leaving it behind for Proxmox. My goal is to build a server that can function as both a virtualization server as well as a NAS for network storage. The end goal is to upgrade the RAM to 128GB, install Proxmox, and then use TrueNAS Core as a Virtual Machine (VM) inside of Proxmox. This will allow me to have a virtualization environment with plenty of RAM, as well as a NAS solution that is faster than my current Raspberry Pi setup. The main reason I’m leaving TrueNAS Scale behind is that there’s no easy way to move Virtual Machines around, among a bunch of other small issues. In Proxmox this is easy.

Step one: Open up the server and install the RAM

Earlier this year, I upgraded my CPUs to Intel E5-2650L V2 – these have more cores and are lower powered from my previous ones. I have two CPUs, and each allow for quad channel RAM. My current setup only had 2 sticks per CPU, so I doubled it, and installed it.

Step two: Prepare the server

My current setup is that the backplane (that connects the hard drives to the mother board) has three SAS connections: two go do an HBA (host bus adapter), and one goes directly to the motherboard; meaning 8 hard drives to the HBA and 4 to the mobo. In Proxmox, rather than passing each individual drive to TruenNAS, it will be easier to pass the hardware directly, so I will be passing the HBA and all eight drives, meaning that Proxmox will have the other four drives. Figuring out which SAS connections go to which drives on the backplane was a stupid process, but in the end, I will have two 1TB SSDs and one 1TB spinning disk attached directly to Proxmox. For the other drives, it will be a combo of four 4TB Seagate Exos drives and three 2TB Seagate Barracudas.
The last step in preparation was making a USB that the server can boot from. I downloaded the latest Proxmox ISO, flashed it with Balena Etcher, and plugged it into the server.

Step three: Install Proxmox

My server has an older version of the IPMI, so while I’d like to be lazy and do this all from my couch, I unfortunately had to plug in a monitor, keyboard, and mouse to do the install. I pulled out all of the hard drives going to the HBA and unplugged all but one IPMI network cable and one other going to the server.
One interesting issue was that I had one of my SSDs in while installing, and I got an error – I wonder if that drive had a previous installation of Proxmox on it. In any case, once ONLY the OS drive was in, installation was smooth.

Step four: Proxmox

After logging in with root and the password set during the install, the first step is to update the system. This is found in the ‘Node’ of the Datacenter. 

I hit refresh, upgrade, and followed the progress in the shell window that popped up.
After that, I added the certificates from my router. This allows HTTPS communication instead of HTTP. In the Certificate, I hit add and then upload from file the crt and key. Refreshed the page, and it’s now secure. 
Next step was to add a ZFS pool and get my VM storage drives in a mirror pool. This is in the Storage menu option. From there, I wiped the disks I was going to use. Then I went to ZFS and Create ZFS to get the pool started. I gave it the name vmstorage0 (best to use lowercase), chose mirror raid level, and finished the setup. Both drives are exactly the same – Crucial 1TB SSDs. I also added another pool with a single 1TB spinning drive that I will use as a backup for the VMs. OK, almost ready to make some VMs.
Lastly, I wanted to add my current NAS so I can add ISOs for VMs. On the left, I clicked on Datacenter, and then chose Storage and Add SMB/CISF. This allows me to add the Samba share and add the details of my current NAS, including the server domain name. Proxmox will add folders to this directory – so maybe in the future I’ll find a way to clean this up. 
In the NAS itself, I navigated to the main directory and found the folder ‘template’ that Proxmox added. In there, there is a folder called ‘iso’; I added all of the ISOs that I wanted to use for VMs into here, refreshed Proxmox, and I was able to see them easily in Proxmox.

Step five: Fun with VMs

In the next installment, I’ll walk through adding VMs, adding TrueNAS Core as a VM, and then creating a network share within TrueNAS with a ZFS RaidZ1 configuration!