16 Mar 2019 by Lior Kamrat
This time, I decided to do something else. One of the perks of the new role is to be involved in incubation projects so I decided to build a “tight as possible”, highly available, multi-master Kubernetes cluster on top of Raspberry Pi.
Couple of disclaimers before I dive in:
This is definitely not a production-grade architecture and implementation so don’t be crazy using it for, well, production.
The companies which their products I will be showing in this post, did not talk to me, paid me or asked me to write a review. This is based on my own analysis and needs.
Basically, I wanted to build a portable K8s setup which I can use when testing some internal projects while leveraging ARM architecture.
It is no secret that IoT and Edge computing are hot topics these days, although Edge is a very broad concept which IMO it doesn’t end with small Raspberry Pi computer or some sensors, it is more than that and can even be a full-blown vSphere cluster. As always, It all depends on the business requirements.
Yes, I am aware of the K3s project from Rancher. I am following that project but to be honest I haven’t formalized a solid opinion on it. In the next posts, I believe I will be writing about it a bit more.
I did (and still doing) a lot of research on this topic, both from the hardware and software side. There some great posts and projects out there which I want to point out.
I wanted to build an architecture which you can just take, provide some electrical juice to and start playing. I did have a few key requirements for the hardware which I’m going to use.
I worked under the assumption that a single K8s master node is a no-go.
This had to be as plug-and-play as possible, meaning, I wanted easy access for how power gets connected.
If one Pi gets malfunctioned, I needed a way to easily replace it.
The network stack had to be compact but also managed by software. I wanted to have granular control for some more advanced use cases that might come in the future.
I didn’t want to deal with the “not enough power” situation.
I like things to stay cool.
It had to be pretty as much as possible. Functionality and portability come first but if I can make it look nice why not?!
In the next post, I will be focusing more on the hardware I selected for this project. I am still working on the software side of the house and hopefully, I will feel comfortable releasing follow-up posts soon enough.
Stay tuned for this 🙂
Comments are closed for this post.