Live data from Hacker News

MicroK8s – Low-ops, minimal Kubernetes, for cloud, clusters, Edge and IoT

microk8s.io

71–80 of 138 posts

Re: MicroK8s – Low-ops, minimal Kubernetes, for cloud, clusters, Edge and IoT

#71
TBH, I am not that a big fan of microk8s. I have it deployed on VPS and it's far from stable.

The server itself, is, probably, overprovision, but I still struggle with responsiveness, logging, and ingress/service management. What's also funny, that using the Ubuntu's ufw service is not that seamless together with microk8s.

I am think of moving now to k3s. The only thing that's holding me back is that k3s doesn't use nginx for ingress so I'll need to change some configs.

Also, the local storage options are not that clear.

Re: MicroK8s – Low-ops, minimal Kubernetes, for cloud, clusters, Edge and IoT

#72

Plain k8s has a fearsome reputation as being complex to deploy, which I don't think is quite deserved. It isn't totally straightforward, but the documentation does tend to make it sound a bit worse than it actually is. I run a couple of small clusters and my Ansible script for installing them is pretty much: * Set up the base system. Set up firewall. Add k8s repo. Keep back kubelet & kubeadm. * Install and configure…

I remember about 5 years ago I tried to deploy it on CoreOS using the available documentation and literally couldn't get it working. I haven't done a manual deployment since. I hope it got significantly better and I may be an idiot but the reputation isn't fully undeserved. The problem back then was also that this was usually the first thing you had to do to try it out. Doing a complicated deployment without knowing…

I run kubernetes on a home server, but it took me a couple weeks of testing and trial and error to arrive at a setup I was happy with, and I already had experience of K8S in the cloud. At the time I was stuck without a work laptop, so had time to self-educate, but normally I wouldnt have that kind of time to sink in.

Re: MicroK8s – Low-ops, minimal Kubernetes, for cloud, clusters, Edge and IoT

#73
post #2

How does it compare against minikube? Seems to be based on Snaps vs minikube's VM-based approach. Any other major pros/cons?

From my experience of using microk8s for mostly offline development and trying minikube once: Microk8s pros: - bind-mount support => it is possible to mount a project including its node_modules and work on it from the host while it hot-reloads in the pod. - The addons for dns, registry, istio, and metallb just work . - Feels more snappy than minikube. Microk8s cons: - Distributed exclusively via snap => can't be easi…

microk8s also makes it super easy to have a multi-node cluster, even with HA.

Re: MicroK8s – Low-ops, minimal Kubernetes, for cloud, clusters, Edge and IoT

#74
post #60

I tried a few incarnations of self-hosted k8s a few years ago, and the biggest problem I had was persistent storage. If you are using a cloud service they will integrate k8s into whatever persistent storage they offer, but if you are self-hosting you are left on your own, it seems most people end up using something like nfs or hostPath - but that ends up being a single point of failure. Have there been any developmen…

I've had good experiences using the Rook operator for creating a CephFS cluster. I know that you can run it on k3s, but I don't know whether RaspberryPi nodes are sufficient. Maybe the high RAM Raspi 4 ones.

I've had good experiences with Rook on k3s in production. Not on raspis though.

Re: MicroK8s – Low-ops, minimal Kubernetes, for cloud, clusters, Edge and IoT

#75
post #8

Earlier quoted context omitted.

Do you mean connectivity to the outside, or inside the cluster? The examples of Kubernetes and similar things in such scenarios I've seen usually had stable connectivity between nodes. E.g. an edge scenario would be one tiny well-connected cluster per location, remote-controlled over the (bad) external link through the API.

I meant intra-cluster communication between nodes, when some nodes are on the Edge, some are inside the datacenter. The Edge may have pretty good overall connection to DC, but have to work with intermittent connectivity problems like dropping packets for several minutes, etc., without going crazy.

EdgeDC "dropping packets for several minutes"?

Where have you been suffering from this?

Re: MicroK8s – Low-ops, minimal Kubernetes, for cloud, clusters, Edge and IoT

#76
post #63
post #60

I tried a few incarnations of self-hosted k8s a few years ago, and the biggest problem I had was persistent storage. If you are using a cloud service they will integrate k8s into whatever persistent storage they offer, but if you are self-hosting you are left on your own, it seems most people end up using something like nfs or hostPath - but that ends up being a single point of failure. Have there been any developmen…

I guess easiest would be Longhorn on top of k3s

I've found Ceph is more tolerant to failures and staying available. Longhorn was certainly easier to setup and has lower operating requirements, but we encountered outages.

Re: MicroK8s – Low-ops, minimal Kubernetes, for cloud, clusters, Edge and IoT

#77

Earlier quoted context omitted.

I meant intra-cluster communication between nodes, when some nodes are on the Edge, some are inside the datacenter. The Edge may have pretty good overall connection to DC, but have to work with intermittent connectivity problems like dropping packets for several minutes, etc., without going crazy.

Edge DC "dropping packets for several minutes"? Where have you been suffering from this?

Real case - shops have "terminals" installed on site, various physical locations. Some of them have networking glitches 1-2 times a month on average, usually lasting a couple of minutes.

I don't want to have to restart the whole thing on each site every time it happens. I'd like a deployment/orchestration system that can work in such scenarios, showing a node as unreachable but then back online when it gets network back.

Re: MicroK8s – Low-ops, minimal Kubernetes, for cloud, clusters, Edge and IoT

#78

Deploying k8s has gotten a lot easier these days -- some alternatives in this space: - https://docs.k0sproject.io ( https://github.com/k0sproject/k0s ) - https://k3s.io ( https://github.com/k3s-io/k3s/ ) k0s is my personal favorite and what I run, the decisions they have made align very well with how I want to run my clusters versus k3s which is similar but slightly different. Of course you also can't go wrong with k…

Is developing locally with one of these k8s implementations a good option? My current workflow is to develop locally with a combination of bare (non-containerized) servers and Docker containers, but all of my deployment is to a hosted k8s cluster.

If developing locally with k8s would likely be a better workflow, are any of these options better than the others for that?

Re: MicroK8s – Low-ops, minimal Kubernetes, for cloud, clusters, Edge and IoT

#79
post #2

How does it compare against minikube? Seems to be based on Snaps vs minikube's VM-based approach. Any other major pros/cons?

I used Minikube constantly for development. The best way to run it is directly on Linux, in which case it does not require a VM and is very stable. VMs on the other hand seem to cause a lot of problems--it's not especially stable on Mac OS and does not seem to survive reboots very well. (YMMV.)
Post reply on HN