Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan NowHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
VGSources
Blog

How to Set Up a Multi-Node Rancher Kubernetes Deployment on VPS Servers

A production Rancher VPS deployment needs three RKE2 server nodes, a load balancer, DNS, carefully scoped firewall rules, TLS, and tested etcd recovery. This step-by-step guide covers the complete setup.
Length11 min Posted Quest giverVGSources Team
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a production Rancher installation on VPS servers, build a dedicated three-node RKE2 server cluster, place a load balancer in front of it, point a DNS name at that balancer, and expose Rancher through HTTPS. A single VPS can demonstrate Rancher, but it cannot provide the quorum and failure tolerance expected of a highly available management plane.

This guide walks through the topology, VPS sizing, firewall rules, RKE2 join process, Helm installation, TLS, validation, and the operational work that makes the deployment maintainable.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What the finished deployment looks like

The management cluster consists of three Linux VPS instances running RKE2 server nodes. RKE2 uses embedded etcd for this topology, so the three servers form the Kubernetes control plane and etcd quorum. A load balancer gives the cluster a stable registration and API address, while a DNS record gives administrators a stable Rancher hostname.

Rancher’s high-availability RKE2 infrastructure guidance calls for three Linux nodes, a load balancer, and DNS mapped to that load balancer. Use one provider region for low latency between etcd members; when the provider supports availability zones, spreading the three nodes across zones reduces the impact of a single-zone outage.

#1 Best Overall
  • Three VPS servers: unique hostnames, stable private or reserved addresses, and SSD-backed storage.
  • Load balancer: listeners for RKE2 registration on TCP 9345 and the Kubernetes API on TCP 6443. The Rancher HTTPS endpoint uses TCP 443.
  • DNS: a Rancher hostname such as rancher.example.com resolving to the load balancer before certificates are requested.
  • Administration workstation: curl, kubectl, and Helm, with protected access to the cluster kubeconfig.

Keep the management cluster focused on management where possible. Run application workloads in downstream clusters rather than allowing production applications to compete with Rancher and etcd for CPU, memory, disk I/O, and network capacity.

VPS requirements and capacity planning

SUSE Rancher’s installation requirements state that a highly available production setup needs at least three nodes. The published small-management-cluster baseline is 4 vCPUs and 16 GB of RAM per node (SUSE Rancher, 2025). Treat that as a starting point rather than a universal production size: the number of managed clusters, users, controllers, CRDs, monitoring components, and agents can require more capacity.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Component Baseline or requirement Why it matters
RKE2 server nodes Three Linux VPS instances; 4 vCPUs and 16 GB RAM per node is the published small-management baseline Three members provide control-plane and etcd quorum; CPU and memory absorb Rancher controllers and managed-cluster metadata
Storage SSD-backed disks Rancher performance depends heavily on etcd latency and disk I/O
Network placement Same region; separate availability zones when available Low latency helps etcd replication while zone separation limits a single-location failure
Addressing Static IPs or DHCP reservations and unique hostnames RKE2 server membership and certificates require stable node identity and reachability
Operating system A Linux distribution and release listed in the current Rancher/RKE2 support matrix Unsupported kernel, container-runtime, or firewall behavior can prevent a supported installation

Check the current support matrix before provisioning. Provider limits also matter: verify private-network bandwidth, SSD IOPS and durability, IPv4 and IPv6 behavior, snapshot APIs, object-storage integration, and whether the load balancer can preserve the listeners and health checks you need.

Design the load balancer, DNS, and certificates first

Load-balancer listeners

Use one fixed registration address for all RKE2 servers. Configure the balancer to forward TCP 9345 to every healthy server. This is the endpoint joining servers use in their server: setting. Add a TCP 6443 listener for Kubernetes API traffic and forward it to the server nodes. Expose Rancher’s user-facing ingress on TCP 443.

Use provider health checks that test the actual backend service, not merely whether a VPS responds to ping. Preserve the client protocol expected by each listener, and document whether TLS terminates at the balancer or at the Rancher ingress. For the simplest Rancher design, forward HTTPS to the ingress and let Rancher/cert-manager manage the certificate.

DNS before TLS

Create an A record (and an AAAA record only if IPv6 routing is fully tested) for the Rancher hostname, pointing to the load balancer. From an external network, confirm that the name resolves to the intended address before requesting a certificate. The name used by administrators must match the certificate and the load-balancer endpoint; changing it later requires certificate and configuration work.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Names in the RKE2 certificate

Include the fixed registration name and Rancher name in each server’s tls-san list. In the examples below, those names are rke2.example.com and rancher.example.com. Replace them with names in your own DNS zone.

Prepare the three VPS nodes

  1. Provision and identify the nodes. Create three supported Linux instances with names such as rke2-1, rke2-2, and rke2-3. Assign static addresses or provider-side DHCP reservations. Confirm forward and reverse name resolution where your operating-system and provider policies require it.
  2. Place them on a private network. Keep etcd and kubelet traffic off the public internet. If the provider has no private network, restrict those ports to the three node addresses in security groups and host firewalls.
  3. Install updates and prerequisites. Apply the provider’s supported Linux updates. Install or make available curl on every node. On the administration workstation, install kubectl and Helm using their supported release channels.
  4. Check time and identity. Ensure NTP or another time-synchronization service is functioning, hostnames are unique, and each node can resolve and reach the other two over the private network.
  5. Apply firewall policy. Start from the port matrix in Rancher’s port requirements. Allow only the addresses and directions required for your topology; do not expose etcd or the overlay network to the internet.
  6. Check the load balancer and DNS. Confirm listeners exist for 9345, 6443, and 443, backends are reachable, and the Rancher hostname resolves correctly before installing cert-manager.

Rancher’s supported Kubernetes guidance may require changes to a conflicting host firewall service. Follow the distribution-specific instructions in the current support documentation rather than blindly disabling security controls; if a host firewall must be stopped, enforce the equivalent restrictions in the provider security group and private network.

Firewall and traffic matrix

The following rules describe the traffic a typical three-server RKE2 management cluster needs. Scope internal rules to the node or cluster CIDRs. Add outbound rules for your identity provider, registries, backup target, catalog access, and any hosted or imported clusters.

Port and protocol Purpose Recommended exposure
TCP 9345 RKE2 server registration and supervisor traffic Load-balancer listener and traffic among the server nodes; restrict to cluster administration paths
TCP 6443 Kubernetes API Load-balancer listener for cluster operations; allow required node and administrator traffic
TCP 2379 etcd client traffic Only between RKE2 server nodes
TCP 2380 etcd peer replication Only between RKE2 server nodes
TCP 10250 Kubelet communication Between the RKE2 servers and agents as required by the cluster design
UDP 8472 Flannel VXLAN overlay Only when that backend is used, and never on the public internet
TCP/UDP 30000–32767 NodePort services Open only when NodePort workloads require it, preferably to known source ranges
TCP 443 Rancher UI, API, and HTTPS kubectl endpoint Public or corporate ingress as appropriate, protected by TLS and access controls

Rancher also needs outbound HTTPS for catalogs and images, and Kubernetes API reachability to hosted or imported clusters. The exact egress list depends on your authentication provider, registries, backup destination, and cloud-firewall model.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Bootstrap the first RKE2 server

Choose one node as the initial server. Generate a long, random shared token and store it in a password manager or another protected secret store. The token is equivalent to cluster bootstrap material; do not place it in tickets, public repositories, or shell history.

Create /etc/rancher/rke2/config.yaml on the first VPS:

token: my-shared-secret
tls-san:
  - rancher.example.com
  - rke2.example.com

Replace the example token and names. The tls-san values must cover the names clients use for the load balancer and Rancher endpoint. Install and start RKE2:

curl -sfL https://get.rke2.io | sh -
systemctl enable rke2-server.service
systemctl start rke2-server.service

RKE2 writes the administrative kubeconfig to /etc/rancher/rke2/rke2.yaml. Protect the file because it grants cluster administration. Copy it to the administration workstation through a secure channel, set the correct server address for your load balancer, and use the workstation’s KUBECONFIG variable rather than emailing the file or leaving it world-readable.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If you did not set a token, RKE2 generates one at /var/lib/rancher/rke2/server/node-token. Retrieve it only through a protected session and use it for joining nodes. A deliberately configured shared token is easier to audit and reproduce, but it must be kept secret.

Join the second and third servers

On VPS two and VPS three, create the same configuration file, pointing server: at the fixed registration address exposed by the load balancer:

token: my-shared-secret
server: https://rke2.example.com:9345
tls-san:
  - rancher.example.com
  - rke2.example.com

Run the installer and enable the server service on each joining node:

curl -sfL https://get.rke2.io | sh -
systemctl enable rke2-server.service
systemctl start rke2-server.service

Wait for each service to finish bootstrapping before troubleshooting the next node. On the workstation, point kubectl at the protected kubeconfig and inspect membership:

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
kubectl get nodes -o wide
kubectl get pods -A

Do not install Rancher until all three server nodes report Ready and system pods are healthy. If a node does not join, check the token byte-for-byte, DNS resolution for rke2.example.com, the 9345 listener and health check, certificate SANs, and security-group rules before reinstalling anything.

Install cert-manager and Rancher with Helm

Rancher must be served over encrypted TLS. The installation overview requires a local Kubernetes Ingress controller and identifies kubectl and Helm as required tools. RKE2 already provides an Ingress controller.

  1. Verify the cluster. Confirm that the three nodes are Ready and that the local Ingress controller is running. Fix control-plane or networking errors before adding Rancher.
  2. Install cert-manager. Follow the version-compatible cert-manager procedure in Rancher’s installation documentation. Choose an issuer that matches your environment: Let’s Encrypt for a publicly resolvable name, or an organization-managed issuer for an internal name.
  3. Create Rancher’s namespace. Create the cattle-system namespace with kubectl.
  4. Install the chart. Add the Rancher Helm repository, select the Rancher chart version supported by your RKE2/Kubernetes combination, and install it with the exact hostname that resolves to the load balancer. The Rancher installation tutorial documents the chart values, cert-manager flow, and proxy considerations.
  5. Watch rollout and certificate issuance. Use kubectl -n cattle-system get pods, kubectl -n cattle-system get ingress, and the relevant certificate and challenge resources. Wait for the certificate to become Ready before testing the browser endpoint.
  6. Test the endpoint. Open https://rancher.example.com, verify the certificate chain and hostname, complete the initial administrator setup, and confirm that the local cluster appears as available.

The self-signed option is useful for a temporary tutorial environment, but a real deployment should use Let’s Encrypt or an organization-managed certificate. TLS is not an optional cosmetic setting: Rancher’s own tutorial states that all traffic to Rancher must be encrypted for security reasons.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Validate the deployment before calling it highly available

Control-plane checks

  • All three nodes are Ready in kubectl get nodes.
  • CoreDNS, the CNI, ingress, and other system pods are Running without repeated restarts.
  • The load balancer can reach healthy backends on 9345, 6443, and 443.
  • Administrators can use the load-balancer API address without relying on a single node address.
  • Rancher’s hostname presents the intended certificate and remains reachable when one backend is drained.

Failure tests

Perform controlled maintenance tests: cordon and drain one server, stop its RKE2 service during a maintenance window, and verify that the remaining two members keep the API and Rancher endpoint available. Restore the node and confirm it rejoins cleanly. A three-node cluster tolerates the loss of one member; losing two members removes etcd quorum and requires recovery rather than ordinary failover.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Production operations and security

Back up etcd and prove the restore

Enable recurring RKE2 etcd snapshots and store copies off-node, such as in an external object-storage target. A snapshot left only on the failed VPS does not provide useful disaster recovery. Schedule a restore exercise in an isolated environment so you know the credentials, retention policy, encryption keys, and documented procedure actually work.

Record the RKE2 version, Rancher chart version, cluster endpoint, certificate issuer, load-balancer configuration, firewall rules, and token-rotation procedure. Restrict access to the kubeconfig and cloud APIs, rotate credentials according to policy, and monitor certificate expiry.

Monitor the bottlenecks

Watch etcd disk latency and IOPS, node memory pressure, CPU saturation, filesystem capacity, packet loss, and load-balancer health. SSD capacity that looks ample can still fail the cluster if its sustained write latency is poor. Keep sufficient headroom for upgrades, snapshot creation, and temporary controller load.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Keep management separate

Use downstream clusters for application workloads where possible. This limits the blast radius of a workload incident and keeps Rancher’s controllers, webhook traffic, and etcd responsive during application deployments.

These practices align with Rancher’s production-ready cluster checklist, which emphasizes backups, restore testing, health monitoring, and operational readiness rather than simply completing the installer.

Troubleshooting by symptom

A joining node never becomes Ready

  • Confirm the node uses the identical token and can resolve the registration DNS name.
  • Test TCP 9345 from the joining node to the load balancer and from the balancer to every backend.
  • Check that the registration name appears in tls-san and that system time is synchronized.
  • Inspect journalctl -u rke2-server on the joining node and the load-balancer health-check logs.

The API works on a node IP but not through the balancer

  • Verify the TCP 6443 listener targets all healthy server backends.
  • Check security groups for the balancer-to-node path and ensure return traffic is allowed.
  • Use the load-balancer address in the kubeconfig rather than a node-specific address.
  • Confirm the API name is covered by the server certificate SANs.

Rancher shows a certificate or redirect error

  • Ensure public DNS resolves to the balancer and that TCP 443 reaches the Ingress controller.
  • Inspect cert-manager Certificate, Order, and Challenge resources for DNS or HTTP validation failures.
  • Check that the Helm hostname exactly matches the browser URL and certificate name.
  • For an organization-managed certificate, verify the complete trust chain on administrator workstations.

Pods restart under modest workload

  • Check memory pressure and CPU throttling on all three VPS instances.
  • Inspect disk latency and filesystem usage; etcd is sensitive to slow or full disks.
  • Review whether monitoring, logging, or application workloads were placed on the management cluster.
  • Scale the VPS resources or move workloads to downstream clusters before increasing controller concurrency.

How to choose a VPS platform for this design

Rancher does not endorse a particular VPS vendor. Compare providers against the actual control-plane requirements rather than headline CPU counts.

Decision area Questions to answer before purchase
Compute Can every node provide at least the published 4-vCPU/16-GB starting point, with upgrade headroom?
Storage What SSD IOPS, latency, durability, snapshots, and expansion options are documented?
Private networking Are the three nodes on an isolated network, and what bandwidth and latency are guaranteed?
Load balancer Can it provide independent TCP listeners for 9345, 6443, and 443 with useful health checks?
Placement Can nodes be distributed across availability zones without unacceptable inter-zone latency?
DNS and addresses Are static IPv4/IPv6 addresses, reverse DNS, and external DNS automation available?
Recovery Are VPS snapshots, object storage, incident communication, and node replacement procedures adequate?
Security controls Can security groups restrict etcd, kubelet, and overlay traffic to the cluster network?

Pricing and provider limits change frequently, so verify them directly before committing. The durable choice is the platform that can maintain low-latency etcd storage, private node networking, listener control, backups, and predictable replacement—not necessarily the one with the lowest monthly price.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

When a three-node VPS cluster is the wrong choice

Use a single node only for a lab, evaluation, or disposable development environment. It has no control-plane redundancy, and a host failure takes Rancher offline. If your provider cannot offer stable private networking, SSD performance, or a load balancer with the required listeners, a managed Kubernetes control plane or a different infrastructure platform may be safer than forcing an unsupported topology.

For production, the three-node RKE2 design is the minimum foundation, not the entire reliability plan. Tested backups, certificate renewal, monitoring, upgrade rehearsals, access control, and a documented recovery path determine whether the service remains usable after the first hardware, network, or operator mistake.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More quests from Patch Notes

  1. How to Set Up a RedM (RDR2) Server in 2026: License Key, txAdmin and server.cfg, Step by StepBlog11min
  2. Best RedM (RDR2) Server Hosting in 2026: Comparing Four Hosts on Slots, Memory and PriceBlog10min
  3. How to Host a Mindustry Server in 2026: server-release.jar, Port 6567 and the Commands That MatterBlog7min
Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.