Re:The Cult of Kubernetes
by wepower_ico on Monday September 09, 2019 @04:03AM
(#20916097)
I am one of these guys who is using K8S at home. The reason is a unified platform for work and home environment.
[ Parent
| on HN ]
What's the cheapest you can run a k8s cluster in the cloud? I've been looking to spin one up in AWS, but it looks remarkably expensive for running personal projects.
Re:The Cult of Kubernetes
by bryanlarsen on Monday September 09, 2019 @06:17AM
(#20916790)
If you go with a provider that provides the control plane for free, which is the way Google Cloud and Digital Ocean do it (and probably many others), a single node cluster is actually a valid cluster. It won't have redundancy / High Availability which is Kubernetes' raison d'être, but it works well. If so, Kubernetes is no more expensive than non-Kubernetes. In the case of Digital Ocean, $10/month.
I‘m running at three node Kubernetes cluster for less than $10 a month using this guide: https://github.com/hobby-kube/guide
Disclaimer: I‘m the author.
Re:The Cult of Kubernetes
by cooljacob204 on Monday September 09, 2019 @09:12AM
(#20917775)
Damn, wish I found this before I spent days stumbling through my first Kubernetes set up.
Ignorant HA requirements, will this work fine with a single beefy node in home network or would I be better off running multiple vms on that single server which then run separate Kubernetes nodes?
Re:The Cult of Kubernetes
by dangerbird2 on Monday September 09, 2019 @08:45AM
(#20917578)
You can get a single-node k8s cluster running super easily with [Minikube](https://github.com/kubernetes/minikube). The more recent Docker for windows/mac actually comes with a kubernetes distro that piggybacks off the docker vm.
If we're talking managed, DigitalOcean maybe? (The master server part is free, you pay for compute etc of the nodes)
You could possibly do it cheaper on AWS with RI discounts, but you'd have to setup the cluster yourself to avoid the ~$140/mo fee.
Re:The Cult of Kubernetes
by goatinaboat on Monday September 09, 2019 @04:41AM
(#20916270)
Consider just running Minikube on your laptop. It’s pretty realistic and won’t cost you a penny. Except maybe in electricity, it seems to consume an enormous wattage just to exist...
Re:The Cult of Kubernetes
by bryanlarsen on Monday September 09, 2019 @06:18AM
(#20916799)
minikube --vm-driver=none consumes a lot less resources, and k3s even fewer.
K3s is fantastic. Lately I've been using K3d (which is the same thing, just in a docker container - much like Kind) It's super easy to spin up a cluster, and spin it back down with nothing really to clean up.
Re:The Cult of Kubernetes
by goatinaboat on Monday September 09, 2019 @06:28AM
(#20916853)
I’m using Hyper-V at the moment, I’ll check out your suggestions - thanks
Re:The Cult of Kubernetes
by bryanlarsen on Monday September 09, 2019 @06:31AM
(#20916869)
I’m building a startup that provides hosted, shared Kubernetes clusters starting for 0$/month. https://kubesail.com - I agree with everyone on this thread that using k8s for a blog is like building your own house from scratch - but the analogy breaks down when everything underneath the Kube api is managed and setup for you - at that point is just becomes a standard, open cloud API :)
3 node k3s cluster on hetzner cloud for about 10€/month
And easily provisioned with https://github.com/xetys/hetzner-kube (not affiliated, but I tried it out once and found the deployment to work smoothly)
My cluster is at $30 a month, which is slightly more than my dokku server; but I get so much more out of it that I think it's worth it.
I'm not very familiar with kubernetes, what do you get out of it that you don't with dokku? I really like dokku and use it on my personal server for all my half-baked personal projects.
Mostly automatic DNS management and it being more easy to use more than one machine for things.
If you just/first want to practice actual, multi-node k8s on your local Mac (or Windows), I've just completed this: https://github.com/youurayy/hyperctl
Cheapest would probably be somewhere around 10$.
Three VPS with 4GB ram somewhere.
Im running mine with three VPS and 8GB ram. Just for personal services and learning/fucking around purposes.
I run a very small GKE cluster with two 1vCPU preemptible nodes. Costs me a few bucks per month.
I was thinking of doing the same thing. How much in average do you pay per month?
Re:The Cult of Kubernetes
by james_s_tayler on Monday September 09, 2019 @05:49AM
(#20916661)
I thought GKE the control nodes are free but but on EKS you pay heaps for them.
Re:The Cult of Kubernetes
by deforciant on Monday September 09, 2019 @05:25AM
(#20916535)
Same here, I run K8s both locally and on GKE for a project. My GKE cluster is just 2 nodes that have 2vCPU & 3.75GB RAM each. Performance is great and it has saved me an insane amount of time. I have also created an open source project that does one thing - updates your deployments :) https://keel.sh. Previously I tried several different hosting options but nothing is easier/more convenient than k8s for me.
Thanks a lot ! Keel looks exactly like something I would need!
How do you expose your services via an ingress when it needs to be behind a nat (via your home router/gateway)? Thanks!
Re:The Cult of Kubernetes
by deforciant on Monday September 09, 2019 @05:22AM
(#20916510)
Hi, my shameless plug (I am the creator of webhookrelay): https://webhookrelay.com/v1/guide/ingress-controller, using it both for services that are running in GKE and on minikube locally. It's cheaper than allocating a LB IP for backing services that don't get much traffic like Grafana and similar things.
One possibility (especially for "home Kubernetes" case) is not exposing the services to the outside world at all and using ZeroTier to access them https://www.zerotier.com/
It's L2 mesh VPN, and I believe you can even use MetalLB with it with some minor trickery.
You can, of course, set up WireGuard or OpenVPN for yourself, too, but from my experience zt is the simplest for accessing the boxes behind NAT as you don't even need to set up any servers with real IPs.
DNAT. You map one/more ports from your router exposed on internet to ip:port of the local app.
However, http/https ports are already used on routers to offer an admin web GUI. It’s technically possible to circumvent this with some ad-hoc firewall rules, but it depends if the router admin UI let’s you do that.
> However, http/https ports are already used on routers to offer an admin web GUI.
not on the wan side I'd hope
Exactly, they aren’t exposed outside. That’s why you can “potentially” add rules to route request from the outside to an internal host:port, even 80/143. On the LAN you would still able to connect to router admin.
Re:The Cult of Kubernetes
by wepower_ico on Monday September 09, 2019 @04:13AM
(#20916144)
Using NodePort and Traefik ingress controller.
thanks!
Re:The Cult of Kubernetes
by bryanlarsen on Monday September 09, 2019 @06:20AM
(#20916812)
You don't necessarily need an ingress, NodePort may be sufficient to expose a service.
Assuming you are running on physical hardware how are you managing storage? I've tried Rook but it seems somewhat buggy and overkill for my requirements (rsync would do).
I'm using K8S (with rancher's k3s) at home too ! My main reason is portability. When I need to unplug one of the Raspberries or move all services to somewhere else, I only need to change the storage layer.
So you're running bare metal k8s at home? What do you use for storage? That's my biggest question in how to move frok minikube at home to a true cluster.
Raid 1, 4tb, NAS with NFS :)
Thanks! That should be enough to get me going in the right direction, hopefully to a working setup :)
Do youbuse minikube at home? If it's a real cluster, I'd like to ask what you do for storage. I currently run minkube but would love to move to a real cluster setup.