Running Openfiler in an Enterprise Environment



If you are interested in a low cost effective ISCSI SAN solution, perhaps Openfiler is for you. HereĀ  are my notes for various Openfiler tasks such as setting up a volume group, rebooting, and some performance tuning.

Setup a Volume group in OpenFiler

1. Setup a Volume Group and a Volume (the easy part).
2. Go to the System tab and create a NAC config for your server (ex. IP=, Netmask=
3. Go to the Services tab and enable the ISCSI Server.
4. Go to the Shares tab and create a new share.
5. Once created, click the share name to edit it.
6. Set Share Access Control Mode to Public guest access.
7. Under Host access configuration, give NFS access to the NAC you defined earlier.

Disable Floppy controller in BIOS

Rebooting Openfiler

  1. login to the openfiler web page as mentioned above
  2. Click the Shutdown link on the top right of the web page
  3. Tick the “Reboot” box and hit the “Shutdown” button

Note – Any machine that is currently running will pause during the reboot. This is a great feature, but the time it takes to reboot and restore the datastore connection is long enough to timeout a MySQL connection so we still need to make sure any connected customer VM’s are not polling.


Adding an ISCSI LUN to ESXi

ESX – add iSCSI datastore
1 configuration tab
2 iscsi software adapter
“configure” button
check enabled
Dynamic Discovery tab – enter IP of iSCSI server
close and allow to rescan, it should find it
disk /lun formatting 256GB block size 1mb or Larger if you want more than 256GB VM’s.
edit file iscsi_settings.xml in:

ESXi Nic TEAMING and Openfiler

ESX Datastores – Enable Round Robin


Openfiler Caching Performance

Set as “write-back” / fileIO

Performance affects of setting write-thru / write-back / fiileio / blockio

In short fileio is much faster but requires much more RAM. Blockio takes less RAM, but requires more CPU and is a slower, especially for “burst” performance.


Other Notes

format disk – mkfs “mkfs /dev/XXXX”
1. stop all services
2. umount -a (unmount all partitions)
3. vgchange -an (disable all volume groups)
4. partprobe (reread partition tables on all disks)
5. parted /dev/<disk> resize <partno> <start> <end> (resize the partition)
6. partprobe (reread partition tables on all disks)
7. pvresize /dev/<disk_partition> (resize the physical volume
8. vgchange -ay (enable all volume groups)
9. mount -a (remount all disk partitions)
10. start all previously running services

If unable to create RAID volume, start 80 cylinders more than recommended