August 25, 2005

Book review: The Linux Enterprise Cluster

Author: Jem Matzan

Even if your business is not an "enterprise," The Linux Enterprise Cluster is an excellent resource for building a low-cost computing platform for a variety of services and purposes. Maybe you need a lot of computing power for complex calculations or for video rendering. Maybe you need a highly available server for a variety of Internet- or intranet-related services. No matter what your needs are, The Linux Enterprise Cluster can help any Unix, BSD, or GNU/Linux sysadmin create a single, unified computing platform out of a pile of commodity computer hardware.

The Linux Enterprise Cluster is for anyone interested in combining regular desktop, workstation, or server computers together into one computing platform. You have to have a basic understanding of the GNU/Linux operating system and a good understanding of the kind of services you want to run and how to configure them. The book will not tell you how to set up a Web server, but it will tell you how to set up a group of computers to support Web services. So think of this book as a guide to hardware consolidation through software, not as a sysadmin's handbook for running network services.

The book comes with a CD, but I didn't find it terribly useful. Most of its contents are PDFs of figures from the book, although not every figure is included on the CD. If you wanted to print out larger versions of the diagrams and drawings for reference (say, to put them above your desk to remind you of the structure of the cluster), they could be useful. Otherwise, they are no different than what you see in the book. In addition to the PDFs, there are also TAR archives of all of the free software packages used in the book, and sample scripts for cluster services administration.

As always, it's better to install the requisite software packages through your distribution's installation or "extras" CDs, the package manager, or from a Web site that provides packages designed for your specific distribution. As a last resort (or if you're going to be setting up a cluster on a custom distribution or a different operating system entirely), the source code on the CD can be a fallback, but you might be better off going to each software project's Web site to get the latest version.

Writing analysis and reading strategy

The book's language is easy to understand, and even novice sysadmins should be able to follow The Linux Enterprise Cluster's instructions and advice without difficulty.

As with nearly any book, you can read The Linux Enterprise Cluster from cover to cover, and those with the least GNU/Linux system administration experience will find the most benefit in this. However, if you already have some experience with clusters, or if you need to do things out of order, the book is arranged to accommodate all knowledge levels. In other words, the chapters and sections are topic-specific and you can pick and choose the parts of the book that are relevant to you without missing out on small details.

There are a few cluster-specific services that need to be run on the machines that comprise a cluster, and that's the real meat of The Linux Enterprise Cluster -- the part that experienced sysadmins need to know. The rest covers subjects that are somewhat elementary to an experienced GNU/Linux sysadmin -- topics such as compiling the Linux kernel, starting and stopping services, and how to add services to a specific runlevel.

Aside from the basic GNU/Linux setup and installing and enabling the services necessary to run the cluster, a large portion of The Linux Enterprise Cluster is dedicated to cluster maintenance. You're shown how to monitor the running services, what to do when machines and daemons fail, and how to keep a high-availability cluster highly available.

Conclusion: putting the book to the test

Overall I felt confident that I could set up a working production enterprise cluster by reading this book. Unfortunately I didn't have enough computers to attempt anything other than a non-ideal configuration. In the best-case scenario, you'd have several nodes in the cluster, and backup systems for the load balancer, storage array, and possibly the output machines if necessary. Although I have a lot of computers lying around, I don't have enough to follow the production example throughout the book. The cluster configuration is certainly adjustable and dynamic according to your needs, and therefore there are bound to be parts of the book that you're not going to read.

The only trouble with The Linux Enterprise Cluster is the same trouble that people often have with the diversity of the GNU/Linux world: distribution-specific differences. The book is written primarily from a Red Hat perspective, so Red Hat Enterprise Linux and distributions based on it or modeled after it will work well. A sysadmin that works primarily with other kinds of distros could have some difficulty following the directions properly. GNU/Linux distributions that stray completely from the Red Hat path will be the most troublesome. This is an unavoidable problem, and the frustration that it causes is not the fault of the author or editors. The Linux Enterprise Cluster is as distribution-agnostic as it can be, but where choices have to be made, Red Hat is the default.

If you're serious about designing and implementing a low-cost production cluster using free software, this book's for you.

Title The Linux Enterprise Cluster
Publisher No Starch Press
Author Karl Kopper
ISBN 1593270364
Pages Paperback, 430 pages
Rating 8 out of 10
Summary Build a real-world Linux clustering solution that works.
Price (retail) $50 Buy it from Barnes and Noble
Click Here!