|
From: | Mikhail T. |
Subject: | [Gluster-devel] Mirrored GlusterFS -- very poor read performance |
Date: | Thu, 02 Jan 2014 18:26:59 -0500 |
User-agent: | Mozilla/5.0 (X11; FreeBSD amd64; rv:24.0) Gecko/20100101 Thunderbird/24.1.0 |
We are building a new web-serving farm here. Believing, like most
people, that the choice of the technology does not affect
performance in read-dominated work-loads (such as ours), we picked
GlusterFS for its rich feature set. However, when we got to doing some testing, GlusterFS-mounted shares lose -- by a wide margin -- not only to the SAN-connected RAIDs, but even to NFS-mounted shares. Here are the numbers... All of the computer-systems involved are VMWare VMs running RHEL6. Each VM has its own dedicated SAN-connected "disk". GlusterFS is using replicated volume -- with two bricks. Each brick is on a VM of its own, residing on the VM's SAN-connected "disk". The web-server is, likewise, a VM. The same set of four test-files was placed on the web-server's own SAN-connected "disk", on an NFS-mount, and on a GlusterFS-share. (The NFS service is by a NetApp NFS "appliance".) Here are the corresponding lines from mount-listing: As mentioned above, four test-files were used for the benchmark:
Discouragingly, not only GlusterFS' performance
is pretty bad, the glusterfs-process running on the
web-server could be seen hogging an entire CPU during the tests...
This suggests, the bottleneck is not in the underlying storage or
network, but the CPU -- which would be quite unusual for an
IO-intensive workload. (glusterfsd-processes hosting each
brick were using about 9% of one CPU each.)
We used the "officially" provided 3.4.1 RPMs for RHEL. Could it be, the GlusterFS developers stopped caring for read-performance -- and stopped routinely testing it? The wording of Performance page at Gluster.org has a hint of such "arrogance": Let's start with read-dominated workloads. It's well known that OS (and app) caches can absorb most of the reads in a system. This was the fundamental observation behind Seltzer et al's work on log-structured filesystems all those years ago. Reads often take care of themselves, so at the filesystem level focus on writes.Or did we do such poor job configuring gluster here, that our setup can be made 2-3 times faster simply by correcting our mistakes? Any comments? Thank you! -mi |
[Prev in Thread] | Current Thread | [Next in Thread] |