This section regroups the man pages for the different tools that compose the deployment system.
kaaddnode - registers nodes and their disk and partition features
kaaddnode info_file
kaaddnode registers nodes and their disk and partition features for them to be available to the deployment system. It can be used at the very beginning to describe a whole cluster (after having completed the installation for instance) or later when new nodes are added to a cluster already managed by the deployment system.
info_file is the name of the file that describes all the information the system needs. It contains two main parts and has to be formatted as described below:
# first part : node set description node_name1 mac_address1 ip_address1 node_name2 mac_address2 ip_address2 node_name3 mac_address3 ip_address3 ... ... ...N.B. : each node is described on a separate line; fields on each line are separated by tabs or spaces.
# second part : descriptive information about the type of disk and the partitioning device_name device_size partition_number1 partition_size1 deployed_env1 partition_number2 partition_size2 deployed_env2 partition_number3 partition_size3 deployed_env3 ... ... ...N.B. : each partition is described on a separate line; fields on each line are separated by tabs or spaces. All size are given in Mbytes. The specified deployed_env should already exist in the deployment system otherwise default value 'undefined' will be switched to the declared one during the execution.
First and second part are separated by a - strange and arbitrary - line starting with the following characters : \#. Empty lines and commentaries (starting with #) are ignored. Before doing any modification in the deployment system database, kaaddnode tries to check if the expected description syntax is respected in both parts.
kaaddnode description.txt
with description.txt as below:
# Nodes node1 00:02:73:49:9C:8D 192.168.10.1 node2 00:02:73:49:9C:8E 192.168.10.2 ... ... ... \# # Disk & Parts hda 80000 1 5000 swap 2 20000 debian ... ... ...
kadelnode - unregisters nodes
kadelnode -m|--machine hostname
kadelnode unregisters nodes and their disk and partition features from the deployment system.
specifies a host. This option can be used more than once to specify several hosts
remove all information relative to node1 from the deployment system database
kadeploy - deploys an environment on the given nodes
kadeploy -e|--environment environment_name -m|--machine hostname -p|--partition partition
kadeploy deploys the specified environment on the requested nodes. When successfully over, the nodes are available under the new and freshly installed environment.
It needs critic variables to be defined in the /etc/kadeploy/deploy.conf configuration file ; see configuration file section for further details.
the name of the environment to deploy
specifies a host. This option can be used more than once to specify several hosts. By default, it tries to deploy on all the nodes.
the target partition. This option can't be used more than once and the partition is the same for all the nodes.
Contains variables that should be defined prior to the command execution. These variables are grouped into several sections. A very short description is available for each variable and sometimes example values are given in commentary. The file is read once at the beginning of the execution and prior to any other action. If values are missing, it should be told as precisely as possible. The syntax is the following :
# section_name # # ------------ # # short description var_name1 = var_value1 # short description var_name2 = var_value2 # example_value ...Also, an example of this file can be found at in the
tools/cookbook/
folder.
Contains entries describing reboot command needed for deployment. Please see kareboot man page for further details.
kadeploy needs read and write access to several folder and files to acheive a deployment. These rights should be granted to the deploy user. Here are the files and folder list :
$KADEPLOYDIR/boot/
contains utilities (binaries etc.) for grub/pxe/reboot storiestftp
folder where grub and pxe files will be written and that should be defined in the /etc/kadeploy/deploy.conf
configuration file/tmp/
for a few temporary files
deploys the debian on partition hda3 of node 7
deploys the debian on partition hdb6 of nodes 1 and 2
kareboot - reboots a node
kareboot [-n|--noreboot] [-s|--soft] [-h|--hard] [-d|--deploy] -m|--machine hostname [-e|--environment name] [-p|--partition partition]
kareboot can execute software or hardware reboots on given nodes. It can execute five types of query : no reboot, simple reboot, deploy reboot, environment reboot and partition reboot. For all of them, the user can specify one or several hosts.
Here is a brief description of the effects of each reboot type :
kareboot needs the appropriate command (softboot, hardboot, deployboot) to be defined in the configuration file in order to be able to execute the requested reboot on the given node ; see configuration file section for further details.
setups pxe, grub and tftp stuff
requests a software reboot (default reboot type)
requests a hardware reboot
specify to reboot on the deployment kernel
specifies a host. This option can be used more than once to specify several hosts.
gives an (already installed) environment to boot. When used, only one environment can be specified.
gives a partition to boot on. When used, only one partition can be specified.
Can contain four entry types per node whose three are relative to the kareboot command. Those three entries describe the reboot commands for the soft, hard and deploy reboot type. Here is the description of the expected syntax :
host_name reboot_type command
where reboot_type can be either softboot, hardboot or deployboot.
Example for idpot1 of idpot cluster :
idpot1 softboot ssh root@idpot1 -o ConnectTimeout=2 /sbin/reboot
idpot1 hardboot ssh localuser@ldap-idpot ~/commande_modules/logiciel/dio_reset 0x81 0
idpot1 deployboot ../boot/setup_pxe.pl 192.168.10.1:label_deploy_tg3
In this example,
setups pxe, grub and tftp stuff for rebooting node1 on debian environment (if already installed)
setups pxe, grub and tftp stuff for rebooting node7 on partition hda5 (if an environment is found)
executes a software reboot of node1
executes a hardware reboot of nodes 7 and 6
executes a software reboot of node7
(soft) reboots on deployment kernel
(hard) reboots on deployment kernel
looks for environment debian on node3 and (soft) reboots on it if it exists
looks for environment debian on node3 and (hard) reboots on it if it exists
checks the environment installed on partition hda6 of node4 and (soft) reboots on it if appropriate
kaconsole - opens a console on a remote node
kaconsole -m|--machine hostname
kaconsole opens a console on a remote node. This tool is designed to help the user that would try to find out the reason of a deployment failure or to follow a boot sequence for instance. It needs the appropriate command to be defined in the configuration file in order to be able to open a remote console on the given node ; see configuration file section for further details.
specifies a host. This option cannot be used more than once.
Can contain four entry types per node whose only one is relative to the kaconsole command. This entry describes the command to open a remote console on the specified node of the cluster. Here is the description of the expected syntax :
host_name console command
Example for idpot1 of idpot cluster :
idpot1 console ssh -t localuser@ldap-idpot kermit -l /dev/ttyUSB0 -b 38400 -c
In this example, kaconsole -m idpot1 means to open a serial connection on idpot1 node via kermit software from ldap-idpot
opens a console on node (if appropriately equipped)
karecordenv - registers a environment
karecordenv -n | --name registration name -v | --version version # default is 1 -d | --description description -a | --author author email -fb| --filebase environment image path -ft| --filesite post-installation file path -s | --size size (Mo) -i | --initrdpath initrdpath # default is none -k | --kernelpath kernel path -p | --param kernel param -fd| --fdisktype fdisk type # default is 82 -fs| --filesystem file system # default is ext2Name, kernel_path, environment_image_path and post-installation_file_path must be defined
karecordenv registers an environment in order to be able to use it with the deployment system.
the registration name for the environment
the version number of the environment (if needed) ; default is 1
a brief description of the environment
the author email address
the complete path to the environment image
the complete path to the post-installation file
the size of the environment ; in order to perform partition size check before a deployment
the complete initrd path in the environment (including intrd name)
the complete kernel path in the environment (including kernel name)
arguments passed to kernel at boot (
rootparameter is set automatically), if left empty, default kernel parameters can be configured
the fdisk type ; default is 82
the file system type ; default is ext2
registers a debian image whose features are explicitly given in parameter
kaarchive - creates an environment image
kaarchive [-X | --exclude-from file] [-z | --gzip] [--output-directory output_directory] [-i | --image image_name] --root-directory root_directory
kaarchive creates a environment image from a running system one.
excludes files named into file from the generated environment
filters the archive through gzip
sets the output directory for the generated environment ; default is current directory
sets the output image name ; default is output_image
sets the root directory for the environment creation
creates the debian.tgz image file from /mnt/debian excluding the files listed into /path/to/files_to_exclude_list.txt
kacreateenv - creates and registers a new environment
kacreateenv -e | --environment environment_name -v | --version version -X | --exclude-from file -z | --gzip --output-directory output_directory --root-directory root_directory --author email_address --description "description" --file-base file --file-site file --size size --kernel-path kernel_path --fdisk-type fdisk_type_number --file-system file_system_type
kacreateenv creates and registers a new environment from a running system one.
the registration and output image name for the environment
the version number of the environment (if needed) ; default is 1
a brief description of the environment
the author email address
the complete path to the environment image
the complete path to the post-installation file
the size of the environment ; in order to perform partition size check before a deployment
the complete kernel path in the environment
the fdisk type ; default is 82
the file system type ; default is ext2
sets the root directory for the environment creation
excludes files named into file from the generated environment
filters the archive through gzip
sets the output directory for the generated environment ; default is current directory
creates and registers the environment according to the parameters