{"id":566,"date":"2018-04-02T07:26:52","date_gmt":"2018-04-02T15:26:52","guid":{"rendered":"http:\/\/andrewwippler.com\/?p=566"},"modified":"2022-12-15T16:03:40","modified_gmt":"2022-12-15T14:03:40","slug":"home-kubernetes-cluster","status":"publish","type":"post","link":"https:\/\/andrewwippler.com\/2018\/04\/02\/home-kubernetes-cluster\/","title":{"rendered":"Home Kubernetes cluster"},"content":{"rendered":"\n

So I admit it – I am completely obsessed with Kubernetes. All of the web app\/api deployment challenges in the past 20 years have been somewhat solved with the Kubernetes orchestration and scheduling platform. Kubernetes brings fault-tolerance, and Highly available systems if set up correctly (i.e. use a Kubernetes cloud installer). I enjoy having the power to write yaml and apply it to infrastructure and it eventually becomes what I told it to be. No longer do I need to write the scripts to do it – it does it for me \ud83d\ude42<\/p>\n\n\n\n

In my first kubernetes home cluster, I re-used my home router and my old media center as a single node + master, but I was hit by a 2 year old Kubernetes bug. It appears my old PC was out in the open. Since my 2 year old son likes to press power buttons, he came over and constantly pressed the power button on my Kubernetes master. This caused me to find a small mini computer that I could place in my cabinet out of view. I finally settled on this as my computer of choice<\/a>. At $150\/each for 4 cores, 4GB RAM, and 32GB nve, I thought it was a good deal and ample to run a few containers per node with a nfs-backed storage array.<\/p>\n\n\n\n

These little machines booted via UEFI pxe (after pressing DEL<\/kbd> for bios and selecting the Realtek boot in the save\/exit page). I used this kickstart file which installed CentOS 7 minimal by passing in the ks<\/code> argument to a CentOS initramfs: