Citrix, XenServer

FusionIO and XenServer

Getting FusionIO cards and XenServer to work seem to be a bit tougher than I thought but it’s possible. I have a few cards, some old servers and a XenServer 6.5 ISO.  I was hoping to use 6.6 but there isn’t a DDK up for that yet.

Install DDK 6.5
Increase the memory (I used 4GB) or you’ll run into errors on the RPM rebuild with out of memory

on XenServer 6.5

install lsof
yum install –enablerepo=base lsof

you’ll want to use the DDK to develop an RPM as specified here – https://www.linkedin.com/pulse/xenserver-unsupported-fusion-io-storage-devices-kyrian-arensman
Now you can download the HP stuff here – http://h20564.www2.hpe.com/hpsc/swd/public/detail?swItemId=MTX_54c57e1ffcaa42b19df32454ad#tab3But I wouldn’t I’d use the sources from FusionIO directly.  Download the Centos5 sources and all the Utilities from here – https://link-app.sandisk.com/Home/SoftwareDownload

Use WinSCP to upload the files to your DDK server
You should upload the Sources directory

run rpm –rebuild iomemory-vsl-*.src.rpm

Copy the rpm in the /usr/src/redhat/RPMS/x86_64 directory on the DDK to the XenServer
Also copy the utilities directory from the downloaded ZIP to the XenServer

Install
rpm -Uvh iomemory-vsl-*.rpm (you may need to do this in order)

You can ignore the dracut error (search for it in the pdf here)
http://manuals.ts.fujitsu.com/file/12221/iomemory-vsl-relnotes-en.pdf

cd to Utilities – run the following (check the order I may be wrong here but it’ll tell you)
rpm -Uvh fio-common*.rpm
rpm -Uvh fio-preinstall*.rpm
rpm -Uvh fio-util*.rpm
rpm -Uvh fio-sysvinit*.rpm

now run
fio-status

fio-status

Note the driver version is empty? – now we are in sync with Kyrian’s blog post.
REBOOT

Run fio-status again – I had to upgrade the firmware on mine meaning I had to copy the firmware file *.fff to the XenServer and run
fio-update-iodrive

firmware

Then reboot and fio-status again. Now I have to wait for some low-level format but that’s ok…

fio-status2

I and listed what I had for /dev/fct* and performed the following command
fio-format /dev/fct0
fio-format /dev/fct1

Then attached them
fio-attach /dev/fct0
fio-attach /dev/fct1

After that fio-status looks good and we mount
xe sr-create name-label=”ioDrive00″ physical-size=320Gb type=lvm device-config:device=/dev/fioa
xe sr-create name-label=”ioDrive01″ physical-size=320Gb type=lvm device-config:device=/dev/fiob

And we are done!

ioDriveXS