ZFS over iSCSI for Proxmox and FreeNAS

I just setup a Proxmox cluster. I had to install the GrandWazoo plugin again on the second node, and i think some steps may have changed since i had to stumble through it.

Go to https://github.com/TheGrandWazoo/freenas-proxmox if you’re not already there.

SSH into your Proxmox host to setup the FreeNAS SSH key and install the plugin. This is assuming your FreeNAS IP is 192.168.1.10

First run:

mkdir /etc/pve/priv/zfs

ssh-keygen -f /etc/pve/priv/zfs/192.168.1.10_id_rsa

ssh-copy-id -i /etc/pve/priv/zfs/192.168.1.10_id_rsa.pub root@192.168.1.10

ssh -i /etc/pve/priv/zfs/192.168.1.10_id_rsa root@192.168.1.10

You you get the output below, just type yes.

The authenticity of host '192.168.1.10 (192.168.1.10)' can't be established.
RSA key fingerprint is 8c:f9:46:5e:40:65:b4:91:be:41:a0:25:ef:7f:80:5f.
Are you sure you want to continue connecting (yes/no)? yes

Then run:

apt-get install librest-client-perl git

git clone https://github.com/TheGrandWazoo/freenas-proxmox.git

This is where the steps differ..you’ll see this freenas-proxmox folder, all the files you need are in there.

You’ll need to cd into freenas-proxmox then into pve-manager/js/ before running:

patch -b /usr/share/pve-manager/js/pvemanagerlib.js < pvemanagerlib.js.patch

The same with the other directories, you’ll need to be in freenas-proxmox/perl5/PVE/Storage and pve-docs/api-viewer/ before running:

patch -b /usr/share/perl5/PVE/Storage/ZFSPlugin.pm < ZFSPlugin.pm.patch

patch -b /usr/share/pve-docs/api-viewer/apidoc.js < apidoc.js.patch

This 4th step is also like that, you’ll need to change directories to /freenas-proxmox/perl5/PVE/Storage/LunCmd before running:

cp FreeNAS.pm /usr/share/perl5/PVE/Storage/LunCmd/FreeNAS.pm

Now after a restart of the services or a reboot, you should have FreeNAS to pick from in the drop down.

Since I already had this setup on my first node, when i added the new node to the cluster it carried over the ZFS over iSCSI settings, then i could just magically migrate VMs to the new node.

Thank you to the GrandWazoo for making this plugin!