gluster-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gluster-devel] HA, GlusterFS server protocol and LDirectorD


From: Geoff Kassel
Subject: Re: [Gluster-devel] HA, GlusterFS server protocol and LDirectorD
Date: Fri, 14 Sep 2007 03:02:42 +1000
User-agent: KMail/1.9.7

Hi all,
   Just thought I'd reply to myself, since I've worked out something of a 
solution to my GlusterFS HA issues.

   The solution turned out to be abandoning Heartbeat and LDirectorD, and 
using Keepalived with a few heartbeat-like scripts. This gives server 
load-balancing, two-second failover and some limited recovery ability, 
without filling up log files with peer EOF messages. 

   While the two-second failover is not friendly to already running processes 
requiring continuous filesystem access (i.e. find, du, copy operations, 
databases etc), this should be reasonably adequate for use with web and mail 
servers where a few seconds downtime should not be of much issue. (At least, 
I hope so, since I'll be deploying web and mail services based around this 
configuration shortly. Wish me luck.)

   For the curious, I've attached the associated Keepalived configuration file 
and Perl scripts. The exact same Keepalived configuration should be in use 
across all hosts running GlusterFS servers. To use this with GlusterFS 
clients, just set the remote host in the GlusterFS client translator to the 
virtual server IP address you're using in keepalived.conf.

   Scripts and configuration files are released under the LGPL and the FDL, 
respectively. Enjoy!

Kind regards,

Geoff Kassel.

On Tue, 11 Sep 2007, Geoff Kassel wrote:
> Hi all,
>    I'm trying to set up LDirectorD (through Heartbeat) to load-balance and
> failover client connections to GlusterFS server instances over TCP.
>
>    First of all, I'm curious to find out if anyone else has attempted this,
> as I've had no luck with maintaining client continuity with round-robin DNS
> in /etc/hosts and client timeouts, as advised in previous posts and
> tutorials. The clients just go dead with 'Transport endpoint is not
> connected' messages.
>
>    My main problem is that LDirectorD doesn't seem to recognize that a
> GlusterFS server is functional through the connection test method, so I
> can't detect if a server goes down. While LDirectorD does a
> request-response method of liveness detection, the GlusterFS protocol is
> unfortunately too lengthy to use in the configuration files. (It needs to
> be a request that can fit on a single line, it seems.)
>
>    I'm wondering if there's a simple request-response connection test I
> haven't found yet that I can use to check for liveness of a server over
> TCP. If there isn't... could I make a feature request for such? Anything
> that can be done manually over a telnet connection to the port would be
> perfect.
>
>    Thank you for GlusterFS, and thanks in advance for your time and effort
> in answering my question.
>
> Kind regards,
>
> Geoff Kassel.
>
>
> _______________________________________________
> Gluster-devel mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/gluster-devel


Attachment: keepalived.conf
Description: Text document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]