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=10.0.0.1, Netmask=255.255.255.255).
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
- login to the openfiler web page as mentioned above
- Click the Shutdown link on the top right of the web page
- 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
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 Openfilerhttp://fojta.wordpress.com/2010/04/13/iscsi-and-esxi-multipathing-and-jumbo-frames/
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.
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