NAME

cbais - CBAIS install and configuration system


SYNSOPIS

cbais-p ] [ -A architecture ] [ -O OS ] [ -R OSrelease ] [ -c [!]class[,class ..] ] [ -a [!]action[,action ..] ] [ -M regex ] [ -m regex ] [ -d|-r dir ] operation[,operation ..]  [ hostname ]


DESCRIPTION

cbais is the control program for the Class Based Auto Install System (CBAIS). It provides a framework for installing and managing the ongoing configuration of unix hosts. The framework supports reuse of configurations at the class, disk, and operating system component level. As such it automates the task creating and maintaining homogenous networks. It also provides detailed audit trails of machine configurations and onging changes.


CONFIGURATION

A cbais host configuration consists of three major components, disk, operating system, and class components. The disk configuration defines partitioning and filesystem layout for the disks attached to the system. The operating system configuration defines the base operating system packages to install. This is host operating system specific (currently). The class configuration defines the (list of) classes which are to installed on a host.

A class is a collection of actions grouped together to create reusable configuration components. An action is one of append, cmd, mkdir, copy, cchmod, pkg, rm, rpm, symlink, hardlink, patch, package, or metadevice.

CBAIS also allows administrators to implement their own actions and have them automatically supported (see the CBAIS::Actions::Action manpage).


=head2 Operations

cbais is used to perform CBAIS operations on a host. An operation may be any one of check, execute, verify, or undo. The operation(s) will be performed (executed) for each action which is defined for this host. See -c and -a options for information on how to control which actions will be executed. The details of cbais operations are described below.

check
Carry out a check of each action. Note that the check operation does not guarantee that an action can be executed, as some tests can only be performed when an action is being executed.

execute
execute an install. All actions are checked and executed. May be combined with undo option to implement an update.

show
show the actions which are configured for this host.

verify
run a verify operation. Actions are checked as to whether they have been installed or not. This is not applicable for all actions. The fallback condition is for a message to be printed out informing the user that the verify operation is not implemented for a particlular action.

undo
undo the specified actions.


OPTIONS

-a [!]action[,action]
carry out the specified action types only. A ``!'' may be used to reverse the sense of the action list in which case all actions except those specified will be executed.

-c [!]class[,class]
carry out the specified class(es) only. A ``!'' may be used to reverse the sense of the class list in which case all classes except those specified will be executed.

-M regexp
Perform only those actions which have a config key value matching the specified rexep.

-m regexp
Perform only those actions whose string representation matches the specified rexep.

-A architecture
specify the architecture. This will override the automatically determined setting. This is normally used when running a test install (-n) on a machine which is not the same OS version as the host which is to be installed.

-R OS_Release
Set the OS release to the specified value. This is used when running a test install (-n) on a machine which is not the same OS version as the host which is to be installed.

-p
push (send) the actions to a host. All actions are serialised (including data) and printed to standard out in a format ready for processing by the cbais_client program. This option is intended to be used across remote shells (e.g. ssh) to push actions to remote hosts.

-d dir
Dump the configured actions for this host to the specified directory. The actions configuration (only) will be dumped - not data.

-r dir
Read the configured actions for this host from the specified directory.


EXAMPLES

The example below shows all the actions in the FWTK class.

[mos@avalon CBAIS]$ .cbais -cFWTK show avalon

Loaded FWTK config (10) actions)

    Class FWTK ===============================================
    mkdir /etc/ntp mos.mos 0755
    copy /net/cbais/default/copy/FWTK/etc/ntp/ntp.conf.avalon /etc/ntp/ntp.conf mos.mos 0644
    cchmod /etc/ntp/ntp.* mos.mos 0644
    symlink /etc/ntp/ntp.symlink -> etc/ntp/ntp.conf
    symlink /etc/ntp/hosts -> ../hosts
    cd /etc; tar -zxf /net/cbais/default/pkgs/FWTK/CBAIS.tgz 
    rpm ntp
    find $CBAIS_INSTALL_ROOT/etc/ntp -ls
    rm /etc/ntp

The example below executes all operations on the current host (avalon).

[mos@avalon CBAIS]$ cbais execute

The following example loads all actions for host avalon and dumps them as serialised action (files) in the /var/spool/cbais directory.

[mos@avalon CBAIS]$ cbais -d /var/spool/cbais avalon

The example loads any actions defined in the directory /tmp/cbais and performs a verify operation.

[mos@avalon CBAIS]$ cbais -r /tmp/cbais verify avalon append /net/cbais/default/files/FW/etc/system -> /etc/system OK mkdir /etc/ntp mos.mos 0755