Khue Doan 26d7fa3e2f Use container for master nodes
For better resource usage, still use VM on worker nodes due to ISCSI
bug in the Linux kernel
2021-05-03 00:28:16 +07:00
2021-05-01 23:12:43 +07:00
2021-05-03 00:28:16 +07:00
2021-05-03 00:28:16 +07:00
2021-05-01 22:51:55 +07:00
2021-05-02 22:25:38 +07:00
2021-05-01 22:51:55 +07:00
2021-02-12 21:29:21 +07:00
2021-04-25 13:24:26 +07:00

Homelab

⚠️ WORK IN PROGRESS

Hardware

Hardware

  • 4 nodes of NEC SFF PC (Japanese version of the ThinkCentre M700)
    • CPU: Intel Core i5-6600T
    • RAM: 16GB
    • SSD: 128GB
  • TP-Link TL-SG108 switch

Architecture

Layer Name Description Provisioner
0 metal Bare metal OS installation, LXD, Terraform state backend,... Ansible, PXE server
1 infra Kubernetes clusters, shared apps (Git, Vault, Argo...) Terraform, Helm
2 apps Argo

Usage

Prerequisite

For the controller (to run Ansible, stateless PXE server, Terraform...):

For bare metal nodes:

  • PXE IPv4 enabled
  • Wake-on-LAN enabled
  • Secure boot disabled (optional, depending on the OS)

Configurations

Building

Open the tools container:

make

Then build each layer:

make metal
make infra
make apps

Acknowledgments

Description
Modern self-hosting framework, fully automated from empty disk to operating services with a single command.
Readme 13 MiB
Languages
Python 41.2%
Go 22.8%
HCL 12%
Jinja 9.8%
Shell 4.6%
Other 9.6%