1.6 KiB
Overview
Documentation
This guide is written using jupyterbook that accepts both ReStructured Text files (that's the system that was used initially) and Markdown.
Deployment
We generally deploy systems using PXE/Kickstart, even VMs. There is a VM template, but it only defines the standard hardware/VM settings. No software is pre-installed.
We use an iPXE image, which retrieves its client-specific configuration from a web service, which also generates the client-specific Kickstart file.
For systems where network booting isn't possible, eg. because DHCP isn't available, we can boot from USB as well.
The installation process is very roughly:
- Install a minimal system plus the Puppet agent using Kickstart
- Reboot
- On first boot, run Puppet, which installs/configures the rest
OS, Software, and Licenses
We use Red Hat Enterprise Linux 7 (aka RHEL 7). The licenses are provided by ETHZ, and we mirror the software from their Satellite server locally. We do not have direct access to Red Hat support, but we can access the Red Hat customer portal.
In addition to RHEL, we use/make available the following:
- EPEL (all of it)
- ELREPO (mostly for the Nvidia drivers)
- Puppet
- NoMachine
In addition there are several internal repositories.
Configuration Management and Automation
We use Puppet for configuration management on Linux systems. Configuration data is managed using Hiera.
Scripts are generally written in bash or Python.