Proxmox

My NEW Kubernetes setup on Raspberry Pi



Learn more about Kestra and their latest v0.18.0 release, which includes a super-simple way to deploy Kubernetes jobs via task runners:

In this video, I’ll show you my brand-new Raspberry Pi Kubernetes Cluster for my HomeLab. This is my first cluster not running on virtual machines, instead, I’ve installed it on three Raspberry Pis mounted in my Server Rack. I’ll walk you through the setup, including using the k3sup tool and the kube-vip load-balancer, so you can build your own Raspberry Pi Kubernetes cluster.

References

Racknex Case:
Old k3s tutorial:
Kestra Tutorial:
Kestra + Ansible + Terraform:

________________

💜 Support me and become a Fan!

💬 Join our Community!

👉 Follow me everywhere

________________

Read my Tech Documentation

My Gear and Equipment

________________

Timestamps:

00:00 Introduction
01:19 What was the plan?
07:01 Hardware List
12:48 Mounting the RPi Cluster
18:18 Provision the RPi
20:44 Installing k3s
28:21 Use kube-vip as ServiceLB
30:58 Final thoughts

________________
Links can include affiliate links.

[ad_2]

source

Related Articles

23 Comments

  1. Hi Christian, any chance of doing an install howto for teleport (community edition) for a homelab, I feel this is more advanced than I would like, thank you, love your videos very insightful

  2. Hey Cristian, great video! Wanted to try out Kubernetes myself but never really get the hang on it but I am eager to try it out with mini PCs I have lying around. 😀
    One side question, which is not dedicated to the video itself: In some other videos you uploaded, I saw a metal plate you screwed on the wall and hung your (for example) Zima Board onto it – I never found such a metal plate; what's this thing called, where did you get it? You did not mention it anywhere on your Kit page, either.

    Keep up the great work, you helped me and my projects many times!

    Best.

  3. well I got my VIP working for the API, though trying to get KubeVip working for load balancing is a little odd. It seems to work as I walk though the steps nothing throws an error. However as I test nginx I don't get a single IP in the range I specified in kupevip, rather it gets a bunch of its but all of them are node ips.

  4. Very nice. I like the idea and simplicity of building your cluster on bare metal. Feels more approachable then starting with a hypervisor. I hope you take the same approach with storage and keep the cluster completely self-contained so you could take that RackNex unit with you and have a portable cluster. Are you looking at file systems like Gluster or Ceph?

  5. wow, that's really good raspberry pi setup on steroids! Compared to my cluster your's is super awesome! I own 4 raspberry pi's on my cluster, but they are 4'th gen version. I'm using uctronics rackmount for raspberry pi. It was only reasonable rack solution at that time 😉 Every node is installed on SD 64GB cards. I've built it 2 or 3 years ago. What i can share with you Christian, consider adding one or two amd64 vm's to this cluster. Not every app is working well on arm. Kubernetes with proper nodeSelector configuration will do the job, when you'll encounter some problems with ARM architecture 😉

    Many thanks for tip with kube-vip solution. It's one of the crucial missing pieces in my homelab setup.

  6. This is nice but unfortunately some images do not run on the raspi architecture. I do not remember by hard which was it in my case exactle I believe timescaleDB.

  7. Thank Lempa for putting so much effort into creating and sharing this video with everyone. This video provides a wealth of information for Raspberry Pi cluster project users and offers strong support for Waveshare POE HAT customers in their practical applications. I believe Waveshare should sponsor you with free products. If you have any ideas about incorporating other new Waveshare products in your future videos, I will certainly provide you with the greatest support!

  8. I would be interested in IPv6 Dual Stack and how to expose a service using IPv6 Loadbalancer. Can kube-vip do that? Not sure if it is a Talos problem, but I failed to get IPv6 communication between nodes working using ULAs. I used the default Flannel CNI.

  9. I think that you don't need to use kube-vip if you have opted for the cilium cni instead of flannel, since that is quite rich in feature when it comes to l2, service mesh, kube-proxy replacement and more. Maybe perfect for a follow up video to make that switch ^_^ other than that thanks, a great video as usual!

  10. Thank you for your sharing. You are using our 52pi N04 expansion board, your idea is fantastic. I also want to try to build a similar environment on our Rack mate T1 and give K8S a try, it looks very promising! You are absolutely right, everyone should learn Linux!

  11. Great video, i installed my cluster without kube vip because i was installing it via my own install script instead of k3sup and it wasnt easy, will need to give this a shot

  12. Trying to find with kube-vip can/does it do any kind of health checks of the endpoints? For example, with keepalived and haproxy (or nginx as a load balancer) and configure health checks to know if x failures occur remove the load from the lb unless y successes occur? From what I've seen so far with kube-vip that if say the k3s on a master died but is still on, would the request then just fail if that node has the vip? or would it move to another node? or if the vip is on node2, but k3s svc on node1 is dead would traffic get sent there?

  13. only .kube/config was updated on your workstation/laptop
    but not only your kubectl communicate with kube api, another nodes also communicate with kube api, what still on all another confs ip of first node.
    27:09 you add second node using ip of first node, not vip
    I bet, if you turnoff first node, you will got problems with your cluster

  14. This is short story how to start with tiny pi and convert it into big and expensive, problematic build still limited to just 1Gbit :/
    You are able to stick 16x pi on 2u case. You could use RK3588 alternatives to get about 2x more cpu power, 2.5x faster ethernet as well as 4x faster nvme (or 10Gbit ethernet) and up to 4x more RAM. Same with any n100 board.
    This is expensive lesson. Raspberry lost its fame for beeing affordable and powerfull choice. Have You mentioned final price for unit/whole build? Have You measured power consumption for all units on idle and full load?

  15. It's pretty cool, but what do you use for persistent data storage? Longhorn or NFS. I find that the storage part is too often set aside when this is the most important thing. The distributed storage is top, except that on raspberry with a single ethernet it is normally not enough. So I wouldn't be interested to know what you're putting in place

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button