Sample deployment of a new server ================================= In this section we describe the deployment of a new server from scratch. All the operations will be performed using `bob`, the command-line client for interacting with `sysdb`. The informations we need are: - the server name: ``logging-ra.psi.ch`` - the server MAC address: ``23:3d:ef:33:11:22`` - static or dynamic IP: ``static`` - the OS installer: ``rhel79server`` - the server role: ``role::logging_server`` - the server environment in puppet: ``prod`` - the sysdb environment: ``daas`` - optional the group inside the sysdb environment (``default`` if not specified): ``logging`` Setting up bob -------------- The `bob` tool is already set up on `lxsup00.psi.ch`. You might connect with `ssh` and use it from there. Altenatively you many have on your workstation a local copy of `bob`. This can be done by installing the RPM from the pli-misc repository - https://repo00.psi.ch/el7/manual/pli-misc/ You might need to set a `PSI_BOB_USER` environment variable (`export PSI_BOB_USER=`) or use the option `--user` if your local user is different from the one on sysdb. Sysdb configuration ------------------- We then create a deployment environment:: bob env add daas talamo_i daas-admins 'DaaS Cluster' We add the node to the environment, specifing ``netboot`` as the boot action :: bob node add logging-ra.psi.ch daas netboot We setup its MAC address: :: bob node add-mac logging-ra.psi.ch 23:3d:ef:33:11:22 Next decide how the IP address is configured (``dhcp`` or ``static``): :: bob node set-attr syslog-ra.psi.ch network=static And which installer is used: :: bob node set-attr syslog-ra.psi.ch ipxe_installer=rhel79server And we finally setup the puppet role and puppet environment: :: bob node set-attr syslog-ra.psi.ch puppet_role=role::log_server bob node set-attr syslog-ra.psi.ch puppet_env=prod bob node set-attr syslog-ra.psi.ch puppet_group=logging PXE server-side configuration ----------------------------- In case the node is configured to use legacy BIOS mode (and not UEFI mode) the following has to be run on the PXE server to make the node boot the ipxe image: :: cd /afs/psi.ch/service/linux/tftpboot/pxelinux.cfg/ ln -sf lxprod logging-ra MAC='the::node::mac::address' MACFILENAME="01-`echo $MAC|tr 'A-Z' 'a-z'| sed 's/:/-/g'`" ln -sf logging-ra $MACFILENAME Otherwise the node will boot with the old pxe configuration. In such case is possible to boot ipxe typing `lxprod` on the PXE command line.