Tuesday, March 15, 2011

How to Build an HPC Cluster in the Cloud

Step 1:  Deploy or migrate a management server in the cloud
A distributed computing management (DCM) server (also called a front end server or queuing server) is required for coordinating execution of jobs across a large number of compute servers. Products such as Oracle Grid Engine or Condor are commonly used to provide this capability. There are also tools such as Rocks Clusters which include the DCM software as part of an OS provisioning system. Regardless of the specific solution used, CloudSwitch enables an administrator to migrate an existing deployment or establish a new deployment in the cloud within a few minutes. Once the chosen software framework is in place, compute capacity to carry out the workload can be provisioned.
Step 2:  Create compute servers quickly in the cloud 
The CloudSwitch API makes it easy to quickly stamp out dozens or hundreds of virtual servers in the cloud that will form the cluster or grid. You can configure the virtual machine parameters that match your internal environment with a few clicks, or upload a gold image to make provisioning even easier. CloudSwitch automatically creates the appropriate cloud resources with the chosen configuration rather than relying on a cloud provider’s options. (A previous post describes the CloudSwitch point-and-click approach in more detail.) The CloudSwitch isolation layer extends the internal environment into the cloud so that when the servers are started, they appear to be running inside the data center, using the same management tools and processes.
Step 3:  Install the operating system
Now that we’ve created the cloud infrastructure, we continue building up the stack, starting by installing the operating system on the virtual machines we created. There are a number of products that do this quickly with minimal human effort. If using Rocks, the compute servers automatically boot from the network using the “PXE” standard, and operating systems are pushed onto them. CloudSwitch also supports other solutions, including ISO-based or image-based provisioning in addition to network boot.
Step 4:  Install the DCM software and build the cluster
Since the DCM software provides the overlay framework enabling HPC jobs to run in parallel, it must be installed onto each compute node. In some cases this step can be done automatically by the provisioning solution (as in the case of Rocks), or the software may be installed manually after OS provisioning completes. Regardless of the installation method, once the DCM software is installed onto the newly-provisioned compute nodes, they are available to the management server as workload targets.
The above process will vary slightly depending on which tool(s) you use, but the end result will be the same: a fully-functioning cluster in the cloud, with the same look and feel as if it was running within the data center. These steps could be repeated as often as needed to provision multiple clusters in the cloud, with each cluster running within its own private network to securely support separate users and groups.

No comments:

Post a Comment