kadeploy tools suite is configured through two configuration files : deploy.conf
and deploy_cmd.conf
in the /etc/kadeploy/
folder.
This file presents all the variables the user must defined in order to be able to use the deployment system. It is divided into several sections. A very short description is available for each variable and sometimes example values are given in commentary.
The user can find an example in the tools/cookbook folder.
value is the time in seconds to wait for the nodes to reboot and load the deployment kernel. A first attempt try to reboot them with a software reboot, after this timeout, all the non booted nodes are hard rebooted, and after a second timeout, the still non booted ones are excluded from deployment. If null, kadeploy waits for all the target nodes
value is the time in seconds to wait for the nodes to reboot and load the deployed system. If null it waits for all the nodes that booted the deployment kernel
value is 0 or 1, setting it to 1 enables ping checks before rsh or ssh checks, to fasten checks on the arrival of the nodes
value is the absolute path of the nmap command
sentinelle is a parallel launcher that is used by kadeploy to perform all the parallel tasks required during the deployment process. Two environments are defined : the first is the deploy environment, which should be configured to let the parallel launcher work when the target nodes are running the deployment kernel, and the prod environment, which is used to issue parallel commands when the nodes are rebooted under the deployed system.
value is the absolute path of the sentinelle command used when the nodes are running the deployment kernel, this should be /usr/local/bin/DKsentinelle
, and that is where you should copy the DKsentinelle binary
value is the default arguments given to the deploy_sentinelle_cmd
to be able to connect to the nodes and timeout
value is the deploy_sentinelle_cmd
arguments given during pipelined operations, it is possible to adapt it to ensure that the pipeline topology will meet the throughput constraints and the reliability needs
value is the command to issue to get a node's IP when it is running the deployment kernel
value is the number of seconds to wait for a parallel command to succeed
value is the absolute path of the sentinelle command used when the nodes are running the deployed system, this path is common to the server issuing the deployment, and the target nodes
value is the default arguments given to the prod_sentinelle_cmd
to be able to connect to the nodes and timeout
value is the prod_sentinelle_cmd
arguments given during pipelined operations, it is possible to adapt it to ensure that the pipeline topology will meet the throughput constraints and the reliability needs
value is the command to issue to get a node's IP when it is running the deployed system
value is the number of seconds to wait for a parallel command to succeed
value is the hostname where the mysql server that owns the deployment system database is running
value is the hostname where the mysql server that owns the deployment rights database is running
value is the password to access to the rights database
value is the absolute path to the preinstall archive containing the pre_install_script
value is the name of the script in the preinstall archive that is supposed to be launched during the preinstall step
value is the name of the script in the postinstall archive, defined in the database for each environment, that is supposed to be executed during the postinstall step
PXE/TFTP
This part deals with the configuration of the PXE/TFTP
structure, to allow kadeploy to control the way the nodes boot.
value is the default kernel parameters given to the deployed kernel on boot, if none is specified with the environment, these parameters often deals with console redirection during kernel booting process
value is the base directory in the TFTP structure for Intel NICs (for our
example, value should be /tftpboot/X86PC/linux/
)
value is the relative path from tftp_repository_intel
to to the folder where kernel/initrd are associated to each node (for our
example, value should be pxelinux.cfg/
)
value is the base directory in the TFTP structure for non Intel NICs (for our
example, value should be /tftpboot/PXEClient/
)
value is the relative path from tftp_repository
to to the folder where kernel/initrd are associated to each node (for our
example, value should be pxelinux.cfg/
)
value is the directory where the grub files are generated (for our
example, value should be images_grub/
)
label_
their values are kernel/initrd pairs that can be assigned to a booting node.
label_deploy_tg3 = duke-vmlinuz:duke-initrd ETH_DRV=tg3 console=tty0 console=ttyS0,38400n8 ramdisk_size=20000means that the booting node will load
duke-vmlinuz
and duke-initrd
from the
/tftpboot/PXEClient/images_grubdirectory passing the following parameters to the kernel
ETH_DRV=tg3 console=tty0 console=ttyS0,38400n8 ramdisk_size=20000
This file contains the appropriate reboot and remote console opening commands. The kareboot and kaconsole tools get the commands to execute according to node given in parameter from it.
Also, the user can find an example in the tools/cookbook folder with a brief description of the syntax to use.
The syntax is host_name command_type command
where possible command types are softboot, hardboot, deployboot or console.
the sofboot line is the software reboot command. Typically it looks something like ssh user@hostname /sbin/reboot
the deployboot line is the command to execute to reboot the node under the deployment kernel e.g. using the setup_pxe.pl
utility in the boot/
directory
hardboot is the hardware reboot command depending on special hardware equipment
console is the command to open a remote console on a cluster node e.g. via serial port using the kermit software