Files
gitea-pages/admin-guide/operations/deployment.rst

1.7 KiB

Deployment

This section describes how to (re-)deploy Puppet-managed Linux systems. The general process is:

  1. Register the system with sysdb (only for new systems).
  2. Tell sysdb to perform an installation on the next boot.
  3. Reboot the system and trigger a PXE boot (usually by pressing F12 during POST).

On some systems it is not possible to use PXE boot. Either because the network card doesn't support it/has a bug/doesn't work with iPXE, or because the system is in a network from which TFTP requests to the boot server are not allowed. In those cases it is possible to either boot iPXE from a USB stick or DVD, or to simply boot the RHEL installer from DVD and point it at the Kickstart file generated by sysdb.

Registration with sysdb

The easiest way to interact with sysdb is to use bob, a command-line client, set up ready to use on lxsup00.psi.ch. Alternatively it is possible to use the web API directly.

First, add the new node:

bob node add $FQDN $ENV netboot

To be able to PXE boot we need to configure at least one MAC address for the new node:

bob node add-mac $FQDN 00:50:56:aa:fe:9b

Finally we need to configure the installer to use, and the Puppet-related parameters:

bob node set-attr $FQDN ipxe_installer=rhel79server
bob node set-attr $FQDN network=static
bob node set-attr $FQDN puppet_env=prod
bob node set-attr $FQDN puppet_role=role::server
bob node set-attr $FQDN puppet_group=default

Redeployment

After the initial installation the boot mode has been reset from netboot to local so it will then always boot from the local disk. For a redeployment the netboot needs to be set anew:

bob node netboot $FQDN

and after redo the PXE boot.