Combined Utilities for Beowulf (cub)

 

Using LUI to Reconfigure the Cluster

Running the cub script as described in Using cub to Install a Beowulf Cluster installs and runs LUI to set up the initial cluster configuration. When you need to reconfigure the cluster for any reason, run LUI to make the necessary changes.

LUI Concepts

LUI defines a cluster in terms of a server machine and its client nodes, resources, and attributes. Each resource represents an element to be installed on a client node or tells LUI how to install the client. To avoid repetitively assigning resources to clients, LUI lets you define a group of resources once and then allocate it to a single client or group of clients.

 

Resources include such things as the kernel used to boot a client, the file system the clients will use, and a list of rpms to be installed on each client. Attributes define the unique aspects of each client, such as its name, IP address, and MAC address. See Table 1 and Table 2 for complete lists of the resources and attributes you can define.

The cub script simplifies the overall installation and definition of resources and attributes even further. The information cub solicits from you becomes input to LUI commands that then create the initial cluster. By default, cub directs LUI to set up a single group of client nodes to which it assigns a single group of resources. After the initial installation, you can run LUI directly to modify or reconfigure the cluster by editing resources or node attributes, or redefining how resources and nodes are grouped.

LUI Interfaces

LUI has both a graphical interface (GLUI) and a command line interface. One advantage to the GLUI is that information entered remains persistent after you press the OK button. For example, when you add additional client nodes, you only need to change attributes that are different for the new client.

GLUI Interface. To activate the GLUI interface, enter the command

glui

to bring up the screen shown at right. Click a button on the main GLUI screen image to view an example screen for each function.

LUI Commands. Table 3 lists the LUI commands, their functions, and command examples. Please refer to the LUI man pages for detailed descriptions of command syntax and usage. Figure 1 displays all the LUI commands executed in a sample cub script.

Table 3 LUI Commands

Command Function Description
mklimm

Define a server or client machine.

Example:

mklimm -n mgtnode -t server -i 10.1.2.1 -m 255.255.255.0 -r false

This command defines the machine named "mgtnode", of type server, with an IP address of 10.1.2.1, and a netmask of 255.255.255.0. The -r attribute is set to false, which determines that the server will not reboot automatically when the installation completes.


mklimcs

Define a group of clients.

Example:
mklimcs -i 10.1.2.100 -m 255.255.255.0 -g mgtnode -G compute-node -r false

This command defines a group of client nodes based on the list contained in the file compute-node; identifies each node's IP address in sequential order beginning with 10.1.2.1; defines the netmask as 255.255.255.0; identifies mgtnode as the installation gateway for the compute nodes; and instructs that the compute nodes will not reboot after a successful installation (-r false).


lslimm

List information about an object.

Example:
lslimm -n odin

which displays:

client name = odin
ip address = 192.168.64.11
netmask = 255.255.255.0
MAC address = 000255b09170
MAC id =
client mode = disk
install adapter = eth0
default route = 192.168.64.1
long hostname = odin.lui.pok.ibm.com
install gateway = 192.168.64.1
# of processors = 1
PBS string =  
auto reboot =
the resources allocated to odin are:

resource name

type
------------- ----
gigscsi disl
boot file
slash file
upramdisk ramdisk
masterrpm rpm
hosts source
dhcpd source
passwd source
shadow source
resolv source
kudzu source

delimm

Delete a node object.


mklimr

Define a LUI resource.

Example:
mklimr rpm -G resources -n rpmlist -d $SOURCEDIR/rpm.shortlist.$ARCH

This command defines the resource rpm -— the list of rpms to install on the client node — as $SOURCEDIR/rpm.shortlist.$ARCH. See the list of LUI commands from the cub script shown in Figure 1 for more examples of the mklimr command.


allimr Allocate resources to clients.

Examples:
allimr -n myrpmlist -m node1
allimr -n mydisktable -m node1
allimr -n myroot -m node1
allimr -n myboot -m node1

This command defines the individual resources myrpmlist, mydisktable, myroot, and myboot to client node1.

allimr -r resources -g compute-nodes

This command allocates the group of resources called "resources" to a group of client nodes called "compute-nodes."


unallimr

Deallocate one or more resources or groups of resources from a client or group or clients.

Example:
unallimr -r resources -g compute-nodes

This command deallocates the group of resources called "resources" from the group of clients called "compute-nodes."


lslimr

List information about a resource.

Examples:

lslimr

which displays information about all defined resources:

  file resources:
  boot
  slash
  ramdisk resources:
  smpramdisk

 

upramdisk
  rpm resources:
  mandrakerpm
  masterrpm
  source resources:
  dhcpd
  hosts
  kudzu
  passwd
    resolv
    shadow
 

lislimr -n masterrpm

which displays details about the resource materrpm:

the resource masterrpm of type rpm is associated with file:
/tftpboot/resources/full.rpmlist
the file and the resource as stored in the LIM database are
identical
this resource is allocated by:
odin

delimr

Delete a resource.