5 ms·
How does this compare to k3s? https://rancher.com/docs/k3s/latest/en/ https://rancher.com/docs/k3s/latest/en/
by mkesper 7y ago
How does this compare to k3s? https://rancher.com/docs/k3s/latest/en/ https://rancher.com/docs/k3s/latest/en/
- sandGorgon 7y ago+1 to this. k3s is an extremely lean and simpler k8s. it is a fully certified k8s distro ..with backward compatibility code removed. perfectly fine running on rpi or production.
- raesene9 7y agok3s is usually (AFAIK) run on VMs for production purposes, rather than being used for testing, which is where kind shines. The major advantage of kind is you download a single binary, run one command and quickly have a functional, disposable cluster, anywhere that Docker runs.
- deleted 7y ago[deleted]
- darren0 7y agok3s also shines in dev/test/CI. It's smaller and spins up faster and has specific features to preload applications on startup. It's a single ~50mb binary also so it's fast to download and run in CI. Many users have moved from kind to k3s in CI because of its speed, flexibility, and simplicity.
- bndw 7y agoKind is explicitly not for production workloads[0]: Non-Goals: Being “production workload ready” - kind is meant to be used: for testing Kubernetes itself for testing against Kubernetes (EG in CI on Travis, Circle, etc.) for “local” clusters on developer machines NOT to host workloads serving user traffic etc. K3s seems happy to support production workloads. It's a single binary and gets you a cluster in one command: curl -sfL https://get.k3s.io | sh - sudo kubectl get nodes Personally, I use both Kind and k3s. Kind is great for running locally and k3s is awesome for single-node kubernetes on a vps. [0] - https://kind.sigs.k8s.io/docs/contributing/1.0-roadmap/#non-goals https://kind.sigs.k8s.io/docs/contributing/1.0-roadmap/#non-...
- lhuser123 7y agoWhat are the benefits you find in using Kubernetes for a single-node cluster on a vps?
- hn_mattfreeman 7y agoIn that scenario it's kind of like a much nicer systemd for docker containers.
- bndw 7y agoI host a few personal websites and Kubernetes allows me abstract the server setup. I don't need a highly available cluster and found k3s on a single node to be a nice replacement for manually configuring a reverse proxy, systemd services, deployment scripts, etc.
- naniwaduni 7y ago"not meant to be used" mostly just means that when something breaks, you're on your own. Which, you know, you were anyway.
- moondev 7y agoKIND uses kubeadm which is the upstream standard for bootstrapping. It also supports multi masters and even launches a haproxy load balancer for kube-apiserver! K3S uses it's own bootstrapping, as well as non upstream binaries. It also replaces etcd with it's own shim. Non-kubeadm bootstrapped clusters are snowflakes in my opinion. You will find many docs that will not work with k3s due to missing systemd. You also lose some flexibility. For example there is no way to change the container runtime cgroup driver. KIND is designed for local use on your workstation. Cluster API is the project to use for production deployments. You can drive Cluster API with KIND for testing though!
- darren0 7y agok3s has no direct relationship to systemd, I'm not sure what things not working you are referring too. k3s has full flexibility to change any k8s option or component, it merely defaults to settings to meet it's goals of being a simple, lightweight, and secure distro.
- moondev 7y ago> k3s has no direct relationship to systemd Exactly, this differs from every kubeadm bootstrapped cluster which uses systemd to run the kubelet, as well using common config locations and behavior. > k3s has full flexibility to change any k8s option or component Quick Example: How do you change the kubelet's cgroup-driver? This looks to be hard-coded into the k3s binaries. https://github.com/rancher/k3s/blob/c79743d4c3d9f2d21b352ed78a5d64e0a8e00263/pkg/daemons/agent/agent.go#L68 https://github.com/rancher/k3s/blob/c79743d4c3d9f2d21b352ed7...
- darren0 7y agoDisclaimer: k3s creator Kind is intended to be a development tool to run fully upstream clusters using kubeadm in Docker containers. k3s is a custom distro that is oriented towards lightweight environments. The scope of k3s and kind are different (distro vs tool to run k8s in docker). There is another project called k3d (https://github.com/rancher/k3d https://github.com/rancher/k3d) that more directly compares to kind. k3d will run k3s clusters in Docker. k3d creates clusters significantly faster and uses less mem/cpu resources than kind.