Hi

I have installed Nexenta Community Edition as a virtual  storage appliance in 
my 
home lab server. The server is running VMware  ESXi 4.1 on an HP ML110 G5 
server 
with 2x1TB SATA disks and a 60GB SSD.  All three disks are configured as 
datastores which hold the VM disks.

The  server also has a Solaris 11 Express VM which has two virtual disks -  one 
SATA, the second SSD - both with ZFS installed, but no additional  L2ARC or ZIL 
devices. Running the bonnie++ benchmark, I have observed  the following:

Running the Bonnie++ test on the SATA disk resulted in the following output:

* Sequential Block Reads: 69199K/sec (67.5MB/sec)
* Sequential Block Writes: 64105K/sec (62.6MB/sec)
* Rewrite: 31138K/sec (30.4MB/sec)
* Random Seeks: 246/sec

Running the Bonnie++ test on the SSD disk resulted in the following output:

* Sequential Block Reads: 183511K/sec (179MB/sec)
* Sequential Block Writes: 109536K/sec (106MB/sec)
* Rewrite: 75712K/sec (73MB/sec)
* Random Seeks: 2450/sec

The  bonnie++ test operates on a data size of 4GB which is bigger than the  RAM 
in either VM (to prevent false results being generated because the  data is 
cached in memory).

I created a SATA-based, mirrored share  on the Nexenta VM and mounted it to the 
Solaris 11 Express VM over  NFSv3. Performance is significantly lower:

* Sequential Block Reads: 55699K/sec (54MB/sec)
* Sequential Block Writes: 24167K/sec (23MB/sec)
* Rewrite: 15669K/sec (15MB/sec)
* Random Seeks: 285.4/sec

I  expected NFS (and the rest of network stack) to add an overhead, but  the 
drop in writes from 62.6MB/sec to 23MB/sec seems dramatic, and the  Rewrite 
performance is halved.

Thinking I might be able to get  better read performance, I added a 20GB SSD 
volume to the Nexenta VM as a  L2ARC and re-ran the test:

* Sequential Block Reads: 52301K/sec (51MB/sec)
* Sequential Block Writes: 24483K/sec (23MB/sec)
* Rewrite: 16278K/sec (15MB/sec)
* Random Seeks: 647/sec

Random seeks were up, but no change in sequential block reads.

Thinking  it was possibly NFS waiting on filesystem syncs, I added a 2GB SSD  
volume to the Nexenta VM as a ZIL and re-ran the test:

* Sequential Block Reads: 57477K/sec (56MB/sec)
* Sequential Block Writes: 22592K/sec (22MB/sec)
* Rewrite: 13862K/sec (13MB/sec)
* Random Seeks: 639/sec

No significant benefit in using either a L2ARC or ZIL.

So, my questions:

1)  Can anything be done to tune the NFS stack to make it better  performing?
2) Are they ways to see if the L2ARC or ZIL are being  utilised (and how 
effectively)?

The Solaris 11 Express host and  the Nexenta CE VMs are both connected to the 
same internal vSwitch, so  should operate at "bus speed" (i.e., faster than 
1Gbit). I've run a  network test between the two VMs (using the ttcp utility) 
and get ~  145MB/sec network throughput.

Any help or pointers appreciated!

JR 


      
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to