Hi,

I just checked in a new package: SC3.

SC3 is the Sub (or Scalable) Cluster Command and Control toolset which I
presented at the SuperComputing OSCAR BoF. It includes three commands which
make the management of heterogeneous clusters easier:
 - scexec
 - scpush
 - scrpm
The commands do what you'd expect them to do (similar to the C3 tools) but
they have a different way to select the targetted machines:
  --image img1   : select all nodes built from the image img1
  --domain dmn1  : selects all client nodes with domain dmn1
  --nodelist "node1 node2 ..." : selects exactly the nodes listed. The
                   nodenames should better have exactly the format present in
                   the C3 config file (i.e. either include the domainname or
                   not).
  --all          : select all images defined in the SIS database

When applying commands to an image all commands have an option to also execute
the appropriate command in a chroot command applied to the image! This means
there is only one command required for pushing a file to the nodes _and_ to
their image. The probability to forget the image and get the nodes out of sync
is reduced somewhat.

If the nodes apply to an image which is incompatible with the architecture of
the master node (for example master node is ia32 and clients are x86_64,
chroot will fail!), the scexec, scrpm commands will attempt to execute the
command on the first client node belonging to the incompatible image. This
means you should better have the directory /var/lib/systemimager/images
exported to the client nodes and mounted on them under
/var/lib/systemimager/images/...

These commands all invoke C3 commands underneath. The Subcluster.pm class is
generating a temporary c3.conf file and executes the C3 commands with
them. The live nodes are detected with ganglia (gstat) if available, otherwise
with a "cexec echo ALIVE" command. Detecting with ganglia is fast!

If the commands apply to more than 32 nodes, the autogenerated c3.conf file
will use the "scalable" format, i.e. it will temporarilly set up a 2-level
host tree and execute the C3 commands through it. This will significantly
speed up C3 operations on big clusters.

These commands all come with reasonable --help output which explains their
function. Here is the scexec --help output:

Usage: scexec [--image image_name | --domain domain_name | \
               --nodelist "nodename nodename ..."]         \
               [--[no]check|-c] [--execimg|-x]             \
               -- cmd_to_be_executed [args...]

   Subcluster definition options (use exactly one type!)
    --image image_name     : all nodes which are assigned to image imagename
    --all                  : all subclusters defined by all images
    --domain domain_name   : all nodes which have the given domainname
    --nodelist "node1 node2 ..." : list of nodes. Don't forget the quotes!
   Options:
    --[no]check | -c : don't check for offline nodes (default: check)
    --execimg | -x  : execute command also in the corresponding image
                      (with chroot). Works only with the --image option
    --onlyimg | -o   : execute command only in the image, not on the hosts
                       works only with the --image option
    --verbose | -v   : verbose output (default: off)

We are using SC3 since almost 2 years now, so it is pretty reasonably tested.

I hope this is usefull to uthers, too.

Best regards,
Erich



-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Oscar-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oscar-devel

Reply via email to