beosi

Name

beosi – Collects or extracts cluster configuration information.

Synopsis

beosi [-m] [-n] [-I] [-d file] [-h] [-v]

Description

The primary function of the beosi utility is to collect configuration and state information from the master node and/or compute nodes on a Scyld ClusterWare cluster, organize the information into ASCII files within a new directory in the current working directory, and finally tar that directory and uuencode the gzipped tarball into a compressed, portable archive file that can be saved locally or transmitted (e.g., by ftp or email). beosi can also be used to uudecode a previously assembled archive to reform the tarball for later extraction as desired.

beosi should be executed with root access, since much of the interesting information can only be accessed as root. The -m and -n options are typically used together to produce a directory named conf-<date>, where the YY-MM-DD date indicates the current year, month, and day. The -m option creates ASCII files in the subdirectory conf-<date>/master/, and the -n option creates ASCII files in per-node subdirectories, e.g., conf-/Node0/ and conf-/Node1/. The beosi default end product is an archive file named conf-<date>.encoded.

beosi can be used to capture configuration information for later retrieval and comparison. For example, if the current configuration is working, you can execute beosi and store the archive file for safekeeping. If a subsequent configuration change causes your cluster to stop working, then you can create another archive, extract both the new archive and the previous archive, and examine the differences between the two configurations (e.g. using diff) to determine which change caused the problem.

Options

The following options are available to the beosi utility.

-m

Collect information about the master node, typically used together with the -n option. By default, produces a uuencoded gzipped tar file in the current directory called conf-<date>.encoded

-n

Collect information about individual (compute) nodes, typically used together with the -m option. By default, produces a uuencoded gzipped tar file in the current directory called conf-<date>.encoded

-I

The -I option overrides the default action of converting the conf-<date> directory of captured information into a uuencoded gzipped tar file. Thus, the directory of information is retained in its fully “exploded” form, conf-<date>, which allows the cluster administrator to view all the information that would otherwise be bundled into the uuencoded gzipped tar file. This is especially useful to discern why beosi might be producing an unexpectedly large uuencoded file.

-d file

Decodes information from an archive created previously by beosi. The result is a gzipped tar file with the same root filename.

-h

Display a summary of beosi command arguments.

-v

Display program version information and exit.

Examples

Suppose the current date is May 22, 2018. To inspect the configuration information on the master node, first run:

[root@cluster ~]# beosi -m
[root@cluster ~]# ls
  conf-18-05-22.encoded

Then extract the information:

[root@cluster ~]# beosi -d conf-18-05-22.encoded
[root@cluster ~]# tar -zxvf conf-18-05-22.tar.gz
  conf-18-05-22/
  conf-18-05-22/master/
  conf-18-05-22/master/dmesg
  conf-18-05-22/master/lsmod
  conf-18-05-22/master/syslog
  ...

Alternatively, avoid producing a uuencoded tar file and thus retain the fully explorable directory of information:

[root@cluster ~]# beosi -m -I
[root@cluster ~]# ls
  conf-18-05-22

Use a prior configuration to identify individual files that differ:

[root@cluster ~]# diff -r --brief conf-17-12-30 conf-18-05-22
  Files conf-17-12-30/master/ifconfig and conf-18-05-22/master/ifconfig differ
  Files conf-17-12-30/master/lsmod and conf-18-05-22/master/lsmod differ
  Files conf-17-12-30/master/network and conf-18-05-22/master/network differ
  Files conf-17-12-30/master/proc_buddyinfo and conf-18-05-22/master/proc_buddyinfo differ
  ...

Use a prior configuration to compare individual files:

[root@cluster ~]# diff -u conf-17-12-30/master/lsmod conf-18-05-22/master/lsmod
--- conf-17-12-30/master/lsmod 2009-12-14 09:19:45.000000000 -0800
+++ conf-18-05-22/master/lsmod 2015-07-21 18:27:31.000000000 -0800
@@ -1,11 +1,12 @@
 Module                Size  Used by
+iptable_filter        7745  0
 bproc               181208  2
 task_packer          24708  1 bproc
 filecache            28220  2 bproc,task_packer
 ipt_MASQUERADE        9025  1
 iptable_nat          34149  2 ipt_MASQUERADE
 ip_conntrack         57369  2 ipt_MASQUERADE,iptable_nat
-ip_tables            25537  2 ipt_MASQUERADE,iptable_nat
+ip_tables            25537  3 iptable_filter,ipt_MASQUERADE,iptable_nat
 nfsd                274657  17
 exportfs             10945  1 nfsd
 lockd                82833  2 nfsd

To gather complete information about the cluster (i.e., master and all up compute nodes):

[root@cluster ~]# beosi -m -n
[root@cluster ~]# ls
  conf-18-05-22.encoded