<div dir="ltr">Yes, if you want to avoid writes to disk, mount tmpfs over this directory, that's what I did.<div><br></div><div>Cheers.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 27, 2015 at 7:18 PM, Jason Price <span dir="ltr"><<a href="mailto:japrice@gmail.com" target="_blank">japrice@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Self reply:  Does varnish rewrite the<br>
/var/lib/varnish/<VARNISH_NAME>/_.vsm file periodically?<br>
<br>
<googling><br>
<br>
<a href="http://www.gossamer-threads.com/lists/varnish/misc/24678" target="_blank">http://www.gossamer-threads.com/lists/varnish/misc/24678</a><br>
<br>
<d'oh!><br>
<br>
Looks like the big control-knob for this is vm.dirty_expire_centisecs<br>
for modern linux kernels.  Every interval, an async copy of the shared<br>
memory log goes to disk.  I'll be evaluating just tweaking this, or<br>
moving it to a tmpfs volume.  yay.<br>
<span class="HOEnZb"><font color="#888888"><br>
-Jason<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
On Mon, Apr 27, 2015 at 11:50 AM, Jason Price <<a href="mailto:japrice@gmail.com">japrice@gmail.com</a>> wrote:<br>
> Varnish invocation:<br>
><br>
> /usr/sbin/varnishd -P /var/run/varnish.pid -a :80 -n vorigin -f<br>
> /etc/varnish/vorigin.vcl -T <a href="http://127.0.0.1:6082" target="_blank">127.0.0.1:6082</a> -t 120 -w 2000,8000,300 -p<br>
> thread_pools=2 -p thread_pool_workspace=100000 -p<br>
> sess_workspace=1000000 -u varnish -g varnish -S /etc/varnish/secret -s<br>
> malloc,90G<br>
><br>
> We've had a production issue and I've been asserting that varnish<br>
> doesn't write anything to disk, so the root volume IO spike we're<br>
> seeing CAN'T be varnish.<br>
><br>
> Of course, I look into iotop (specifically 'iotop -obPk') I see<br>
> periodic times where the output is as follows:<br>
><br>
>   PID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN      IO    COMMAND<br>
>     6 be/4 root        0.00 K/s    0.00 K/s  0.00 % 33.26 % [kworker/u128:0]<br>
>  4185 be/4 varnish     0.00 K/s 6673.66 K/s  0.00 %  0.00 % varnishd<br>
> -P /var/run/varnish.pid -a :80 -n vorigin -f /etc/varnish/vorigin.vcl<br>
> -T <a href="http://127.0.0.1:6082" target="_blank">127.0.0.1:6082</a> -t 120 -w 2000,8000,300 -p thread_pools=2 -p<br>
> thread_pool_workspace=100000 -p sess_workspace=1000000 -u varnish -g<br>
> varnish -S /etc/varnish/secret -s malloc,90G<br>
> Total DISK READ: 0.00 K/s | Total DISK WRITE: 0.00 K/s<br>
>   PID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN      IO    COMMAND<br>
>  4185 be/4 varnish     0.00 K/s 12659.41 K/s  0.00 %  0.00 % varnishd<br>
> -P /var/run/varnish.pid -a :80 -n vorigin -f /etc/varnish/vorigin.vcl<br>
> -T <a href="http://127.0.0.1:6082" target="_blank">127.0.0.1:6082</a> -t 120 -w 2000,8000,300 -p thread_pools=2 -p<br>
> thread_pool_workspace=100000 -p sess_workspace=1000000 -u varnish -g<br>
> varnish -S /etc/varnish/secret -s malloc,90G<br>
><br>
> I've dug into it with LSOF and sundry, and I can't figure out<br>
> what/where varnish is doing the writing.  It's not constant... 10-20<br>
> seconds will pass before I see it again for several seconds (2-8ish).<br>
><br>
> NOTE: normal load for these boxes is 3-10k req/sec.<br>
><br>
> Any thoughts?  Why is varnish writing to disk (more to the point:<br>
> writing tens megabytes at a time)?<br>
><br>
> varnish version 3.0.5<br>
> Amazon Linux<br>
> Kernel 3.14.35-28<br>
><br>
> Thank you for any help;<br>
> -Jason<br>
<br>
_______________________________________________<br>
varnish-misc mailing list<br>
<a href="mailto:varnish-misc@varnish-cache.org">varnish-misc@varnish-cache.org</a><br>
<a href="https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc" target="_blank">https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">Jorge Nerín<br><<a href="mailto:jnerin@gmail.com" target="_blank">jnerin@gmail.com</a>></div>
</div>