Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Aug 1996 16:50:50 -0500 (CDT)
From:      Joe Greco <jgreco@brasil.moneng.mei.com>
To:        michael@memra.com (Michael Dillon)
Cc:        craigs@OS.COM, freebsd-isp@FreeBSD.org
Subject:   Re: Anyone using ccd (FreeBSD disk striper) for news
Message-ID:  <199608222150.QAA25222@brasil.moneng.mei.com>
In-Reply-To: <Pine.BSI.3.93.960822125042.14970G-100000@sidhe.memra.com> from "Michael Dillon" at Aug 22, 96 12:56:28 pm

next in thread | previous in thread | raw e-mail | index | archive | help
> On Thu, 22 Aug 1996, Craig Shrimpton wrote:
> 
> > Is anyone using the disk concatenator for FreeBSD on a news spool?  It looks
> > like it can dramatically increase performance but seems a little "hairy" to
> > setup.
> 
> I'd like to know this too because I'm going through an exercise right now
> helping a provider build a more stable and effective fullfeed news server
> than what they have. The cost of RAID is a bit steep for this provider and
> as a result we've been leaning towards Linux with md.

You don't want RAID that mirrors or does parity, you just want striped disks
for a news operation, and ccd does it just fine.

Avoid Linux unless you are prepared to play the Incompatibility Game and
Kernel-Of-The-Day Game.  I've been running news on every release of FreeBSD
since 2.0R and haven't run into any catastrophic problems that prevent 
operation.

Your only other _good_ choice for news, if you don't do BSD, is Solaris on
a SPARC, and that has its own deficiencies.

> There are a few things about FreeBSD that I don't understand well enough
> right now. One of them is software RAID striping and it sounds like ccd
> does this?

Disk striping, yes.  See:

metropolis# df -k
Filesystem   1K-blocks     Used    Avail Capacity  Mounted on
/dev/sd0a       140862    16094   113500    12%    /
/dev/sd0s1e     302222   155148   122898    56%    /usr
/dev/sd0s1f     271886   150922    99214    60%    /usr/src
/dev/sd10s1e    704559   339752   308443    52%    /var
/dev/ccd0e     1500399   246615  1133753    18%    /usr/local
/dev/ccd1e     1971087   162356  1651045     9%    /news
/dev/ccd2e     1971087   689629  1123772    38%    /news/.0
/dev/ccd3e     1971087   291799  1521602    16%    /news/.1
/dev/ccd4e     1971087   262458  1550943    14%    /news/.2
/dev/ccd5e     1971087   115531  1697870     6%    /news/.3
/dev/ccd6e     8075148  2672880  4756257    36%    /news/.4
/dev/sd20s1e   1001951   680219   241576    74%    /news/.5
procfs               4        4        0   100%    /proc
amd:493              0        0        0   100%    /home
/dev/ccd0h      501359        1   461250     0%    /export/home/u0

It works, it's great, it's fast, I've seen this system process 11 new
articles/second after a downtime, while feeding half a dozen other
systems and a slave reader.

You will notice the disks are mostly empty.  What I really wanted was disks
that were just a few hundred megs each, I am not going for a long expire
period on a machine that is exclusively a feeder, but there were no fast
drives <<< 1GB out on the market anymore, and the 1G drives were _cheap_.

> Another one is whether FreeBSD supports MMAP.

For active?  Yes, but some say not reliably.  I see no real difference
whether or not I am using it, these days, so I leave it off.

> And then there is the whole NNRPD shared active thingy.

Works fine.  If you have a mongo active file, don't forget to adjust
the constants in the patch accordingly.

> There have already been a couple of messages that make me think FreeBSD
> might be the better choice of OS here. Since running an effective fullfeed
> USENET news server is getting harder and harder these days I'm sure that
> there are others who would welcome hearing about how it is done.

Build it for speed and as close to zero latency as possible.  Use more disks
instead of less.  Stripe lots of FAST 1GB disks - like the new Hawk 31055's
- instead of going with larger drives.  2 9ms 1G disks are ALWAYS faster
than 1 8ms 2G disk, and the price is similar!  Go with more SCSI busses.
NCR controllers are $60 apiece.  Get three, and a 10/100 PCI Ethernet
controller, and you're still only putting out about $350 for your I/O
controllers.

Use a large stripe size.  I use 1 cylinder group.  You are not striping for
bandwidth.  You are striping for CONCURRENCY.  You _want_ one mechanism to
be able to handle an _entire_ file access on its own.

You can see that the machine above was just built for speed.  All disks are
striped across controllers, they are FAST Hawk drives, etc. etc.

Don't compromise on RAM.  Stuff it.  My feeds box has 128MB RAM.  The
readers have 256MB (we had some fun with that though).

And it was relatively cheap to build, compared to your average Sun system.

... Joe

-------------------------------------------------------------------------------
Joe Greco - Systems Administrator			      jgreco@ns.sol.net
Solaria Public Access UNIX - Milwaukee, WI			   414/546-7968



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199608222150.QAA25222>