An Extensible Administration and Configuration Tool for Linux Clusters
Total Page:16
File Type:pdf, Size:1020Kb
An extensible administration and configuration tool for Linux clusters John D. Fogarty B.Sc A dissertation submitted to the University of Dublin, in partial fulfillment of the requirements for the degree of Master of Science in Computer Science 1999 Declaration I declare that the work described in this dissertation is, except where otherwise stated, entirely my own work and has not been submitted as an exercise for a degree at this or any other university. Signed: ___________________ John D. Fogarty 15th September, 1999 Permission to lend and/or copy I agree that Trinity College Library may lend or copy this dissertation upon request. Signed: ___________________ John D. Fogarty 15th September, 1999 ii Summary This project addresses the lack of system administration tools for Linux clusters. The goals of the project were to design and implement an extensible system that would facilitate the administration and configuration of a Linux cluster. Cluster systems are inherently scalable and therefore the cluster administration tool should also scale well to facilitate the addition of new nodes to the cluster. The tool allows the administration and configuration of the entire cluster from a single node. Administration of the cluster is simplified by way of command replication across one, some or all nodes. Configuration of the cluster is made possible through the use of a flexible, variables substitution scheme, which allows common configuration files to reflect differences between nodes. The system uses a GUI interface and is intuitively simple to use. Extensibility is incorporated into the system, by allowing the dynamic addition of new commands and output display types to the system. Through the use of a menus configuration file the system is easily extended to include additional commands. This can be accomplished without reprogramming for the majority of commands. An API has been provided to allow different types of component to be displayed on the main GUI panel. The system thus exhibits extensibility in supporting different types of display components such as text or graphics. This extensible scheme can then be used to support, for example, graphical output. Through the use of a configuration file for the nodes in the system, the system can scale well. New nodes are easily added through a single entry in this configuration file. Scalability is also incorporated into the design of the system, whereby as much work as possible is distributed to the server nodes. iii Acknowledgements I would like to thank my supervisor Dr. Paddy Nixon for his advice and assistance throughout the project. I would also like to express my appreciation to Dr. Simon Dobson who also assisted me during this work. Stefan Weber was unstintingly generous with his time and his expertise so “danke schon”. Finally, cheers to my classmates. iv TABLE OF CONTENTS CHAPTER 1 INTRODUCTION ............................................................................................................. 1 INTRODUCTION ............................................................................................................................................ 1 MOTIVATIONS.............................................................................................................................................. 1 GOALS ......................................................................................................................................................... 2 ROADMAP.................................................................................................................................................... 2 SUMMARY ................................................................................................................................................... 3 CHAPTER 2 BACKGROUND RESEARCH......................................................................................... 4 INTRODUCTION ............................................................................................................................................ 4 CLUSTER DEFINITION................................................................................................................................... 4 CLUSTER CHARACTERISTICS ........................................................................................................................ 4 TYPES OF CLUSTERS .................................................................................................................................... 5 Server farms............................................................................................................................................ 6 Failover clusters ..................................................................................................................................... 6 Coupled clusters ..................................................................................................................................... 6 shared nothing cluster ..........................................................................................................................................6 shared memory cluster .........................................................................................................................................6 CLUSTER CONFIGURATIONS ......................................................................................................................... 7 CLUSTER FORCES ........................................................................................................................................ 7 CLUSTER TAXONOMY.................................................................................................................................. 9 Pile Of PCs ............................................................................................................................................. 9 Cluster of Workstations (COW) .............................................................................................................. 9 Network of Workstations (NOW) .......................................................................................................... 10 Beowulf ................................................................................................................................................. 10 Beowulf History.................................................................................................................................................11 Advantages of a Beowulf ...................................................................................................................................11 D-Shared memory Clusters and SMPs.................................................................................................. 11 NT-PC................................................................................................................................................... 12 CLUSTER EXAMPLES .................................................................................................................................. 12 Beowulf class ........................................................................................................................................ 12 Loki/Hygalc .......................................................................................................................................................12 Avalon................................................................................................................................................................13 Stone SouperComputer .....................................................................................................................................13 ASCI Red...........................................................................................................................................................14 Other Examples..................................................................................................................................................14 CAG Cluster.......................................................................................................................................... 14 Windows NT example............................................................................................................................ 15 CLUSTER SOFTWARE.................................................................................................................................. 15 Operating system software.................................................................................................................... 15 Linux..................................................................................................................................................................15 Linux Modules...................................................................................................................................................16 Administration software........................................................................................................................ 17 SMILE ...............................................................................................................................................................18 Windows NT class cluster software ...................................................................................................................20 SUMMARY ................................................................................................................................................