Introduction
We will be going through the list of our providers and see what's running where, and then we will go through the list of machines we use and see in details what services run on each of them.
Notes
We won't be linking or providing a lot of code examples, as most of the configuration can be easily understood by looking at the code. However, we will try to explain some of the tricky stuff going on, as the network configuration.
Some of the concepts here might be technical, like what is a RAID, mdadm, a network bridge, LVM, KVM, libvirt… Those concepts will not be explained here, except when relevant. You can find pretty good explanations about them online. Usually, a good place to start to learn about using them is on the Arch Linux wiki.
In code blocks, $
precedes commands run unprivileged, #
precedes commands
run privileged/as root.