Re: [squid-users] Questions regarding COSS setup

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Tue, 26 Jan 2010 00:03:14 +1300

Markus Meyer wrote:
> Hi all,
>
> I want to use COSS but I'm not sure if I understand all the options
> right. So this is what I want:
>
> Although our average object size is ca. 27 kB most of the files are much
> smaller. This is the distribution of about 11 M files from one of our
> Squids:
> <1kB: 19585 0,1%
> <2kB: 583402 5,2%
> <4kB: 4897854 44,3%
> <8kB: 1049084 9,4%
> <10kB: 145059 1,3%
> <20kB: 351615 3,1%
> <30kB: 182077 1,6%
> <40kB: 325084 2,9%
> <50kB: 597911 5,4%
> <60kB: 807344 7,3%
> <70kB: 742066 6,7%
> <80kB: 527370 4,7%
> <90kB: 333543 3%
> <100kB: 206064 1,8%
> >100kB: 280574 2,5%
>
> I want to let Squid do as less IO as possible. So I thought I set
> "maximum_object_size_in_memory" to 4 kB and "max-size" for COSS to 3x
> 8kB = 24 kB. The rest goes into AUFS.

Looking at that 8KB will catch 20% more than 4KB would.

>
> So my configuration lines would look something like this:
>
> cache_dir coss /web/cache/1/coss/ 20480 max-size=24576
> cache_dir coss /web/cache/2/coss/ 20480 max-size=24576
> [...]
> cache_dir aufs /web/cache/1/aufs/ 81920 290 256
> cache_dir aufs /web/cache/2/aufs/ 81920 290 256

add min-size=24576 to the AUFS to prevent them grabbing the small files
intended for COSS.

> [...]
>
> Help is needed with the following things:
>
> - "--with-coss-membuf-size" compile-time option is set to 1 MB per
> default. Does it make sense to change this value?

AFAIK, no, but you may want to test that.

>
> - How big should I make the COSS files? I thought about 20 GB on four
> disks for COSS and 60 GB on the same disks for AUFS.

I'm not sure about this.

More total size means more slices being swapped in and out to load rarer
things. Larger slice size reduces that, but increases loading time.

COSS are limited by the maximum 2^24 objects per cache_dir, like all
stores so far. So that times your average file size should give you
something like 64 GB per dir as a theoretical absolute max store size.

>
> - How do I understand "block-size"? What values should I use? I can't
> get my head around the docs in the Squid-Wiki.

Block is equivalent to inodes as I understand it. Each file is stored in
1-N blocks. A block of 512 bytes storing a 12 byte file will waste 500
bytes. As will two blocks storing a 524 byte object.

To reach your 20GB directory size you will need block-size=2048.

Going by your object distribution I'd say thats probably workable.
Though 1KB (dir size 16GB) would have less wastage.

Amos

-- 
Please be using
   Current Stable Squid 2.7.STABLE7 or 3.0.STABLE21
   Current Beta Squid 3.1.0.15
Received on Mon Jan 25 2010 - 11:03:25 MST

This archive was generated by hypermail 2.2.0 : Tue Jan 26 2010 - 12:00:04 MST