When operating clusters of PCs, you need a way to distribute data from one machine to all other machines in the cluster in order to install software. An easy way to achieve this is to read the data from the harddisk partition of the source machine, to send it byte by byte over the network and to write it into the harddisk partition of the target machines. This process is called Partition Cloning. Since in a cluster all machines consist of the same hardware, you don't have to deal with different configurations. When distributing whole harddisk partitions, you don't have to care about the filesystem either.
In this project an existing system for Partition Cloning (called CloneSys working with Linux) had to be extended. The system provided functionality like cloning partition data to several clients, performing backups of harddisk partitions of specific clients, maintaining configuration information about all the machines in the cluster and more. But a major problem of the system was that the time needed to perform a cloning process took longer the more machines were involved.
So a new programm was written which distributed partition data in a more efficient way, especially the time needed for cloning partition data was not related to the number of clients. The objective of this project was to integrate this new data distribution scheme into the existing Partition Cloning system while providing the same functionality as before and maintaining backward compatibility. Further, the system had to be made more stable in terms of error conditions and more user friendly.
The new data distribution scheme now is supported by CloneSys, so cloning processes are a lot faster. The user interface has remained almost the same as before, so administration of the system is rather easy. In addition, the requirements of CloneSys in terms of installed software on the machines has been lowered, so CloneSys can operate even in small operation system enviroments where almost no other software is available (this is useful especially when installing clusters with new machines). Besides, some nice features have been added which were not available before (as example, now it is possible for the user to clone harddisk partitions directly from one machine to others without creating partition image files on the server first, which saves a lot of time).