Consolidating Servers Under Linux08/16/2001
In the last article in this series, I talked about how to make sure you're not "downsized" out of a job during the current IT slump. In this piece, we'll explore another kind of downsizing that is far less painful and may help you maintain your position in this turbulent time.
"Server consolidation" is a term that is often used in IT jargon to mean "we're getting rid of platform X" where "X" is SPARC, Intel, Hewlett-Packard, or some other unlucky victim of a corporate popularity contest. These days, you should be thinking about a different kind of server consolidation -- how to reduce the number of servers that your company has to support and how to bring more services together on the servers that remain.
Multiprocessor machines that can run 1.2GHz processors and multi-gigabyte memories present a compelling opportunity to get back some floor space and some money back into the IT budget by selling all those surplus machines on eBay.
Consolidating services under Linux: Part one
By now it's obvious to most people that Unix in general (and Linux in particular) is a work-horse when it comes to server-based applications such as email, web services, and other things that just don't belong on a desktop.
What most people haven't gotten too comfortable with is the idea that these servers are actually powerful enough to support multiple applications at the same time. For some reason, many shops still have have a "one-machine, one-service" orientation. For some high-volume applications this makes sense. For example, joining email and web servers is probably not a good idea for an external web server -- there are too many security issues that run together and in a hostile external environment, you want to button things up as tightly as possible.
However, for internal applications using a single machine for a web server, mail server, and file server can make sense if you have a powerful enough machine, enough I/O capbilities, and the load presented by any one application isn't excessive. Fortunately for most businesses, an intranet web site and email do not represent machine-destroying applications. File services on the other hand can really bring a machine to its knees.
The best way to make sure that you have enough resources is to do some simple profiling of your applications and then configure the new consolidated machine to match the sum of the resources (especially in terms of memory) of the machines you're replacing. One of the most important things you can do is to make sure that your data is spread across multiple drive spindles.
Have you run into any services that just don't work well on the same box?
Also in Linux in the Enterprise:
In the old (and I mean old, like the 1960s) days, disk drives had multiple moving heads that made random file access over a single disk a reasonable proposition (of course, the washing-machine-sized drives of the day could only store about 200MB, but that's another story). As hard disks matured, they traded off their multiple moving heads for overall speed and, of course, incredible storage capabilities.
Unfortunately, this means that for modern applications the real bottleneck in disk I/O performance is not so much a factor of the disk interface (modern SCSI and IDE interfaces are plenty fast) but how many read-write heads can be put into service at once.
The best way to ensure that you have a lot of heads moving is to use some flavor of RAID (Redundant Array of Inexpensive Disks) in laying out your storage. This can be something as simple as disk striping (known as RAID-0) where data is split between two disk spindles, or a full blown RAID-5 where data is split among five (or more) disks. There are also choices to be made about when to use the software RAID that comes with Linux, and when a hardware RAID card or an external RAID system makes more sense. You can always start at the low-end and use the tools built into most Linux distributions and migrate upward as your business needs dictate.
Pages: 1, 2