--- title: "Getting started" pre: "3. " weight: 3 --- ## A layered and modular architecture Hopefully this becomes a Quickstart ;) (The idea is to build [a terraform template](https://github.com/libresh/kubespray/issues/1) with kubespray to automate this part) This is what we'll deploy: The reference architecture needs 9 machines: - 3 masters - 3 ingresses - 3 compute Masters are used to coordinate the cluster. They store the state in etcd. They make sure nodes are healthy. They schedule work on the nodes. They are the brain of your cluster. If they are down, the three of them, your workload still functions properly, but you couldn't change the state of you cluster. Ingresses are where https is terminated. They need to also be highly available. Depending on your hardware setup, you have to find a way to balance traffic. You could use MettalLB for instance. On Hetzner VMs, we use floating IPs. Compute nodes are where your workload is running. This is where your databases and application servers will run.