Does anyone have recommendations for server hardware? Number of cores, RAM, storage?
We've got the bandwidth, I just need to know what kind of server to get...
--tep
As much ram as you can reasonably afford and fast, and large, disk. The number of cores doesn't really play as much of a roll in a normal mirror as those two factors do.
- John 'Warthog9 Hawley
On 03/27/2012 02:40 PM, Tom Perrine wrote:
Does anyone have recommendations for server hardware? Number of cores, RAM, storage?
We've got the bandwidth, I just need to know what kind of server to get...
--tep _______________________________________________ CentOS-mirror mailing list CentOS-mirror@centos.org http://lists.centos.org/mailman/listinfo/centos-mirror
On 3/27/12 1:48 PM, John 'Warthog9' Hawley wrote:
As much ram as you can reasonably afford and fast, and large, disk. The number of cores doesn't really play as much of a roll in a normal mirror as those two factors do.
I was thinking 32G RAM and maybe 600G (2x300G) in RAID0. I figure I need the spindles and read speed more than I need redundancy; I can always just re-mirror the content.
I was thinking 32G RAM and maybe 600G (2x300G) in RAID0. I figure I need the spindles and read speed more than I need redundancy; I can always just re-mirror the content.
I'd do RAID-1 and let the 32G of ram cache the majority of what you'll serve up. Less to do when a drive dies :)
My mirror only has a gig of ram allocated to it right now (not sure why I allocated so little) and 200 gigs of space in a RAID-1 (of which, roughly 68 is in use for the CentOS mirror).
It serves on average 250GB/day (some days as low as 70GB, as high as 400 GB) without any issues. For a few days when 5.8 was released, it was serving around 1TB/day and still wasn't breaking a sweat.
Jeff
(IMHO) In order of importance:
#1 Disk I/O #2 Network I/O #3 Disk Space #4 RAM #5 CPU
Disk I/O is a biggie with the more open source projects you add on to your mirror. You'll be doing a lot of reading, and potentially a lot of writing during periods when your mirror is fetching large chunks of new content (point releases tend to do that). At least in our experience any load average spikes have been related to disk i/o or network i/o (ie, pushing 800mbits on a 1gbit link without a tcp offload engine).
Ram is also not a huge deal if you configure your httpd to be memory efficient. You'll be serving up mostly static content so the usual memory hogs like php, perl, etc.. are a non-issue. That and if you're network and disk i/o aren't the source of the bottle neck then these files are in and out of memory very very quickly.
-- Ben
On Tue, 2012-03-27 at 13:59 -0700, Tom Perrine wrote:
On 3/27/12 1:48 PM, John 'Warthog9' Hawley wrote:
As much ram as you can reasonably afford and fast, and large, disk. The number of cores doesn't really play as much of a roll in a normal mirror as those two factors do.
I was thinking 32G RAM and maybe 600G (2x300G) in RAID0. I figure I need the spindles and read speed more than I need redundancy; I can always just re-mirror the content.
CentOS-mirror mailing list CentOS-mirror@centos.org http://lists.centos.org/mailman/listinfo/centos-mirror
Hi,
On 03/27/2012 10:19 PM, Benjamin Hamilton wrote:
(IMHO) In order of importance:
#1 Disk I/O #2 Network I/O #3 Disk Space #4 RAM #5 CPU
Disk I/O is a biggie with the more open source projects you add on to
...
Ram is also not a huge deal if you configure your httpd to be memory efficient. You'll be serving up mostly static content so the usual
Disk i/o rate is a big deal, but even if you can systeam 40 - 60 MB/sec ( most single disk solutions these days would! ) you are ok, if you have a bit of ram on your side.
The issue about ram in a mirror machine isnt so much about app bloat, but about filesystem cache - yes, its true that a complete CentOS mirror would be > 60 GB, but if you look at the numbers the actual data in 'popular' demand tends to be quite small - maybe 8 to 9 gigs, if you have people doing OS installs against the machine, even lesser for days when there is no update going out.
So if you have >= 100mbps or so b/w and have 16gb or so of ram, you will find that a good mirror box wont be hitting the disk all that much, most of what it serves will be out of ram.
Hi Tom Caching is a good thing and I recommend to have the disks in RAID 1 instead of RAID 0: it's better to keep the server up and running without having to mirror if a hard drive fails. RAID 1 can be enough for a 1 Gbit uplink depending on your disks. The server is nothing else than dumb storage which handles small files and big files. The highest CPU usage is according to our monitoring software 8% ; I think that this isn't caused by the webserver but probably by rsync or updating.
Met vriendelijke groet/Regards,
Daniël Koop Yourwebhoster.eu
Mobile: +31621804636
Address: Yourwebhoster.eu MR. J.C. Bührmannlaan 36 1381GM Weesp Noord-Holland Nederland
KVK 32165429 BTW NL210242930B01
-----Original Message----- From: centos-mirror-bounces@centos.org [mailto:centos-mirror-bounces@centos.org] On Behalf Of Tom Perrine Sent: dinsdag 27 maart 2012 22:59 To: John 'Warthog9' Hawley Cc: Mailing list for CentOS mirrors. Subject: Re: [CentOS-mirror] recommendations for mirror server hardware?
On 3/27/12 1:48 PM, John 'Warthog9' Hawley wrote:
As much ram as you can reasonably afford and fast, and large, disk. The number of cores doesn't really play as much of a roll in a normal mirror as those two factors do.
I was thinking 32G RAM and maybe 600G (2x300G) in RAID0. I figure I need the spindles and read speed more than I need redundancy; I can always just re-mirror the content.
_______________________________________________ CentOS-mirror mailing list CentOS-mirror@centos.org http://lists.centos.org/mailman/listinfo/centos-mirror
On 03/27/2012 02:59 PM, Tom Perrine wrote:
On 3/27/12 1:48 PM, John 'Warthog9' Hawley wrote:
As much ram as you can reasonably afford and fast, and large, disk. The number of cores doesn't really play as much of a roll in a normal mirror as those two factors do.
I was thinking 32G RAM and maybe 600G (2x300G) in RAID0. I figure I need the spindles and read speed more than I need redundancy; I can always just re-mirror the content.
If you have it, throwing a 3rd 300G drive at this and doing raid5 is probably cheap and easy enough.
- John
On Tue, 27 Mar 2012, John 'Warthog9' Hawley wrote:
As much ram as you can reasonably afford and fast, and large, disk. The number of cores doesn't really play as much of a roll in a normal mirror as those two factors do.
- John 'Warthog9 Hawley
On 03/27/2012 02:40 PM, Tom Perrine wrote:
Does anyone have recommendations for server hardware? Number of cores, RAM, storage?
We've got the bandwidth, I just need to know what kind of server to get...
--tep
A lot of it depends on how much traffic you want to be able to serve. If you want to be able to provide a few hundred megabits, you don't need a lot. If you want to handle kernel.org levels of traffic, you'll need something bigger. :)
Until about a year ago, my mirror was a 4-drive raid10 (of 7200rpm SATA drives) and 16GB RAM. It really doesn't take a lot.
The more traffic you can serve from RAM, the less disk throughput you need. Disk reads are *vastly* more important than writes. I would strongly recommend some level of drive redundancy, both to prevent you from needing to resync and to prevent trouble for your downstream clients.
As a slight aside, the most important bit of tuning I did was to change vm.vfs_cache_pressue (I set it to 10). This tells the kernel to keep the file metadata in RAM. It makes it so rsync doesn't have to churn the disk.
DR