Book Review: Building Clustered Linux Systems
The author of Building Clustered Linux Systems declares that the purpose of the book is "to encourage you to build a cluster and to help you do so". And indeed, the chapters of the book adhere to this goal. The book starts by defining the term "cluster" and comparing clustered systems to SMP systems. Subsequently, the book deals with the hardware components and architecture of clusters. Networking basics are explained--TCP/IP protocols such as ARP, IPv4 and IPv6; switches; virtual LANS; and more--as a preliminary to the subsequent discussion of cluster network control.
Various HSI (high-speed interconnect) topologies are presented in the later chapters. In addition, a large portion of the book is devoted to the software needed to build a cluster, starting from discussing different Linux distribution and continuing with cluster packages--OSCAR, OpenMosix, Rocks and others. The author also explains management software and more. In addition, the SystemImager, which is an important and powerful cluster installation tool, is explained in depth.
Cluster filesystems are explored and explained well, including a discussion of NFS in clusters. There also is a survey of some open-source parallel filesystems, including PVFS, OpenGFS and Lustre, and some commercial ones, such as Red Hat GFS, PolyServe Matrix and others. Finally, monitoring tools such as mon and the Web-based Gangila are discussed.
Building Clustered Linux Systems contains many figures--more than 160--and many tables are presented to offer a visual demonstration of various topics dealt. Some of the diagrams were created with Microsoft Visio. The author acknowledges this point in the preface: "despite my focus on Linux, Visio is still unequaled in terms of its ability to create design drawings and realistic pictures of racks and clusters configurations". I must confess that I fully agree with him on this point. Although I am a devoted Linux user, I have not yet found an application for Linux that offers something similar in quality to Visio.
Finally, many practical examples are presented in this book for the many aspects of designing and building Linux clusters--networking, hardware, management, installation and more. The author's rich experience at the Pacific Northwest National Laboratory (PNNL) labs in Richland, Washington, is reflected throughout the book.
All in all, Building Clustered Linux Systems is a good book for those who want to learn more about Linux clusters--system administrators, software/hardware engineers and every Linux advocate who is interested in this subject.
Rami Rosen is a software engineer who recently has been working on Linux software for a startup company that develops videoconference and VoIP solutions. He is a devoted Linux kernel advocate, and he also loves music, reading and running. He can be reached at firstname.lastname@example.org.