Kubernetes on your own servers with k3s or k0s
Build a Kubernetes cluster from HyperDC servers with full root access: one node for learning and small apps, or three servers with embedded etcd for high availability. k3s and k0s are certified, lightweight distributions that install from a single binary, preinstalled as an app option or with our guide.
- k3s or k0s: certified Kubernetes from a single binary
- One node to start, three servers for high availability
- Ingress, DNS and storage included with k3s
- Mix VPS, VDS and dedicated servers as nodes
- StackThe versions follow upstream Kubernetes; both distributions also maintain the older supported minor versions.
- k3s 1.37 or k0s 1.36, containerd
- Default portsk3s also uses 10250 for the kubelet, UDP 8472 for Flannel VXLAN between nodes and 2379–2380 for embedded etcd. Open them only between your nodes.
- 6443 (Kubernetes API)
- MinimumOfficial minimums: k3s agent 1 vCPU and 512 MB; k0s controller 1 vCPU and 1 GB. Your workloads come on top.
- k3s server: 2 vCPU, 2 GB RAM
- Your data
- etcd or SQLite, persistent volumes
- Official docs
- docs.k3s.io · docs.k0sproject.io
Included with k3s
- containerd
- Flannel
- CoreDNS
- Traefik
- ServiceLB
- Local-path-provisioner
- Helm
- Embedded etcd
Facts from the project’s official website, documentation and repository, checked in October 2026.
Plans are being prepared
We are preparing ready-to-use plans for Kubernetes. Tell us how you will use it and how many users you expect, and we will reply with a server that fits. You can also start today on a Linux VPS and install it with our guide.
Which server size fits?
Starting points for vCPU, memory and disk. Grow the server when your data and users grow.
| Feature |
Single node
Learning, labs and small apps
|
Recommended Small cluster
One server and two agents
|
High availability
Three servers with embedded etcd
|
|---|---|---|---|
| Nodes | 1 | 3 | 3 servers + agents |
| vCPUPer node. | 2 | 2–4 | 4 |
| MemoryPer node; the cluster itself and your pods. | 4 GB | 4–8 GB | 8 GB |
| DiskPer node; images, etcd and local volumes. | 40 GB | 40–80 GB | 80 GB |
| Server type | Linux VPS | VPS or VDS | VDS or dedicated |
-
Single node
Learning, labs and small apps
- Nodes
- 1
- vCPUPer node.
- 2
- MemoryPer node; the cluster itself and your pods.
- 4 GB
- DiskPer node; images, etcd and local volumes.
- 40 GB
- Server type
- Linux VPS
-
Recommended
Small cluster
One server and two agents
- Nodes
- 3
- vCPUPer node.
- 2–4
- MemoryPer node; the cluster itself and your pods.
- 4–8 GB
- DiskPer node; images, etcd and local volumes.
- 40–80 GB
- Server type
- VPS or VDS
-
High availability
Three servers with embedded etcd
- Nodes
- 3 servers + agents
- vCPUPer node.
- 4
- MemoryPer node; the cluster itself and your pods.
- 8 GB
- DiskPer node; images, etcd and local volumes.
- 80 GB
- Server type
- VDS or dedicated
Official minimums: k3s server 2 CPU cores and 2 GB RAM, agent 1 core and 512 MB; k0s controller 1 GB. The values above leave room for your workloads. High availability with embedded etcd needs an odd number of servers, at least three.
Why run Kubernetes on HyperDC servers
Lightweight distributions keep the cluster small, so more of each server goes to your apps.
k3s or k0s
k3s bundles Traefik ingress, a service load balancer and local storage; k0s keeps the host clean with a single binary and lets you pick the network plugin.
High availability
Three server nodes with embedded etcd keep the control plane running when one of them fails.
Open only what nodes need
Expose the API on 6443 to your own addresses and keep VXLAN, kubelet and etcd ports between nodes; never publish the VXLAN port to the internet.
Full root access
Install what the app needs, change any setting and run more services next to it. Nothing is locked behind a panel.
App option or step-by-step guide
Order the server with the app installed as an option, or set it up yourself on a clean Linux server with our guide.
Near your users
Choose a data center in the United States, Europe or Asia. The order form estimates the latency from where you are to each location.
Grow without starting over
Start on a VPS, then move to a bigger plan, a VDS with NVMe storage or a dedicated server when the workload grows.
From order to first login
Order the app preinstalled on your server, or install it yourself with our guide.
-
Pick your nodes
Start with one server, or order three in the same location for high availability, plus agents for your workloads.
-
Add k3s
Select k3s as an app option when you order, or install it on a clean Ubuntu or Debian server with our guide.
-
Join the other nodes
Join servers and agents with the cluster token, then copy the kubeconfig to your computer and run kubectl get nodes.
-
Deploy with Helm or manifests
Install your apps with Helm charts or manifests and publish them through the Traefik ingress with a TLS certificate.
Step-by-step setup guides
Install, secure and update the app with our guides, written for current Ubuntu and Debian releases.
-
How to install K3s on Ubuntu: single-node Kubernetes with Traefik and HTTPS
Set up a single-node K3s Kubernetes cluster on Ubuntu LTS, open only the ports it needs, expose a test app through the bundled Traefik ingress with cert-manager TLS, and learn backups and upgrades.
45 min Intermediate
Related solutions
Frequently asked questions
What is the difference between k3s and k0s?
Both are certified Kubernetes distributions in a single binary. k3s comes with batteries included: Traefik ingress, ServiceLB, local-path storage, Flannel and CoreDNS. k0s installs a minimal control plane with containerd and lets you choose kube-router or Calico. Pick k3s for a quick, complete cluster and k0s for a clean, configurable base.
Can I run Kubernetes on a single VPS?
Yes. A single k3s or k0s node runs the control plane and your pods on one server, which is ideal for learning, staging and small apps. The k3s documentation asks for at least 2 CPU cores and 2 GB of RAM for a server node; plan 4 GB so your workloads have room.
How many servers do I need for high availability?
With embedded etcd you need an odd number of server nodes so etcd keeps a quorum, which means at least three. Agents for your workloads can be added on top, and all nodes should be in the same location for low latency between them.
Which ports do I have to open?
For k3s: TCP 6443 for the API and agent connections, TCP 10250 for the kubelet, UDP 8472 for Flannel VXLAN and TCP 2379–2380 between servers with embedded etcd. Limit them to your nodes and your own addresses; the k3s docs recommend turning off ufw on Ubuntu or adding rules for these ports and the pod and service networks.
How do I expose apps to the internet?
k3s ships with the Traefik ingress controller and ServiceLB, which listen on ports 80 and 443 of your nodes. Point your domain at a node, create an Ingress for your app and add certificates with cert-manager or Traefik’s Let’s Encrypt support.
Where is persistent data stored?
k3s includes the local-path provisioner, which keeps volumes on the disk of the node that runs the pod. That is simple and fast but tied to one node, so back up volumes and databases; for storage that follows pods across nodes, install a distributed storage system such as Longhorn.
Do I need nested virtualization for Kubernetes?
No. Kubernetes runs containers, which work on any KVM VPS. You only need nested virtualization, available on our VDS and nested dedicated servers, if you also want to run virtual machines inside the cluster.
Can I upgrade Kubernetes later?
Yes. Both projects release patch versions for several Kubernetes minor versions. Upgrade one minor version at a time, servers first and agents after, and take an etcd snapshot before you start.
Planning a cluster?
Tell us how many nodes you need and what will run on them, and we will suggest servers for each role.