[Gluster-users] How Does Gluster Failover
Joe Julian
joe at julianfamily.org
Wed Aug 31 15:32:38 UTC 2022
Kind-of. That just tells the client what other nodes it can use to
retrieve that volume configuration. It's only used during that initial
fetch.
On 8/31/22 8:26 AM, Péter Károly JUHÁSZ wrote:
> You can also add the mount option: backupvolfile-server to let the
> client know the other nodes.
>
> Matthew J Black <duluxoz at gmail.com> 于 2022年8月31日周三 17:21写道:
>
> Ah, it all now falls into place: I was unaware that the client
> receives that file upon initial contact with the cluster, and thus
> has that information at hand independently of the cluster nodes.
>
> Thank you for taking the time to educate a poor newbie - it is
> very much appreciated.
>
> Cheers
>
> Dulux-Oz
>
> On 01/09/2022 01:16, Joe Julian wrote:
>>
>> You know when you do a `gluster volume info` and you get the
>> whole volume definition, the client graph is built from the same
>> info. In fact, if you look in /var/lib/glusterd/vols/$volume_name
>> you'll find some ".vol" files. `$volume_name.tcp-fuse.vol` is the
>> configuration that the clients receive from whichever server they
>> initially connect to. You'll notice that file has multiple
>> "type/client" sections, each establishing a tcp connection to a
>> server.
>>
>> Sidenote: You can also see in that file, how the microkernels are
>> used to build all the logic that forms the volume, which is kinda
>> cool. Back when I first started using gluster, there was no
>> glusterd and you have to build those .vol files by hand.
>>
>> On 8/31/22 8:04 AM, Matthew J Black wrote:
>>>
>>> Hi Joe,
>>>
>>> Thanks for getting back to me about this, it was helpful, and I
>>> really appreciate it.
>>>
>>> I am, however, still (slightly) confused - *how* does the client
>>> "know" the addresses of the other servers in the cluster (for
>>> read or write purposes), when all the client has is the line in
>>> the fstab file: "gfs1:gv1 /data/gv1 glusterfs defaults 0 2"?
>>> I'm missing something, somewhere, in all of this, and I can't
>>> work out what that "something" is. :-)
>>>
>>> Your help truely is appreciated
>>>
>>> Cheers
>>>
>>> Dulux-Oz
>>>
>>> On 01/09/2022 00:55, Joe Julian wrote:
>>>>
>>>> With a replica volume the client connects and writes to all the
>>>> replicas directly. For reads, when a filename is looked up the
>>>> client checks with all the replicas and, if the file is
>>>> healthy, opens a read connection to the first replica to
>>>> respond (by default).
>>>>
>>>> If a server is shut down, the client receives the tcp messages
>>>> that close the connection. For read operations, it chooses the
>>>> next server. Writes will just continue to the remaining
>>>> replicas (metadata is stored in extended attributes to inform
>>>> future lookups and the self-healer of file health).
>>>>
>>>> If a server crashes (no tcp finalization) the volume will pause
>>>> for ping-timeout seconds (42 by default). Then continue as
>>>> above. BTW, that 42 second timeout shouldn't be a big deal. The
>>>> MTBF should be sufficiently far apart that this should still
>>>> easily get you five or six nines.
>>>>
>>>> On 8/30/22 11:55 PM, duluxoz wrote:
>>>>>
>>>>> Hi Guys & Gals,
>>>>>
>>>>> A Gluster newbie question for sure, but something I just don't
>>>>> "get" (or I've missed in the doco, mailing lists, etc):
>>>>>
>>>>> What happens to a Gluster Client when a Gluster Cluster Node
>>>>> goes off-line / fails-over?
>>>>>
>>>>> How does the Client "know" to use (connect to) another Gluster
>>>>> Node in the Gluster Cluster?
>>>>>
>>>>> Let me elaborate.
>>>>>
>>>>> I've got four hosts: gfs1, gfs2, gfs3, and client4 sitting on
>>>>> 192.168.1.1/24 <http://192.168.1.1/24>, .2, .3, and .4
>>>>> respectively.
>>>>>
>>>>> DNS is set up and working correctly.
>>>>>
>>>>> gfs1, gs2, and gfs3 form a "Gluster Cluster" with a Gluster
>>>>> Volume (gv1) replicated across all three nodes. This is all
>>>>> working correctly (ie a file (file1) created/modified on
>>>>> gfs1:/gv1 is replicated correctly to gfs2:/gv1 and gfs3:/gv1).
>>>>>
>>>>> client4 has an entry in its /etc/fstab file which reads:
>>>>> "gfs1:gv1 /data/gv1 glusterfs defaults 0 2". This is also
>>>>> all working correctly (ie client4:/data/gv1/file1 is
>>>>> accessible and replicated).
>>>>>
>>>>> So, (and I haven't tested this yet) what happens to
>>>>> client4:/data/gv1/file1 when gfs1 fails (ie is turned off,
>>>>> crashes, etc)?
>>>>>
>>>>> Does client4 "automatically" switch to using one of the other
>>>>> two Gluster Nodes, or do I have something wrong in clients4's
>>>>> /etc/fstab file, or an error/mis-configuration somewhere else?
>>>>>
>>>>> I thought about setting some DNS entries along the lines of:
>>>>>
>>>>> ~~~
>>>>>
>>>>> glustercluster IN A 192.168.0.1
>>>>>
>>>>> glustercluster IN A 192.168.0.2
>>>>>
>>>>> glustercluster IN A 192.168.0.3
>>>>>
>>>>> ~~~
>>>>>
>>>>> and having clients4's /etc/fstab file read:
>>>>> "glustercluster:gv1 /data/gv1 glusterfs defaults 0 2", but
>>>>> this is a Round-Robin DNS config and I'm not sure how Gluster
>>>>> treats this situation.
>>>>>
>>>>> So, if people could comment / point me in the correct
>>>>> direction I would really appreciate it - thanks.
>>>>>
>>>>> Dulux-Oz
>>>>>
>>>>>
>>>>> ________
>>>>>
>>>>>
>>>>>
>>>>> Community Meeting Calendar:
>>>>>
>>>>> Schedule -
>>>>> Every 2nd and 4th Tuesday at 14:30 IST / 09:00 UTC
>>>>> Bridge:https://meet.google.com/cpu-eiue-hvk
>>>>> Gluster-users mailing list
>>>>> Gluster-users at gluster.org
>>>>> https://lists.gluster.org/mailman/listinfo/gluster-users
>>>
>>> width=
>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
>>> Virus-free.www.avast.com
>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
>>>
>>>
>>> <#m_-4861399478586633768_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
> ________
>
>
>
> Community Meeting Calendar:
>
> Schedule -
> Every 2nd and 4th Tuesday at 14:30 IST / 09:00 UTC
> Bridge: https://meet.google.com/cpu-eiue-hvk
> Gluster-users mailing list
> Gluster-users at gluster.org
> https://lists.gluster.org/mailman/listinfo/gluster-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gluster.org/pipermail/gluster-users/attachments/20220831/1be06cca/attachment.html>
More information about the Gluster-users
mailing list