Creating virtual clusters with Rocks
Administering Virtual Compute Nodes
After a virtual compute node is created, you can query the VM state from the front-end node to make sure the virtual machine boots successfully. To query the state of the compute nodes, execute the command rocks list host compute-0-0-1; output similar to Listing 1 will provide information about the currently installed virtual machines and their states on all VM containers. (The status output is blank because processes have not been scheduled to run on the newly created VM.) Also, you can check the state of the VMs on the VM container itself with Xen xm commands (Listing 2).
Checking Vitual Machine Status
01 [root@cluster ~]# rocks list host vm 02 03 VM-HOST SLICE MEM CPUS MAC HOST STATUS 04 compute-0-0-1: 1 512 1 00:16:3e:00:00:02 vm-container-0-0 active 05 compute-0-0-2: 2 512 1 00:16:3e:00:00:03 vm-container-0-0 active 06 compute-0-0-3: 3 512 1 00:16:3e:00:00:04 vm-container-0-0 active
The xm Command
01 [root@vm-container-0-0 ~] xm list 02 Name ID Mem(MiB) VCPUs State Time(s) 03 Domain-0 0 1024 1 r------ 4035.5 04 Compute-0-0-1 2 512 1 -b----- 23174.3 05 Compute-0-0-2 3 512 1 r------ 3228.3 06 Compute-0-0-3 4 512 1 -b----- 2114.3
The rocks command is the primary administration command for the entire Rocks management system. The basic command-line structure is rocks <command> <arguments>. A full list of Rocks commands is available at the rocksclusters.org website or by typing rocks list help at the command line. The rocks command allows you to start and stop compute nodes, change configurations, and query configuration entries.
Rocks includes distributed administration utilities for executing commands against an entire cluster or group of cluster nodes. The default command for distributed command execution is tentakel, which is described as a program for executing the same command on many hosts in parallel. Tentakel is simple to use, and Rocks automatically adds all cluster nodes to /etc/tentakel.conf in various groupings. To execute a command against all nodes in /etc/tentakel.conf, type tentakel <command>. To execute a command against a group of nodes, execute tentakel -g <group_name> <command>.
To utilize all of the cluster nodes in a single application, it must be designed for the cluster. OpenMPI is a software library that is commonly used to design distributed applications for running on clusters. Sun Grid Engine and Torque are queuing systems for distributing jobs among the elements of the cluster. Although the problem of designing and implementing applications to use all cluster resources is an extensive topic, you will find resources online about the use of Sun Grid Engine, Torque, and Condor for these purposes.
Rocks' ease of use and support of the most common distributed applications makes it a favorite among scientific supercomputing facilities working on unlocking the mysteries of the universe.
- Rocks Clusters: http://www.rocksclusters.org
- Sun Grid Engine: http://gridengine.sunsource.net/
- OpenMPI: http://www.open-mpi.org/
- Sun Grid Engine Roll Users Guide: http://www.rocksclusters.org/roll-documentation/sge/4.3/roll-sge-usersguide.pdf
- Rocks Documentation Page: http://www.rocksclusters.org/wordpress/?page_id=4
Buy this article as PDF
New tool will look like GParted but support a wider range of storage technologies.
New public key pinning feature will help prevent man-in-the-middle attacks.
Carnegie Mellon researchers say 3 million pages could fall down the phishing hole in the next year.
The US government rolls new best-practice rules for protecting SSH.
Klaus Knopper announces the latest version of his iconic Live Linux system.
DARPA and NICTA release the code for the ultra-secure microkernel system used in aerial drones.
Should you trust an online service to store your online passwords?
New B+ board lets you build cool things without the complication of a powered USB hub.