<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 22, 2017 at 2:37 AM, Jo Goossens <span dir="ltr">&lt;<a href="mailto:jo.goossens@hosted-power.com" target="_blank">jo.goossens@hosted-power.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><u></u>

  
  
  
  

<div>
<p><span style="font-family:monospace">Hi,</span></p><p> </p><p> </p><p>We use glusterfs 3.10.5 on Debian 9.</p><p> </p><p>When we stop or restart the service, e.g.: service glusterfs-server restart</p><p> </p><p>We see that the wrong port get&#39;s advertised afterwards. For example:</p><p> </p><p>Before restart:</p><p> </p><div>Status of volume: public</div><div>Gluster process                             TCP Port  RDMA Port  Online  Pid</div><div>------------------------------<wbr>------------------------------<wbr>------------------</div><div>Brick 192.168.140.41:/gluster/public        49153     0          Y       6364</div><div>Brick 192.168.140.42:/gluster/public        49152     0          Y       1483</div><div>Brick 192.168.140.43:/gluster/public        49152     0          Y       5913</div><div>Self-heal Daemon on localhost               N/A       N/A        Y       5932</div><div>Self-heal Daemon on 192.168.140.42          N/A       N/A        Y       13084</div><div>Self-heal Daemon on 192.168.140.41          N/A       N/A        Y       15499</div><div> </div><div>Task Status of Volume public</div><div>------------------------------<wbr>------------------------------<wbr>------------------</div><div>There are no active volume tasks</div><div> </div><div> </div><div>After restart of the service on one of the nodes (192.168.140.43) the port seems to have changed (but it didn&#39;t):</div><div> </div><div><div>root@app3:/var/log/glusterfs#  gluster volume status</div><div>Status of volume: public</div><div>Gluster process                             TCP Port  RDMA Port  Online  Pid</div><div>------------------------------<wbr>------------------------------<wbr>------------------</div><div>Brick 192.168.140.41:/gluster/public        49153     0          Y       6364</div><div>Brick 192.168.140.42:/gluster/public        49152     0          Y       1483</div><div>Brick 192.168.140.43:/gluster/public        49154     0          Y       5913</div><div>Self-heal Daemon on localhost               N/A       N/A        Y       4628</div><div>Self-heal Daemon on 192.168.140.42          N/A       N/A        Y       3077</div><div>Self-heal Daemon on 192.168.140.41          N/A       N/A        Y       28777</div><div> </div><div>Task Status of Volume public</div><div>------------------------------<wbr>------------------------------<wbr>------------------</div><div>There are no active volume tasks</div><div> </div></div><div> </div><div>However the active process is STILL the same pid AND still listening on the old port</div><div> </div><div><div>root@192.168.140.43:/var/log/<wbr>glusterfs# netstat -tapn | grep gluster</div><div>tcp        0      0 <a href="http://0.0.0.0:49152" target="_blank">0.0.0.0:49152</a>           0.0.0.0:*               LISTEN      5913/glusterfsd</div><div> </div></div><div> </div><div>The other nodes logs fill up with errors because they can&#39;t reach the daemon anymore. They try to reach it on the &quot;new&quot; port instead of the old one:</div><div> </div><div><div>[2017-09-21 08:33:25.225006] E [socket.c:2327:socket_connect_<wbr>finish] 0-public-client-2: connection to <a href="http://192.168.140.43:49154" target="_blank">192.168.140.43:49154</a> failed (Connection refused); disconnecting socket</div><div>[2017-09-21 08:33:29.226633] I [rpc-clnt.c:2000:rpc_clnt_<wbr>reconfig] 0-public-client-2: changing port to 49154 (from 0)</div><div>[2017-09-21 08:33:29.227490] E [socket.c:2327:socket_connect_<wbr>finish] 0-public-client-2: connection to <a href="http://192.168.140.43:49154" target="_blank">192.168.140.43:49154</a> failed (Connection refused); disconnecting socket</div><div>[2017-09-21 08:33:33.225849] I [rpc-clnt.c:2000:rpc_clnt_<wbr>reconfig] 0-public-client-2: changing port to 49154 (from 0)</div><div>[2017-09-21 08:33:33.236395] E [socket.c:2327:socket_connect_<wbr>finish] 0-public-client-2: connection to <a href="http://192.168.140.43:49154" target="_blank">192.168.140.43:49154</a> failed (Connection refused); disconnecting socket</div><div>[2017-09-21 08:33:37.225095] I [rpc-clnt.c:2000:rpc_clnt_<wbr>reconfig] 0-public-client-2: changing port to 49154 (from 0)</div><div>[2017-09-21 08:33:37.225628] E [socket.c:2327:socket_connect_<wbr>finish] 0-public-client-2: connection to <a href="http://192.168.140.43:49154" target="_blank">192.168.140.43:49154</a> failed (Connection refused); disconnecting socket</div><div>[2017-09-21 08:33:41.225805] I [rpc-clnt.c:2000:rpc_clnt_<wbr>reconfig] 0-public-client-2: changing port to 49154 (from 0)</div><div>[2017-09-21 08:33:41.226440] E [socket.c:2327:socket_connect_<wbr>finish] 0-public-client-2: connection to <a href="http://192.168.140.43:49154" target="_blank">192.168.140.43:49154</a> failed (Connection refused); disconnecting socket</div><div> </div></div><div>So they now try 49154 instead of the old 49152 </div><div> </div><div>Is this also by design? We had a lot of issues because of this recently. We don&#39;t understand why it starts advertising a completely wrong port after stop/start.</div></div></blockquote><div><br></div><div>This looks like a bug to me. For some reason glusterd&#39;s portmap is referring to a stale port (IMO) where as brick is still listening to the correct port. But ideally when glusterd service is restarted, all the portmap in-memory is rebuilt. I&#39;d request for the following details from you to let us start analysing it:</div><div><br></div><div>1. glusterd statedump output from 192.168.140.43 . You can use kill -SIGUSR2 &lt;pid of glusterd&gt; to request for a statedump and the file will be available in /var/run/gluster</div><div>2. glusterd, brick logfile for 192.168.140.43:/gluster/public from 192.168.140.43<br></div><div>3. cmd_history logfile from all the nodes.</div><div>4. Content of /var/lib/glusterd/vols/public/</div><div><br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div> </div><div> </div><div> </div><div> </div><p> </p><p>Regards</p><span class="gmail-HOEnZb"><font color="#888888"><p>Jo Goossens</p><p> </p><p></p>
</font></span></div>
<br>______________________________<wbr>_________________<br>
Gluster-users mailing list<br>
<a href="mailto:Gluster-users@gluster.org">Gluster-users@gluster.org</a><br>
<a href="http://lists.gluster.org/mailman/listinfo/gluster-users" rel="noreferrer" target="_blank">http://lists.gluster.org/<wbr>mailman/listinfo/gluster-users</a><br></blockquote></div><br></div></div>