Preface

Welcome! This book will introduce you to building computing solutions from groups of interconnected systems running the Linux operating system. If you want to learn practical information about building this type of solution, often called a Linux cluster, read on!

I am writing this book because I believe the time has come for Linux cluster solutions to move into the mainstream information technology (IT) world from their current homes in universities and research institutes. This cannot happen until Linux clustered solutions, or “clusters,” are introduced and demystified for mainstream system administrators and IT solution architects. If this information is what you are looking for, read on!

In this book we examine some of the architectures, processes, and collections of technologies that may be used to build clustered Linux systems. We examine the reasons that Linux may make the best choice as the base operating system for a cluster. We do this while attempting to avoid the assumptions and jargon that currently make building Linux clusters the domain of a small club of high-performance computing specialists. If this approach is what you are looking for, read on!

Learning to build Linux clusters is a journey, like learning any other complex technical task. One of the most difficult parts in any journey is just getting started. There is a folk saying that goes something like, “A map does you no good if you don't know where you are.” This book will pick a starting point, identify some of the opportunities for Linux cluster solutions, define a process for creating a cluster solution, introduce you to some of the necessary components, and give concrete examples of cluster design and construction.

Let's begin the journey, shall we?

About This Book

The intent of this book is to provide an introduction to clustered Linux systems for an audience that may not have any experience working with this type of solution. A cluster comprises multiple physical systems, interconnected and configured to act in concert with each other as if they were a single resource. Throughout, I assume a basic understanding of computer hardware, network, and operating system concepts or the ability to research required topics. I do not, however, assume previous experience with clustered systems.

This book is not intended to be an introduction to Linux system administration or Transmision Control Protocol/Internet Protocol (TCP/IP) network administration. I make every attempt to point you to appropriate reference books and external sources of information as we proceed. Experience with administering Linux or UNIX systems and an understanding of network connections is essential to getting the most useful information from this book.

This book attempts to tie together the “big picture” for those system administrators and system architects who already understand the individual elements of that picture. My goal is to teach you how to configure and use Linux subsystems and tools on multiple physical computers to create the appearance of a single-system “clustered” solution. This is a potentially complex endeavor that relies foremost on understanding the basic operation of the Linux operating system and subsystems, which may involve network connections.

Notation and Conventions

Throughout this book we examine clusters based only on the Linux operating system. Indeed, that is why the title of the book is Building Clustered Linux Systems. To avoid the constant repetition of the phrases “Linux clusters” and “Linux cluster,” wherever I use the term cluster, I am referring to a Linux cluster, unless specifically noted otherwise.

Whenever I need to illustrate Linux commands, subsystem names, command-line options, or URLs for Web sites, I use Courier font to set the information apart from regular text. I use the Courier italic font for text that requires specific values to be substituted, such as <ip-address>-kickstart. Italic is used in the text for emphasis.

Using This Book

Part I introduces the concept of a cluster, defines the term cluster as we will use it, and outlines a general process for building a cluster. Part II introduces the hardware components that make up a cluster, along with an architectural model that shows the relationship between the individual hardware components in various types of clusters. Part III applies Linux and open-source software to the software architecture of a cluster, pointing out available solutions and approaches. Part IV discusses the economics and physical construction of cluster hardware, detailing the design and implementation details (cables, power, cooling, and so on).

Part I is the key to understanding the process and components involved in building a clustered Linux system—you should start with the chapters in this section. If you are new to the hardware and software components involved in a Linux cluster, you should proceed linearly through the remaining parts of the book. After completing Part I, experienced system architects who are anxious to dive right to the Linux software portion of building clusters should read the material in Part III, followed by Part IV. Experienced Linux system administrators may wish to read Parts II and IV, then skim over Part III.

Production Information

A number of software tools were used in the production of this book and its illustrations, including

  • Microsoft Visio 2000, for rack and network diagrams. (Despite my focus on Linux, Visio is still unequaled in terms of its ability to create design drawings and realistic pictures of racks and cluster configurations. In addition, I used Hewlett-Packard-specific templates and Visio stencils because they are freely available for Hewlett-Packard equipment and racks, not because Hewlett-Packard equipment is the only solution.)

  • Many of the figures in the book use Hewlett-Packard hardware and network equipment stencils for Visio, and are used with the permission of Hewlett-Packard and VSD Grafx, Inc. These stencils are available (currently for free) from http://www.visiocafe.com.

  • Additional network equipment stencils (specifically for Cyclades port servers and Myrinet switches) for Visio are used in several figures with permission of Altima Technologies Inc. These stencils are available by subscription from http://www.netzoomstencils.com.

  • Adobe Illustrator 10, for figures and illustrations

  • Adobe Framemaker 7, for the text and layout

  • Adobe Acrobat 6.0, for output to the printing process

All these tools made the writing, formatting, and production of this book easier than it might have been without them. After just one production of this nature, I am beginning to understand the amount of manual labor invested by Gutenberg.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.138.135.80