7.3. Cross Kickstarting

Rocks supports heterogeneous clusters that contain nodes of different hardware architectures with a process called cross-kickstarting. To support an architecture different than its own, a frontend needs to expand its local distribution with additional packages. This section describes how to install distributions for other architectures on your frontend.

Start with a frontend node, as described by Install Frontend, or Upgrade Frontend. Follow the instructions below for every desired architecture.

For this example, we assume the frontend is an x86 (32-bit) and the compute nodes are x86_64 CPUs (64-bit).

  1. Retrieve the required Rocks rolls for x86_64 (and optional rolls as desired)

    For each roll, add it to the frontend's roll repository:

    # rocks add roll <roll-name>.iso
  2. Rebuild your distribution for the new architecture with the following flags.

    # cd /export/rocks/install
    # rocks create distro
    # rocks create distro arch=x86_64

    The above assumes your frontend is running the i386 version of Rocks. If your frontend is running the x86_64 version of Rocks and you want to support i386-based nodes with the frontend, you'll execute:

    # cd /export/rocks/install
    # rocks create distro
    # rocks create distro arch=i386

Now your frontend is prepared to cross-kickstart compute nodes and other cluster appliances of different architectures.

Caution

Rocks does not currently support PXE cross-kickstart installs; you must boot non-native compute nodes from a native-architecture Rocks CD that contains the Kernel Roll. In the above example you must install a x86_64 compute node from an x86_64 boot media instead of PXE.