This file describes the installation and use of Ka on a Linux cluster or a network of computers.


Ka allows the cloning of a "source node" to a "destination node" - or several destination nodes -  using information from a "server node" (nfs/tftp/dhcp). 

The source and the destination nodes should have the same hardware. Ka is made of several components:

Installation and use

Cloning a cluster with Ka is a four-step work.

  1. Getting the rpm files
  2. Installing the server node
  3. Preparing the source node
  4. Cloning

Getting the files

Download the RPM's from the download page on sourceforge.
ka-nfsroot and ka-server-host RPM's are to be installed on the server node.
ka-deploy-cluster-node must be installed on the source node.

ka-nfsroot only comes as a binary (It has been built from the mini distribution ttylinux (

Installing the server node

Installing Ka

Install ka-nfsroot and ka-server-host RPM's.

To easily configure ka, run the configuration scripts and (in /usr/share/Ka).

Ka requires on your server:

You can test your installation by running the script (in /usr/share/Ka). As a super-user, type ip-of-your-tftp-server


Ka needs a working DHCP server to be present on your network. This server is required for proper boot with pxelinux. Dynamic leases are probably not a good idea here. Your dhcpd.conf must include a "next-server" statement giving the IP of your tftp server. The "filename" option in your dhcpd.conf must be "/tftpboot/ka/pxelinux.0".

Preparing the source node

Install the ka-deploy-source-node rpm. There is no configuration required for this package. You can again test your installation by running the script (in /usr/share/Ka). As a super-user, type ip-of-your-tftp-server


On the server

The boot of the destination nodes uses PXE and PXELINUX, and does so by using a config file present on the tftp server. So you must indicate on the server which are the destination nodes that you want to install, so their next reboot will be in install mode. For this :
$ cd /tftpboot/ka/
$ ./ka_pxe_step -s -t install -m machine1 -m machine2 -m machine3
./ka_pxe_step -h will give you a list of available options.

On the source node

Run (as super-user) the ka-d command on the source node: -n xx
where xx is the number of destination nodes. Run -h to obtain the full list of options. Boot all destination nodes. When all the nodes have started, cloning starts.


During the cloning phase, you may check what is going on the server with a tail -f on /var/log/messages on the server. Information about the other nodes are printed on their screen. You may also see what's on the screen of the installing nodes by telneting them on port 233.


A typical static lease to use would be like this :
        host icluster1 
                hardware ethernet 00:01:02:03:4c:d8;
                filename "ka/pxelinux.0";
With a dhcpd.conf beginning like this for example :
option subnet-mask;
option routers;
subnet netmask
group {
        default-lease-time -1;

(add leases here)
If you want to create static hosts configuration for a lot of machines, you need their MAC address. You can do it by hand. You can also boot them with a dynamic host configuration, and then take the addresses on the leases file or on the log files. There is a PERL script in the scripts directory that does that ( But you must be careful and switch the machines on in the good order.