Skip to content

Commit

Permalink
add system requirements (#892)
Browse files Browse the repository at this point in the history
  • Loading branch information
alex-matthews authored Aug 6, 2023
1 parent 9a5f117 commit f34621a
Showing 1 changed file with 22 additions and 3 deletions.
25 changes: 22 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,33 @@ Before we get started everything below must be taken into consideration, you mus
- [ ] bring a **positive attitude** and be ready to learn and fail a lot. _The more you fail, the more you can learn from._
- [ ] run the cluster on bare metal machines or VMs within your home network — **this is NOT designed for cloud environments**.
- [ ] have Debian 12 freshly installed on 1 or more AMD64/ARM64 bare metal machines or VMs. Each machine will be either a **control node** or a **worker node** in your cluster.
- [ ] give your nodes unrestricted internet access — _air-gapped environments won't work_.
- [ ] give your nodes unrestricted internet access — **air-gapped environments won't work**.
- [ ] have a domain you can manage on Cloudflare.
- [ ] be willing to commit encrypted secrets to a public GitHub repository.
- [ ] have a DNS server that supports split DNS (e.g. Pi-Hole) deployed somewhere outside your cluster **ON** your home network.

## 💻 System Preparation
## 💻 Machine Preparation

This projects supported Linux distro for running Kubernetes is Debian, Ubuntu _might_ work but it is not currently supported due to [these](https://github.com/onedr0p/flux-cluster-template/pull/830) reasons.
### System requirements

📍 _k3s default behaviour is that all nodes are able to run workloads, including contol nodes. Worker nodes are therefore optional._

📍 _If you have 3 or more nodes it is strongly recommended to make 3 of them control nodes for a highly available control plane._

📍 _Ideally you will run the cluster on bare metal machines. If you intend to run your cluster on Proxmox VE, my thoughts and recommendations about that are documented [here](https://onedr0p.github.io/home-ops/notes/proxmox-considerations.html)._

#### Minimum

| Role | Memory | Cores | Disk |
|-----------|-----------|---------|-------------|
| Control | 8GB | 4 | 100GB SSD |
| Worker | 4GB | 2 | 100GB SSD |

#### Recommended

| Role | Memory | Cores | System Disk | Data Disk | CPU |
|-----------|-----------|---------|--------------|---------------|----------|
| Any | 32GB | 8 | 100GB SSD | 1TB NVMe | AMD64 |

#### Debian for AMD64

Expand Down

0 comments on commit f34621a

Please sign in to comment.