<div dir="ltr"><div dir="ltr"><a class="gmail_plusreply" id="gmail-plusReplyChip-0" href="mailto:gluster-users@gluster.org" tabindex="-1">+Gluster-users</a><div> </div><div>Sorry about the delay. There is nothing suspicious about per thread CPU utilization of glusterfs process. However looking at the volume profile attached I see huge number of lookups. I think if we cutdown the number of lookups probably we&#39;ll see improvements in performance. I need following information:</div><div><br></div><div>* dump of fuse traffic under heavy load (use --dump-fuse option while mounting)</div><div>* client volume profile for the duration of heavy load - <a href="https://docs.gluster.org/en/latest/Administrator%20Guide/Performance%20Testing/">https://docs.gluster.org/en/latest/Administrator%20Guide/Performance%20Testing/</a><br></div><div>* corresponding brick volume profile<br></div><br></div><div>Basically I need to find out <br></div><div>* whether these lookups are on existing files or non-existent files</div><div>* whether they are on directories or files</div><div>* why/whether md-cache or kernel attribute cache or nl-cache will help to cut down lookups.</div><div><br></div><div>regards,</div><div>Raghavendra<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Mar 25, 2019 at 12:13 PM Hu Bert &lt;<a href="mailto:revirii@googlemail.com">revirii@googlemail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Raghavendra,<br>
<br>
sorry, this took a while. The last weeks the weather was bad -&gt; less<br>
traffic, but this weekend there was a massive peak. I made 3 profiles<br>
with top, but at first look there&#39;s nothing special here.<br>
<br>
I also made a gluster profile (on one of the servers) at a later<br>
moment. Maybe that helps. I also added some munin graphics from 2 of<br>
the clients and 1 graphic of server network, just to show how massive<br>
the problem is.<br>
<br>
Just wondering if the high io wait is related to the high network<br>
traffic bug (<a href="https://bugzilla.redhat.com/show_bug.cgi?id=1673058" rel="noreferrer" target="_blank">https://bugzilla.redhat.com/show_bug.cgi?id=1673058</a>); if<br>
so, i could deactivate performance.quick-read and check if there is<br>
less iowait. If that helps: wonderful - and yearningly awaiting<br>
updated packages (e.g. v5.6). If not: maybe we have to switch from our<br>
normal 10TB hdds (raid10) to SSDs if the problem is based on slow<br>
hardware in the use case of small files (images).<br>
<br>
<br>
Thx,<br>
Hubert<br>
<br>
Am Mo., 4. März 2019 um 16:59 Uhr schrieb Raghavendra Gowdappa<br>
&lt;<a href="mailto:rgowdapp@redhat.com" target="_blank">rgowdapp@redhat.com</a>&gt;:<br>
&gt;<br>
&gt; Were you seeing high Io-wait when you captured the top output? I guess not as you mentioned the load increases during weekend. Please note that this data has to be captured when you are experiencing problems.<br>
&gt;<br>
&gt; On Mon, Mar 4, 2019 at 8:02 PM Hu Bert &lt;<a href="mailto:revirii@googlemail.com" target="_blank">revirii@googlemail.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; Hi,<br>
&gt;&gt; sending the link directly to  you and not the list, you can distribute<br>
&gt;&gt; if necessary. the command ran for about half a minute. Is that enough?<br>
&gt;&gt; More? Less?<br>
&gt;&gt;<br>
&gt;&gt; <a href="https://download.outdooractive.com/top.output.tar.gz" rel="noreferrer" target="_blank">https://download.outdooractive.com/top.output.tar.gz</a><br>
&gt;&gt;<br>
&gt;&gt; Am Mo., 4. März 2019 um 15:21 Uhr schrieb Raghavendra Gowdappa<br>
&gt;&gt; &lt;<a href="mailto:rgowdapp@redhat.com" target="_blank">rgowdapp@redhat.com</a>&gt;:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Mon, Mar 4, 2019 at 7:47 PM Raghavendra Gowdappa &lt;<a href="mailto:rgowdapp@redhat.com" target="_blank">rgowdapp@redhat.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; On Mon, Mar 4, 2019 at 4:26 PM Hu Bert &lt;<a href="mailto:revirii@googlemail.com" target="_blank">revirii@googlemail.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; Hi Raghavendra,<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; at the moment iowait and cpu consumption is quite low, the main<br>
&gt;&gt; &gt;&gt;&gt; problems appear during the weekend (high traffic, especially on<br>
&gt;&gt; &gt;&gt;&gt; sunday), so either we have to wait until next sunday or use a time<br>
&gt;&gt; &gt;&gt;&gt; machine ;-)<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; I made a screenshot of top (<a href="https://abload.de/img/top-hvvjt2.jpg" rel="noreferrer" target="_blank">https://abload.de/img/top-hvvjt2.jpg</a>) and<br>
&gt;&gt; &gt;&gt;&gt; a text output (<a href="https://pastebin.com/TkTWnqxt" rel="noreferrer" target="_blank">https://pastebin.com/TkTWnqxt</a>), maybe that helps. Seems<br>
&gt;&gt; &gt;&gt;&gt; like processes like glfs_fuseproc (&gt;204h) and glfs_epoll (64h for each<br>
&gt;&gt; &gt;&gt;&gt; process) consume a lot of CPU (uptime 24 days). Is that already<br>
&gt;&gt; &gt;&gt;&gt; helpful?<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Not much. The TIME field just says the amount of time the thread has been executing. Since its a long standing mount, we can expect such large values. But, the value itself doesn&#39;t indicate whether the thread itself was overloaded at any (some) interval(s).<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Can you please collect output of following command and send back the collected data?<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; # top -bHd 3 &gt; top.output<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Please collect this on problematic mounts and bricks.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; Hubert<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; Am Mo., 4. März 2019 um 11:31 Uhr schrieb Raghavendra Gowdappa<br>
&gt;&gt; &gt;&gt;&gt; &lt;<a href="mailto:rgowdapp@redhat.com" target="_blank">rgowdapp@redhat.com</a>&gt;:<br>
&gt;&gt; &gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt; what is the per thread CPU usage like on these clients? With highly concurrent workloads we&#39;ve seen single thread that reads requests from /dev/fuse (fuse reader thread) becoming bottleneck. Would like to know what is the cpu usage of this thread looks like (you can use top -H).<br>
&gt;&gt; &gt;&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt; On Mon, Mar 4, 2019 at 3:39 PM Hu Bert &lt;<a href="mailto:revirii@googlemail.com" target="_blank">revirii@googlemail.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; Good morning,<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; we use gluster v5.3 (replicate with 3 servers, 2 volumes, raid10 as<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; brick) with at the moment 10 clients; 3 of them do heavy I/O<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; operations (apache tomcats, read+write of (small) images). These 3<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; clients have a quite high I/O wait (stats from yesterday) as can be<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; seen here:<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; client: <a href="https://abload.de/img/client1-cpu-dayulkza.png" rel="noreferrer" target="_blank">https://abload.de/img/client1-cpu-dayulkza.png</a><br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; server: <a href="https://abload.de/img/server1-cpu-dayayjdq.png" rel="noreferrer" target="_blank">https://abload.de/img/server1-cpu-dayayjdq.png</a><br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; The iowait in the graphics differ a lot. I checked netstat for the<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; different clients; the other clients have 8 open connections:<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; <a href="https://pastebin.com/bSN5fXwc" rel="noreferrer" target="_blank">https://pastebin.com/bSN5fXwc</a><br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; 4 for each server and each volume. The 3 clients with the heavy I/O<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; have (at the moment) according to netstat 170, 139 and 153<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; connections. An example for one client can be found here:<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; <a href="https://pastebin.com/2zfWXASZ" rel="noreferrer" target="_blank">https://pastebin.com/2zfWXASZ</a><br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; gluster volume info: <a href="https://pastebin.com/13LXPhmd" rel="noreferrer" target="_blank">https://pastebin.com/13LXPhmd</a><br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; gluster volume status: <a href="https://pastebin.com/cYFnWjUJ" rel="noreferrer" target="_blank">https://pastebin.com/cYFnWjUJ</a><br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; I just was wondering if the iowait is based on the clients and their<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; workflow: requesting a lot of files (up to hundreds per second),<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; opening a lot of connections and the servers aren&#39;t able to answer<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; properly. Maybe something can be tuned here?<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; Especially the server|client.event-threads (both set to 4) and<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; performance.(high|normal|low|least)-prio-threads (all at default value<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; 16) and performance.io-thread-count (32) options, maybe these aren&#39;t<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; properly configured for up to 170 client connections.<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; Both servers and clients have a Xeon CPU (6 cores, 12 threads), a 10<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; GBit connection and 128G (servers) respectively 256G (clients) RAM.<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; Enough power :-)<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; Thx for reading &amp;&amp; best regards,<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; Hubert<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; _______________________________________________<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; Gluster-users mailing list<br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; <a href="mailto:Gluster-users@gluster.org" target="_blank">Gluster-users@gluster.org</a><br>
&gt;&gt; &gt;&gt;&gt; &gt;&gt; <a href="https://lists.gluster.org/mailman/listinfo/gluster-users" rel="noreferrer" target="_blank">https://lists.gluster.org/mailman/listinfo/gluster-users</a><br>
</blockquote></div>