Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/timoa/homelab
Experimentation of running an HomeLab server running Proxmox + K8S cluster on VMs
https://github.com/timoa/homelab
managed-by-terraform proxmox terraform
Last synced: 2 days ago
JSON representation
Experimentation of running an HomeLab server running Proxmox + K8S cluster on VMs
- Host: GitHub
- URL: https://github.com/timoa/homelab
- Owner: timoa
- License: mit
- Created: 2019-09-20T07:03:06.000Z (about 5 years ago)
- Default Branch: develop
- Last Pushed: 2024-05-22T11:19:26.000Z (6 months ago)
- Last Synced: 2024-05-22T12:33:50.835Z (6 months ago)
- Topics: managed-by-terraform, proxmox, terraform
- Language: HCL
- Homepage: https://timoa.com
- Size: 345 KB
- Stars: 12
- Watchers: 3
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# HomeLab
Experimentation of running an HomeLab server running [Proxmox][proxmox-website] +
[MicroK8S][microk8s-website] cluster on VM.## The project
The idea is to run the following containers under K8S:
### Monitoring
* [Prometheus][prometheus-website]
* [Grafana][grafana-website]
* [Loki][loki-website]
* [Falco][falco-github] (Docker security audit tool)
* [cAdvisor][cadvisor-github] (Docker monitoring)
* [Speedy][speedy-github] (bandwidth monitoring)### CI/CD
* [GitLab server][gitlab-website]
* [GitLab runners][gitlab-runners-website] (runners on-demand)
* [ArgoCD][argocd-website]### Machine Learning
* [TensorFlow][tensorflow-dockerhub]
Also my other personal projects:
* [app-stores-prometheus-exporter][app-stores-prometheus-exporter-github]
* [chrome-tab-rotate-server][chrome-tab-rotate-server-github]## Hardware
### Requirements
Idealy, you need a CPU with as many as you can cores/threads and lot of memory.
Of course, it depends of what you want to run on your HomeLab server and your budget.
Some components can be upgraded (CPU, GPU) or extended (memory, storage) is why it's
important to invest on a good motherboard that can handle upgrades later
(with 4x slots of RAM instead of 2x for ex.).### My configuration
![Homelab Server Timoa][homelab-timoa-img]
I'm not a gamer but I wanted a Homelab server with the K8S color :)
I bought my configuration in July 2019 on Amazon UK.
My budget was under £500/$600 but I forgot that the AMD Ryzen X series had more
cores but no GPU embeded and I had to buy an additional GPU card.The choice of the components is based on the motherboard and CPU I wanted and the
price at that time.| Type | Specs | Description | Price | ~$ |
|---|---|---|---|---|
| CPU | 6 cores / 12 threads | AMD Ryzen 5 2600X | £175 | $220 |
| Motherboard | Micro-ITX | ASUS PRIME B450M-A | £75 | $90 |
| Memory | 16 GB | Corsair CMK16GX4M2A2400C16R Vengeance LPX 16 GB (2 x 8 GB) DDR4 2400 MHz C16 XMP 2.0 | £65 | $80|
| Storage | 480 GB | SanDisk SSD PLUS 480 GB Sata III | £45 | $55 |
| Graphics card | 1 GB DDR5 | ASUS GT710-SL-1GD5-BRK GeForce GT 710 1 GB DDR5 Low Profile | £40 | $50 |
| Power Supply | 550W 80+Gold | Corsair CP-9020133-UK TX550M 550 W 80+ Gold | £68 | $85 |
| Case | Micro-Tower | Antec DP301M Micro-Tower Black | £50 | $60 |
| **Total** | | | **£518** | **$640** |## Software
* [Proxmox VE][proxmox-website] (to manage the VM(s))
* [MicroK8S][microk8s-website] installed on VM## TODO
* Step by step installation of Proxmox
* Step by step creation of a VM for a MicroK8S cluster/node
* Share K8S yaml files to deploy different apps[homelab-timoa-img]: /docs/img/homelab-server-timoa.jpg
[prometheus-website]: https://prometheus.io/
[grafana-website]: https://grafana.com/grafana/
[loki-website]: https://loki.io/
[falco-github]: https://github.com/falcosecurity/falco
[cadvisor-github]: https://github.com/google/cadvisor
[speedy-github]: https://github.com/stefanwalther/speedy
[gitlab-website]: https://gitlab.com/
[gitlab-runners-website]: https://docs.gitlab.com/runner/
[argocd-website]: https://argoproj.github.io/cd/
[proxmox-website]: https://www.proxmox.com/en/proxmox-ve
[microk8s-website]: https://microk8s.io/
[tensorflow-website]: https://www.tensorflow.org/
[tensorflow-dockerhub]: https://hub.docker.com/r/tensorflow/tensorflow/
[chrome-tab-rotate-server-github]: https://github.com/timoa/chrome-tab-rotate-server
[app-stores-prometheus-exporter-github]: https://github.com/timoa/app-stores-prometheus-exporter