73 lines
2.4 KiB
ReStructuredText
73 lines
2.4 KiB
ReStructuredText
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``
|
|
|
|
On our laptop, where we have a local copy of `bob`, we first setup
|
|
some environment variables to have shorter commands: ::
|
|
|
|
export PSI_BOB_URL=https://boot00-test.psi.ch/sysdb
|
|
export PSI_BOB_USER=talamo_i
|
|
|
|
The $PSI_BOB_USER is needed because our local user is different from
|
|
the one on sysdb. It could also be specified on the command line or
|
|
let `bob` take the local username.
|
|
|
|
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.
|