[Gluster-devel] afr :2 HA setup question
August R. Wohlt
glusterfs at isidore.net
Fri Sep 7 15:48:33 UTC 2007
Hi all -
I have a setup based on this :
http://www.gluster.org/docs/index.php/GlusterFS_High_Availability_Storage_with_GlusterFS<http://www.gluster.org/docs/index.php/GlusterFS_High_Availability_Storage_with_GlusterFS>
but with only 2 machines. Effectively just a mirror (glusterfsd
configuration below). 1.3.1 client and server.
The problem I am seeing is that if I start up one side of the afr and the
other side is down, I can only read and write to files that are already
there. If I try to create a new file, the glusterfsd logs show this:
07-09-07 11:39:00 D [common-utils.c:194:gf_resolve_ip] resolver: flushing
DNS cache
2007-09-07 11:39:00 D [tcp-client.c:142:tcp_connect] brick-ds-bak: connect
on 9 in progress (non-blocking)
2007-09-07 11:39:00 E [tcp-client.c:171:tcp_connect] brick-ds-bak:
non-blocking connect() returned: 111 (Connection refused)
2007-09-07 11:39:00 W [client-protocol.c:344:client_protocol_xfer]
brick-ds-bak: not connected at the moment to submit frame type(0) op(34)
2007-09-07 11:39:00 D [inode.c:297:__destroy_inode] brick/inode: destroy
inode(0) [@0x148e8200]
2007-09-07 11:39:17 D [client-protocol.c:4211:client_protocol_reconnect]
brick-ds-bak: attempting reconnect
and the file creation just never returns. ie, if i mount this mirror setup
on /brick and do: touch /brick/non_exist, an strace of tha tprocess just
shows it hanging in :
open("/brick/non_exist", O_WRONLY|O_CREAT|O_NOCTTY|O_NONBLOCK, 0666
So my question is whether this is indended behavior? The wiki page makes it
sound like this is an HA setup, but if one side goes down and that makes the
remaining node useless, it's not much use as an HA setup. Am I missing
something critical here?
thanks,
august
------------
client (mounted on /brick):
volume brick
type protocol/client
option transport-type tcp/client
option remote-host 192.168.16.126
option remote-subvolume brick
option remote-port 16
end-volume
server :
volume brick-ds
type storage/posix
option directory /.brick-ds
end-volume
volume brick-ns
type storage/posix
option directory /.brick-ns
end-volume
volume brick-ds-bak
type protocol/client
option transport-type tcp/client
option remote-host 192.168.16.254
option remote-port 16
option remote-subvolume brick-ds
end-volume
volume brick-ns-bak
type protocol/client
option transport-type tcp/client
option remote-host 192.168.16.254
option remote-port 16
option remote-subvolume brick-ns
end-volume
volume brick-ds-afr
type cluster/afr
subvolumes brick-ds brick-ds-bak
option replicate *:2
end-volume
volume brick-ns-afr
type cluster/afr
subvolumes brick-ds brick-ds-bak
option replicate *:2
end-volume
volume brick-unify
type cluster/unify
subvolumes brick-ds-afr
option namespace brick-ns-afr
option scheduler rr
end-volume
volume brick
type performance/io-threads
option thread-count 4
option cache-size 64MB
subvolumes brick-unify
end-volume
volume server
type protocol/server
option transport-type tcp/server
option bind-address 192.168.16.126
option auth.ip.brick-ds.allow 192.168.16.*
option auth.ip.brick-ns.allow 192.168.16.*
option auth.ip.brick.allow 192.168.16.*
option listen-port 16
subvolumes brick
end-volume
More information about the Gluster-devel
mailing list