Files
gitea-pages/admin-guide/deployment/sample.md

66 lines
2.2 KiB
Markdown

# 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: `rhel8install`
- the server role: `role::logging_server`
- the server environment in puppet: `prod`
- the sysdb deployment 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 `lxsup.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://repos.psi.ch/rhel8/latest/pli-misc/
You might need to set a `PSI_BOB_USER` environment variable (`export PSI_BOB_USER=<you-name-it>`) or use the option `--user` if your local user is different from
the one on sysdb.
## Sysdb configuration
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=rhel8install
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
## Example
Full example:
bob node add lx-test-02.psi.ch lx netboot
bob node add-mac lx-test-02 00:50:56:9d:19:76
bob node set-attr lx-test-02.psi.ch ipxe_installer=rhel8install puppet_env=prod puppet_group=default puppet_role=role::server
bob node netboot lx-test-02.psi.ch
bob node list -v lx-test-02
Ensure that a potential previous puppet certificate for this server is deleted on the puppet server: https://puppet.psi.ch