All Projects → onedr0p → Home Cluster

onedr0p / Home Cluster

Licence: unlicense
My home Kubernetes (k3s) cluster managed by GitOps (Flux2)

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Home Cluster

metalnetes
Create and manage multiple Kubernetes clusters using KVM on a bare metal Fedora 29 server. Includes helm + rook-ceph + nginx ingress + the stock analysis engine (jupyter + redis cluster + minio + automated cron jobs for data collection) - works on Kubernetes version v1.16.0 - 1.16.3 was not working
Stars: ✭ 37 (-87.79%)
Mutual labels:  helm, kubernetes-cluster, bare-metal
Kubespray
Deploy a Production Ready Kubernetes Cluster
Stars: ✭ 11,588 (+3724.42%)
Mutual labels:  bare-metal, ansible, kubernetes-cluster
Ops Cli
Ops - cli wrapper for Terraform, Ansible, Helmfile and SSH for cloud automation
Stars: ✭ 152 (-49.83%)
Mutual labels:  ansible, helm, kubernetes-cluster
Pharos Cluster
Pharos - The Kubernetes Distribution
Stars: ✭ 302 (-0.33%)
Mutual labels:  bare-metal, kubernetes-cluster
K3s Gitops Arm
k3s cluster backed by Flux (GitOps) up and running on a cluster of RPi4
Stars: ✭ 135 (-55.45%)
Mutual labels:  ansible, helm
K3s Ansible
Ansible playbook to deploy k3s kubernetes cluster
Stars: ✭ 153 (-49.5%)
Mutual labels:  ansible, kubernetes-cluster
Kubeadm Playbook
Fully fledged (HA) Kubernetes Cluster using official kubeadm, ansible and helm. Tested on RHEL/CentOS/Ubuntu with support of http_proxy, dashboard installed, ingress controller, heapster - using official helm charts
Stars: ✭ 533 (+75.91%)
Mutual labels:  ansible, helm
Oneview Ansible
Ansible Modules and Sample Playbooks for HPE OneView
Stars: ✭ 96 (-68.32%)
Mutual labels:  bare-metal, ansible
K8s On Raspbian
Kubernetes on Raspbian (Raspberry Pi)
Stars: ✭ 839 (+176.9%)
Mutual labels:  bare-metal, kubernetes-cluster
K3sup
bootstrap Kubernetes with k3s over SSH < 1 min 🚀
Stars: ✭ 4,012 (+1224.09%)
Mutual labels:  helm, kubernetes-cluster
kubehelper
KubeHelper - simplifies many daily Kubernetes cluster tasks through a web interface. Search, analysis, run commands, cron jobs, reports, filters, git synchronization and many more.
Stars: ✭ 200 (-33.99%)
Mutual labels:  helm, kubernetes-cluster
kubewise
Get Helm notifications in your team chat
Stars: ✭ 52 (-82.84%)
Mutual labels:  helm, kubernetes-cluster
Ansible Role K3s
Ansible role for installing k3s as either a standalone server or HA cluster.
Stars: ✭ 132 (-56.44%)
Mutual labels:  ansible, kubernetes-cluster
Ansible Rpi K8s Cluster
Deploy Raspberry Pi Kubernetes cluster using Ansible
Stars: ✭ 131 (-56.77%)
Mutual labels:  ansible, kubernetes-cluster
Hkube
Kubernetes cluster deployment to Hetzner Cloud
Stars: ✭ 55 (-81.85%)
Mutual labels:  ansible, kubernetes-cluster
k8s-istio-demo
Demo showing the capabilities of Istio
Stars: ✭ 22 (-92.74%)
Mutual labels:  helm, kubernetes-cluster
Rak8s
Stand up a Raspberry Pi based Kubernetes cluster with Ansible
Stars: ✭ 354 (+16.83%)
Mutual labels:  ansible, kubernetes-cluster
Kubeadm Ansible
Build a Kubernetes cluster using kubeadm via Ansible.
Stars: ✭ 479 (+58.09%)
Mutual labels:  ansible, kubernetes-cluster
jpetstore-kubernetes
Modernize and Extend: JPetStore on IBM Cloud Kubernetes Service
Stars: ✭ 21 (-93.07%)
Mutual labels:  helm, kubernetes-cluster
inspr
Inspr is an agnostic application mesh for simpler, faster, and securer development of distributed applications (dApps).
Stars: ✭ 49 (-83.83%)
Mutual labels:  helm, kubernetes-cluster

My home Kubernetes cluster ⛵️

... managed by Flux and serviced with RenovateBot 🤖




Discord k3s pre-commit renovate


📖  Overview

This repository is my homelab Kubernetes cluster in a declarative state. Flux2 watches my cluster folder and makes the changes to my cluster based on the YAML manifests.

Feel free to open a Github issue or join the [email protected] Discord if you have any questions.


💻  Cluster setup

My cluster is k3s provisioned overtop Ubuntu 20.10 using the Ansible galaxy role ansible-role-k3s.

See my server/ansible directory for my playbooks and roles.


🤖  Automate all the things!


⚙️  Hardware

Device Count OS Disk Size Data Disk Size Ram Purpose
Intel NUC8i3BEK 1 256GB NVMe N/A 16GB Kubernetes k3s Master
Intel NUC8i5BEH 3 120GB SSD 1TB NVMe (rook-ceph) 32GB Kubernetes k3s Workers
Intel NUC8i7BEH 2 750GB SSD 1TB NVMe (rook-ceph) 64GB Kubernetes k3s Workers
Qnap NAS (rocinante) 1 N/A 8x12TB RAID6 16GB Media and shared file storage
Synology NAS (serenity) 1 N/A 8x12TB RAID6 4GB Media and shared file storage

🌐  Networking

In my cluster I run coredns, etcd, and external-dns. External-DNS populates CoreDNS with all my ingress records and stores it in etcd. When I'm browsing any of the webapps while on my home network, the traffic is being routed internally and never makes a round trip. The way I set this up is in my router. When a DNS request is made for my domain or any of my subdomains it uses coredns as the DNS server, otherwise it uses whatever upstream DNS I provided.


🔧  Tools

Tool Purpose
direnv Set KUBECONFIG environment variable based on present working directory
git-crypt Encrypt certain files in my repository that can only be decrypted with a key on my computers
go-task Replacement for make and makefiles, who honestly likes that?
pre-commit Ensure the YAML and shell script in my repo are consistent
kubetail Tail logs in Kubernetes, also check out stern (which fork? good luck)

🤝  Thanks

A lot of inspiration for my cluster came from the people that have shared their clusters over at awesome-home-kubernetes

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].