[Gluster-users] expanding volumes produce weird results
Steve Wilson
stevew at purdue.edu
Mon Jan 31 19:41:22 UTC 2011
On 01/31/2011 02:03 PM, Graeme Davis wrote:
>> On Wed, 2010-11-03 at 13:05 -0500, Craig Carl wrote:
>> >/ Samuele -
>> />/ You don't need to create a client vol file with 3.1. Please
>> delete
>> />/ it from the clients and follow these instructions to mount -
>> />/
>> http://www.gluster.com/community/documentation/index.php/Gluster_3.1:_Manually_Mounting_Volumes
>> />/
>> /
>> thanks,
>> but this then lead to a question: how can i provide to a client a pool
>> of server to use for ha without relying to hearbeat/rhcs or other
>> cluster suite ? i assumed - correct me if i'm wrong - that by using the
>> vol file client would be able to go to the next server if one was down .
>>
>> many thanks
>> Samuele
>
> I've come across this same issue (I was using vol files thinking they
> would tell the client how to mount without relying on one hostname).
>
> For example, I have a test distributed-replicated cluster of 10
> servers and 2 client set up. If I have the client set up to "mount -t
> glusterfs server1:/volume /mnt/volume" and I take down server1,
> everything still works. But if I try and mount server1 again (with
> the above command) on another client it will complete the mount
> command but then just sit there and hang the machine if you try and do
> df or cd into /mnt/volume.
>
> Basically I want to have a reliable way of mounting from clients just
> in case a machine tries to mount a Gluster volume when one of the
> servers in the cluster is down.
>
> Ideas?
>
> Thanks,
>
> Graeme
This is pretty basic but it works for me. I've written a script to do
the mount for me. It will first test if a server is running before
attempting a mount from that server. If the server isn't running, it
will go on to the next server in the list. Here's the main part of the
script:
server_list="server1 server2"
test_port=24007
# Check if something is already mounted at this mount point.
mountpoint -q /mnt/volume
if [ $? -ne 0 ]; then
for server in $server_list; do
# Test if the server is responding on the first Gluster TCP
port
netcat -z $server $test_port
if [ $? -eq 0 ]; then
mount -tglusterfs $server:/volume /mnt/volume
break
fi
done
fi
Steve
More information about the Gluster-users
mailing list