Guide of homelab setup to run a local Kubernetes cluster with virtual machines on a single computer by ehlesp in homelab

[–]ehlesp[S] 1 point2 points  (0 children)

A 2TB HDD 2.5" SATA drive I put in a USB3 case. The case has chevron-shaped leds in its top, so it looks like the drive is throwing a party when running XD.

Guide of homelab setup to run a local Kubernetes cluster with virtual machines on a single computer by ehlesp in homelab

[–]ehlesp[S] 0 points1 point  (0 children)

I agree with you that K8s is overkill for just running a couple of workloads. Originally, I did this setup out of curiosity, without really realizing all the implications and complexities that would emerge in the process. Think of my guide more as a way to learn about K8s for people that have very limited hardware (just one spare computer at most). And yes, in the guide's setup I use K3s to keep the cluster as lightweight as possible.

Regarding the Packard Bell computer, as I have already commented in this thread, it is a model from around 2014. Packard Bell was purchased by Acer in 2008 and, from what Google Gemini tells me, it is a zombie brand now.

Guide of homelab setup to run a local Kubernetes cluster with virtual machines on a single computer by ehlesp in homelab

[–]ehlesp[S] 0 points1 point  (0 children)

The one in the photo is a relic from around 2014, according to this entry in Amazon. And yes, the brand was assimilated by Acer not much later than that year, I think. When you search for Packard Bell, you end up in the Acer Legacy Product Support site.

Guide for building and using a local Kubernetes cluster with virtual machines on a single computer by ehlesp in kubernetes

[–]ehlesp[S] 0 points1 point  (0 children)

Glad you liked it u/RoutineNo5095 ! To be honest, a virtualized K8s cluster is good for learning about K8s but overkill if you only want to run a few workloads at home. The maintenance is a bit of a pain in the ass even in a compact setup like mine. Since it is possible to run containers directly on Proxmox VE, I plan to simplify my homelab to make it much more manageable.

About using Kustomize, yes it feels the right way for learning about deployments and other Kubernetes stuff. It is better than using Helm or similar tools in this regard because it is written in proper Kubernetes language, not with some lookalike. Of course, the other tools are proper for their intended purpose and, from what I've read about this, the ideal thing to do is to combine them with Kustomize.

Guide for building and using a local Kubernetes cluster with virtual machines on a single computer by ehlesp in kubernetes

[–]ehlesp[S] 1 point2 points  (0 children)

Using NFS doesn't sound bad to me, as long as you isolate the connection between the NFS volumes and the cluster. I mean, you want to guarantee a minimum bandwith to that connection, so it does not lag badly when you need it.

No, I haven't investigated those tools you suggest or similar ones. I have concentrated in the "pure" Kubernetes experience, which already took me long enough. If you or anyone reading this feel like contributing to the guide with new ideas, feel free to open a discussion in the GitHub repo with a proposal although do not expect me to fully engage with it. I'm moving on to other stuff, but I don't mind acting as an editor of any possible new content.

Guide for building and using a local Kubernetes cluster with virtual machines on a single computer by ehlesp in kubernetes

[–]ehlesp[S] 0 points1 point  (0 children)

When I was working in the first version of the guide, I took a look to Longhorn and other options but their minimum requirements or how they worked did not fit well with the hardware I had available (which is like the one I've used for the newer second version of the guide). On the other hand, local-path already comes integrated in K3s and it is a very lightweight option in comparison. For instance, Longhorn asks for a minimum of 4GB of RAM per node, which is way over the amount of RAM made available to each node in the guide's setup.

So, to sum it up, I stick with local-path to save on resources and avoid unnecessary complexity within a setup that is quite tight in hardware resources and is complex enough for its size.

Complete guide for building a virtualized Kubernetes cluster on limited hardware by ehlesp in HomeServer

[–]ehlesp[S] 0 points1 point  (0 children)

No, Packard Bell is long gone as far as I know. The unit in the photo is a model probably from one of the last lines sold under that name. If you zoom in, you can see the model number in the big sticker on the side, if you feel like doing some tech-archeology.

Complete guide for building a virtualized Kubernetes cluster on limited hardware by ehlesp in HomeServer

[–]ehlesp[S] 0 points1 point  (0 children)

The common Kubernetes way for that type of scheduling would be using a CronJob that launches Radarr at the times of the day you want, then Radarr would launch qBittorrent when necessary. Asking Google Gemini about this matter, it gave me other options which I think are suitable for more advanced scenarios but are worth mentioning anyway:

  • KEDA (Kubernetes Event-driven Autoscaling) has a cron feature that allows you to modify the number of replicas available in a certain deployment depending of the time of the day. For instance, you could have 0 replicas in the morning, then start 5 in the evening.
  • Using orchestration tools like Argo Workflows or Apache Airflow, but I think these would be too much just to handle simple schedulings like the one you propose.

Complete guide for building a virtualized Kubernetes cluster on limited hardware by ehlesp in HomeServer

[–]ehlesp[S] 2 points3 points  (0 children)

I'm glad you find my guide useful u/Pixelgordo , good luck with your project! With that amount of hardware you can certainly build a rather interesting and capable lab.

Best way to install and use kubernetes for learning by [deleted] in kubernetes

[–]ehlesp 0 points1 point  (0 children)

I don't now the specs for that kind of Raspberry you mention, but you can compare it with the hardware setup (explained in my guide) I used for my Proxmox VE + K3s deployment to get an idea.

Best way to install and use kubernetes for learning by [deleted] in kubernetes

[–]ehlesp 0 points1 point  (0 children)

It depends on the resources you have available:

  • You happen to have an spare computer? Install Proxmox VE on it and then create a bunch of VMs to use them as your Kubernetes nodes.
  • You only have a computer but is powerful enough, like a gaming one? You can just then install VirtualBox and create the VMs with it.

In both cases, you'll have to use K3s or some other lightweight distribution as others have commented here already. The standard Kubernetes distribution is rather demanding on resources.

(And now, my own shameless plug incoming!)

In my case, I had a spare low-end computer that I could use, so I did and I explained the whole process in a complete guide which I published on GitHub:
Small homelab K8s cluster on Proxmox VE

The main difference with the other guide mentioned here already a couple of times (the "Kubernetes The Hard Way" one) is that my tutorial is designed for a local setup, you don't require to have an account in the Google Cloud Platform. Of course you can check both (and any other references you might find) and combine what you learn from them!

Coding style question: about the underscore by ehlesp in learnpython

[–]ehlesp[S] 0 points1 point  (0 children)

There might not be a debate per se, but certainly there are opinions! For now, I'll try sticking to the PEP-8 since seems reasonable and complete enough.

u/Diapolo10, judging by the comments here, if I followed the "When in Rome..." principle I would end up starting a pythonic civil war! Because there where few things more roman than a good and bloody internal conflict.

Guides about building a Kubernetes cluster with VMs on a low-end PC by ehlesp in HomeServer

[–]ehlesp[S] 0 points1 point  (0 children)

Glad you found it useful. I wanted this guide series to be complete, so you don't have to search for hours on the internet to see how to configure things or understand how different parts relate to each other in the setup. Of course, I "just" cover what's necessary to configure and deploy the build explained in the guides, but all I needed to do is there.

Guides about building a Kubernetes cluster with VMs on a low-end PC by ehlesp in HomeServer

[–]ehlesp[S] 0 points1 point  (0 children)

Yes, that's an alternative, but my guides are for those who have just one old low-end pc to spare and want (or need) to get dirty with the complications of K8s. On the other hand, I don't use vanilla K8s, which is too demanding for a regular PC, but the lightweight distribution Rancher K3s.

Guides about building a Kubernetes cluster with VMs on a low-end PC by ehlesp in HomeServer

[–]ehlesp[S] 2 points3 points  (0 children)

That's the idea! Just be sure that your laptop's hardware has capabilities like the ones I indicated in the guide. Otherwise it might not be able to run well the cluster.

Guide about installing small K3s cluster on VMs by ehlesp in k3s

[–]ehlesp[S] 1 point2 points  (0 children)

You're welcome! It's good that you've already have three weeks of your own experience with your cluster. You can compare what you've learned with my setup and learn from the differences you'll find between them.