<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Yeah there are somewhat dirty ways to work around it, and I hadn't thought of this one.&nbsp; Another option for us is to try and tag certain instances as volfile servers, and always prevent the autoscaler from removing them.&nbsp; It would be nice though if this behavior
 could be added to gluster itself as in cloud environments we don't typically rely on having hostnames.&nbsp; I think I'd also sleep better if it would error out if it couldn't retrieve that info.&nbsp; Ill throw in the feature request.&nbsp; Probably out of my element, but
 Ill also take a shot at adding in a PR for it as well.</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Thanks!</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Tim<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
</div>
<div id="appendonsend"></div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" face="Calibri, sans-serif" color="#000000"><b>From:</b> Amar Tumballi &lt;amarts@gmail.com&gt;<br>
<b>Sent:</b> Tuesday, October 15, 2019 8:51 PM<br>
<b>To:</b> Timothy Orme &lt;torme@ancestry.com&gt;<br>
<b>Cc:</b> gluster-users &lt;gluster-users@gluster.org&gt;<br>
<b>Subject:</b> [EXTERNAL] Re: [Gluster-users] Client Handling of Elastic Clusters</font>
<div>&nbsp;</div>
</div>
<div>
<div dir="ltr">Hi Timothy,
<div><br>
</div>
<div>Thanks for this report. This seems to be a genuine issue. I don't think we have a solution for this issue for now, other than may be making sure we point 'serverD' (or new server's IPs) as ServerA in /etc/hosts on that particular client as a hack.</div>
<div><br>
</div>
<div>Meantime, it would be great if you copy paste this in an issue (<a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_gluster_glusterfs_issues_new&amp;d=DwMFaQ&amp;c=kKqjBR9KKWaWpMhASkPbOg&amp;r=d0SJB4ihnau-Oyws6GEzcipkV9DfxCuMbgdSRgXeuxM&amp;m=I3p14b5dBeFbqIn849NH5VJ2Q-poj6lKcoHcz-GLkS0&amp;s=GuDvwV3wYEoU640x1N5HASszG3-seGpCRAZkHi1t5Ps&amp;e=">https://github.com/gluster/glusterfs/issues/new</a>),
 it would be good to track this.</div>
<div><br>
</div>
<div>Regards,</div>
<div>Amar</div>
</div>
<br>
<div class="x_gmail_quote">
<div dir="ltr" class="x_gmail_attr">On Wed, Oct 16, 2019 at 12:35 AM Timothy Orme &lt;<a href="mailto:torme@ancestry.com">torme@ancestry.com</a>&gt; wrote:<br>
</div>
<blockquote class="x_gmail_quote" style="margin:0px 0px 0px 0.8ex; border-left:1px solid rgb(204,204,204); padding-left:1ex">
<div dir="ltr">
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Hello,</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
I'm trying to setup an elastic gluster cluster and am running into a few odd edge cases that I'm unsure how to address.&nbsp; I'll try and walk through the setup as best I can.</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
If I have a replica 3 distributed-replicated volume, with 2 replicated volumes to start:</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
MyVolume</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp; Replica 1<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverA</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverB</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverC</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp; Replica 2</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverD</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverE</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverF<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
And the client mounts the volume with serverA as the primary volfile server, and B &amp; C as the backups.</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Then, if I perform a scale down event, it selects the first replica volume as the one to remove.&nbsp; So I end up with a configuration like:</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
MyVolume<br>
&nbsp;&nbsp; Replica 2</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverD</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverE</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverF<br>
<br>
Everything rebalances and works great.&nbsp; However, at this point, the client has lost any connection with a volfile server.&nbsp; It knows about D, E, and F, so my data is all fine, but it can no longer retrieve a volfile.&nbsp; In the logs I see:<br>
<br>
<span>[2019-10-15 17:21:59.232819] I [glusterfsd-mgmt.c:2463:mgmt_rpc_notify] 0-glusterfsd-mgmt: Exhausted all volfile servers<br>
</span><span></span></div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
This becomes problematic when I try and scale back up, and add a replicated volume back in:<br>
<br>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt">MyVolume<br>
&nbsp;&nbsp; Replica 2</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverD</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverE</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverF</div>
&nbsp;&nbsp; Replica 3</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverG</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverH</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; serverI</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
And then rebalance the volume.&nbsp; Now, I have all my data present, but the client only knows about D,E,F, so when I run an `ls` on a directory, only about half of the files are returned, since the other half live on G,H,I which the client doesn't know about.&nbsp;
 The data is still there, but it would require a re-mount at one of the new servers.</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
My question then, is there a way to have a more dynamic set of volfile servers? What would be great is if there was a way to tell the mount to fall back on the servers returned in the volfile itself in case the primary one goes away.</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
If there's not an easy way to do this, is there a flag on the mount helper that can cause the mount to die or error out in the event that it is unable to retrieve volfiles?&nbsp; The problem now is that it sort of silently fails and returns incomplete file listings,
 which for my use cases can cause improper processing of that data.&nbsp; I'd rather have it hard error than provide bad results silently obviously.</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Hope that makes sense, if you need further clarity please let me know.&nbsp; <br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Thanks,</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Tim<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
</div>
________<br>
<br>
Community Meeting Calendar:<br>
<br>
APAC Schedule -<br>
Every 2nd and 4th Tuesday at 11:30 AM IST<br>
Bridge: <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__bluejeans.com_118564314&amp;d=DwMFaQ&amp;c=kKqjBR9KKWaWpMhASkPbOg&amp;r=d0SJB4ihnau-Oyws6GEzcipkV9DfxCuMbgdSRgXeuxM&amp;m=I3p14b5dBeFbqIn849NH5VJ2Q-poj6lKcoHcz-GLkS0&amp;s=br4S0Z9tTnDXMg1i51vhfW5rJez2ys9oVzdToXQ8L7c&amp;e=" rel="noreferrer" target="_blank">
https://bluejeans.com/118564314</a><br>
<br>
NA/EMEA Schedule -<br>
Every 1st and 3rd Tuesday at 01:00 PM EDT<br>
Bridge: <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__bluejeans.com_118564314&amp;d=DwMFaQ&amp;c=kKqjBR9KKWaWpMhASkPbOg&amp;r=d0SJB4ihnau-Oyws6GEzcipkV9DfxCuMbgdSRgXeuxM&amp;m=I3p14b5dBeFbqIn849NH5VJ2Q-poj6lKcoHcz-GLkS0&amp;s=br4S0Z9tTnDXMg1i51vhfW5rJez2ys9oVzdToXQ8L7c&amp;e=" rel="noreferrer" target="_blank">
https://bluejeans.com/118564314</a><br>
<br>
Gluster-users mailing list<br>
<a href="mailto:Gluster-users@gluster.org" target="_blank">Gluster-users@gluster.org</a><br>
<a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.gluster.org_mailman_listinfo_gluster-2Dusers&amp;d=DwMFaQ&amp;c=kKqjBR9KKWaWpMhASkPbOg&amp;r=d0SJB4ihnau-Oyws6GEzcipkV9DfxCuMbgdSRgXeuxM&amp;m=I3p14b5dBeFbqIn849NH5VJ2Q-poj6lKcoHcz-GLkS0&amp;s=iJwIrN_yVs1whn80n-6-fo-eCagDmAvZlZ5-Hcad-Eg&amp;e=" rel="noreferrer" target="_blank">https://lists.gluster.org/mailman/listinfo/gluster-users</a><br>
</blockquote>
</div>
</div>
</body>
</html>