Skip to content

Instantly share code, notes, and snippets.

@TheBoroer
Last active November 17, 2024 16:31
Show Gist options
  • Save TheBoroer/33a92faa026a36ddb44c7bd8e6e295f6 to your computer and use it in GitHub Desktop.
Save TheBoroer/33a92faa026a36ddb44c7bd8e6e295f6 to your computer and use it in GitHub Desktop.
FusionIO / Fusion-IO devices on TrueNAS SCALE 22.02.1

FusionIO / Fusion-IO devices on TrueNAS SCALE 22.02.1

There's a bug with v22.02.2 where it doesnt show fusionio disks at all under Storage > Disks. So I had to downgrade to 22.02.1 and it works fine.

This gist is basically a note-to-self so future me can remember what I did to get this working on my truenas server haha, but I hope it helps someone else out too :)

I wanted to use my iodrive duo (2 fusion devices on 1 card) as a mirrored SLOG on an existing raid2z pool.

Links to repos used:

Step 1) Install drivers

To download & install the VSL3 driver via dkms all in one go, run this command in the shell (ssh or web gui):

git clone https://github.com/RemixVSL/iomemory-vsl.git && cd iomemory-vsl/ && make dkms

For VSL4:

git clone https://github.com/RemixVSL/iomemory-vsl4.git && cd iomemory-vsl/ && make dkms

Step 2) Install fio utilities/tools

git clone https://github.com/RemixVSL/vsl_downloads.git && cd vsl_downloads

Then look inside the vsl3 (or vsl4) directory for the .deb file. On ubuntu/debian linux version of truenas, install it by running: dpkg -i fio-util_3.2.16.1731-1.0_amd64.deb

^^ Note: you might need to unlock dpkg in order to use it: chmod +x /bin/dpkg*

Step 3) Reboot

After rebooting, you should now see the fusion cards present when running fio-status -a in the shell. If you need to upgrade firmware on your devices, find the instructions on how to generate the firmware over at vsl_downloads and use the fio-update-iodrive /dev/fctX path/to/firmware/file.fff command.

Step 4) Adding it to the zpool

If you don't see the drives, you need to wipe them with something like sgdisk --zap-all /dev/fioa (CAREFUL, you can easily wipe the wrong drive like this). Sometimes this also works for fio drives and old raid drives: wipefs -af /dev/fio{a,b} (again, be careful).

I can now see the drives in the GUI but when trying to add fioa and fiob drives as log devices to the pool, it would error out after trying to format the drives saying partition of type (zfs) couldn't be found. Weird thing is....the partitions are there (lsblk shows them). After this, the GUI would hang when trying to go to Storage > Disks to see the list of disks. Even after a reboot, nothing worked.

BUT after trying to manually add it to the zpool via the cli: zpool add [pool name] log mirror /dev/fioa /dev/fiob

AND then rebooting the server, it works and nothing hangs anymore! I can see the log drives in the GUI now + Storage > Disks doesn't hang anymore.

What happens after an update?

I haven't updated yet, but from all the reading I've done, I think the driver will stay installed but the fio-util deb package might need to be re-installed?

After upgrading 22.02.4 to 22.12.4.2, I had to repeat steps 1-3 (without needing to git clone the repos again). Then had to import the storage pool via the truenas GUI (for some reason running zpool import doesn't make the pool show up in the gui)

@TheBoroer
Copy link
Author

Hey guys, I'm away on travels atm so can't try to see if I can get 24.10 to work on my setup.
Once I'm back I'll take a stab at getting it to work and will report back 🫡

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment