Illumina Innovates with Rancher and Kubernetes
This page describes the software, hardware, and networking requirements for the nodes where the Rancher server will be installed. The Rancher server can be installed on a single node or a high-availability Kubernetes cluster.
It is important to note that if you install Rancher on a Kubernetes cluster, requirements are different from the node requirements for downstream user clusters, which will run your apps and services.
Make sure the node(s) for the Rancher server fulfill the following requirements:
For a list of best practices that we recommend for running the Rancher server in production, refer to the best practices section.
The Rancher UI works best in Firefox or Chrome.
Rancher should work with any modern Linux distribution and any modern Docker version.
Rancher has been tested and is supported with Ubuntu, CentOS, Oracle Linux, RancherOS, and RedHat Enterprise Linux.
For details on which OS and Docker versions were tested with each Rancher version, refer to the support maintenance terms.
All supported operating systems are 64-bit x86.
The ntp (Network Time Protocol) package should be installed. This prevents errors with certificate validation that can occur when the time is not synchronized between the client and server.
ntp
Some distributions of Linux derived from RHEL, including Oracle Linux, may have default firewall rules that block communication with Helm. This how-to guide shows how to check the default firewall rules and how to open the ports with firewalld if necessary.
firewalld
If you plan to run Rancher on ARM64, see Running on ARM64 (Experimental).
Docker can be installed by following the steps in the official Docker documentation. Rancher also provides scripts to install Docker with one command.
This section describes the CPU, memory, and disk requirements for the nodes where the Rancher server is installed.
Hardware requirements scale based on the size of your Rancher deployment. Provision each individual node according to the requirements. The requirements are different depending on if you are installing Rancher with Docker or on a Kubernetes cluster.
These requirements apply to installing Rancher on a Kubernetes cluster.
These requirements apply to single node installations of Rancher.
Rancher performance depends on etcd in the cluster performance. To ensure optimal speed, we recommend always using SSD disks to back your Rancher management Kubernetes cluster. On cloud providers, you will also want to use the minimum size that allows the maximum IOPS. In larger clusters, consider using dedicated storage devices for etcd data and wal directories.
This section describes the networking requirements for the node(s) where the Rancher server is installed.
Each node used should have a static IP configured, regardless of whether you are installing Rancher on a single node or on an HA cluster. In case of DHCP, each node should have a DHCP reservation to make sure the node gets the same IP allocated.
This section describes the port requirements for nodes running the rancher/rancher container.
rancher/rancher
The port requirements are different depending on whether you are installing Rancher on a single node or on a high-availability Kubernetes cluster.
To communicate with downstream clusters, Rancher requires different ports to be open depending on the infrastructure you are using.
For example, if you are deploying Rancher on nodes hosted by an infrastructure provider, port 22 must be open for SSH.
22
The following diagram depicts the ports that are opened for each cluster type.
The following tables break down the port requirements for inbound and outbound traffic:
35.160.43.145/32
35.167.242.46/32
52.33.59.17/32
Note Rancher nodes may also require additional outbound access for any external authentication provider which is configured (LDAP for example).
You will need to open additional ports to launch the Kubernetes cluster that are required for a high-availability installation of Rancher.
If you follow the Rancher installation documentation for setting up a Kubernetes cluster using RKE, you will set up a cluster in which all three nodes have all three roles: etcd, controlplane, and worker. In that case, you can refer to this list of requirements for each node with all three roles:
The ports that need to be opened for each node depend on the node’s Kubernetes role: etcd, controlplane, or worker. If you installed Rancher on a Kubernetes cluster that doesn’t have all three roles on each node, refer to the port requirements for the Rancher Kubernetes Engine (RKE). The RKE docs show a breakdown of the port requirements for each role.