[Gluster-users] Slow speed with Gluster Backed Xen DomU's
Sheng Yeo
sheng.yeo at orionvm.com.au
Mon Jul 19 22:40:40 UTC 2010
Hi Everyone,
Hope your day has been going well. I tried emailing this in a week or so
ago, but i do not think that it got emailed to the group. I am just trying
again, but apologies in advanced if you have already read this. I am
currently using GlusterFS as a distributed SAN backend for the Xen based
cloud platform we are developing.
We deploy Xen virtuals on pairs of servers using GlusterFs V3 in replicate
mode on Debian Stable (Lenny) with Xen 3.2.1 as the hypervisor. I am
currently experiencing a weird issue where within the
virtual machines (DomU) running on a GlusterFS mount only receive
around 10-18MB/s write speeds, but full speed reads.
Our hardware for each node is Dual Core Xeon Processors, 8GB of RAM and 4 *
High Speed SATA drives (RAID 10, around 160MB/s writes and reads).
If I write a file to the Gluster mount in the Dom0 (host) we receive around
90-100MB/s writes (maxing out the GigE link). If I run the virtual machine
on the disks without Gluster I get much higher speeds
within the DomU of around 80-90MB/s.
This slow down only appears to occur on writes. Does anyone with a better
understanding of GlusterFS, Fuse and filesystems have an idea why this is
slowing down. The underlying file system is Ext3 using TAP:AIO within Xen to
connect to a file image based disk. This is without using gluster fuse
client (what benefits does this give?) and Gluster version 3.0.4.
Many Thanks
Sheng
Here is the current configuration of the servers in replicate:
Server:
volume posix
type storage/posix
option directory /export
end-volume
volume locks
type features/locks
subvolumes posix
end-volume
volume brick
type performance/io-threads
option thread-count 8
subvolumes locks
end-volume
volume server
type protocol/server
option transport-type tcp
option auth.addr.brick.allow 10.*.*.*
subvolumes brick
end-volume
Client:
volume remote1
type protocol/client
option transport-type tcp
option remote-host node01
option remote-subvolume brick
end-volume
volume remote2
type protocol/client
option transport-type tcp
option remote-host node02
option remote-subvolume brick
end-volume
volume replicate1
type cluster/replicate
subvolumes remote1 remote2
end-volume
volume writebehind
type performance/write-behind
option window-size 1MB
subvolumes replicate1
end-volume
volume cache
type performance/io-cache
option cache-size 512MB
subvolumes writebehind
end-volume
More information about the Gluster-users
mailing list