While playing with my disc-less environment, booting via gPXE from an iSCSI device, I found out that VirtualBox has direct support for iSCSI while this isn't shown in the GUI. To register an iSCSI device as virtual disc one has to use VBoxManage on the command line:
$ VBoxManage list hdds
Parent UUID: base
Usage: test (UUID: 0e9dac71-1a33-42f3-8320-1f157582e931)
Once the disc is registered it can be selected in the GUI (or from command line) while configuring a VM. In my test I once lost the network connection to the iSCSI target, VBox handled that in a safe way by pausing the VM. Quite handy.
With ZFS you may not only do "file system" stuff but ZFS may also provide raw block devices ("zvol") which benefit from ZFS space accounting, snapshotting, checksumming, etc. A purpose of these is to use these zvols and exporting them via iSCSI or give them to applications which can store data on them. One application for this I'm using s VirtualBox and as I always forget the exact commands needed to create a zvol and making it available to VBox I decided to write it down.
Reasons for me for using zvols instead of regular VBox disks are that I can easily snapshot them (every 15 minutes a snapshot ...) individually and can easily clone them (around one second and barely any disk space needed to get a clone of a VM to do some experimental stuff...) and incremental backups using snapshots and zfs send. That said there's at least one - possibly - negative factor: A regular virtual disk file can be shared with other people and other operating systems, a zvol has to be dumped into a regular vmdk first.
So first we create the zvol with a size of 10G. This won't be allocated but everybody asking for the size of the device will get this information back and this is the maximum size that will be used - as one can use compression and dedup there this often might be way less usage. Then, as I'm running VBox under my user account, I give my user all the rights needed by making the regular user the owner. The third step creates a vmdk file pointing to the raw device location which is then registered with VirtualBox so a VM can be configured for using it.
Sun recently introduced their Amber Road storage systems which act like a storage appliance with a Web-Interface for configuration and analytics. Due to the power of DTrace combined with an AJAX web-inerface, you have the ability to really see what's going on. Brendan Gregg, the engineer who's famous for screaming at his storage systems, recently published a new blog posting giving some insights on the heat maps created by these systems. But Sun engineers won't be Sun engineers if they don't have weird ideas. So what about sending text messages to the analytics software? - Scroll to the bottom of Brendan's blog to see what I mean.