Updated per feedback

This commit is contained in:
Jennifer Travinski
2022-05-12 15:01:22 -04:00
parent cb2e360178
commit 3d66905b1a
2 changed files with 18 additions and 19 deletions
@@ -3,7 +3,7 @@ title: Launching Kubernetes with Rancher
weight: 4
---
You can have Rancher launch a Kubernetes cluster using any nodes you want. When Rancher deploys Kubernetes onto these nodes, you can choose between [Rancher Kubernetes Engine]({{<baseurl>}}/rke/latest/en/) (RKE), which is Rancher's own lightweight Kubernetes installer, or [RKE2](https://docs.rke2.io). It can launch Kubernetes on any computers, including:
You can have Rancher launch a Kubernetes cluster using any nodes you want. When Rancher deploys Kubernetes onto these nodes, you can choose between [Rancher Kubernetes Engine]({{<baseurl>}}/rke/latest/en/) (RKE) or [RKE2](https://docs.rke2.io) distributions. Rancher can launch Kubernetes on any computers, including:
- Bare-metal servers
- On-premise virtual machines
@@ -13,8 +13,6 @@ Rancher can install Kubernetes on existing nodes, or it can dynamically provisio
Rancher can also create pools of nodes. One benefit of installing Kubernetes on node pools hosted by an infrastructure provider is that if a node loses connectivity with the cluster, Rancher can automatically create another node to join the cluster to ensure that the count of the node pool is as expected.
RKE/RKE2 clusters include clusters that Rancher launched on Windows nodes or other existing custom nodes, as well as clusters that Rancher launched with new nodes on Azure, Digital Ocean, EC2, vSphere, Linode or Harvester.
## RKE
### Requirements
@@ -43,7 +41,9 @@ The most common way to programmatically deploy RKE clusters through Rancher is b
## RKE2
Rancher v2.6 introduces provisioning for [RKE2](https://docs.rke2.io/) clusters directly from the Rancher UI. RKE2, also known as RKE Government, is a fully conformant Kubernetes distribution that focuses on security and compliance within the U.S. Federal Government sector.
Rancher v2.6 introduced provisioning for [RKE2](https://docs.rke2.io/) clusters directly from the Rancher UI. RKE2, also known as RKE Government, is a fully conformant Kubernetes distribution that focuses on security and compliance within the U.S. Federal Government sector. In Rancher v.2.6.4 and earlier, RKE2 provisioning was in tech preview.
Note that in Rancher v2.6.5, RKE2 provisioning became GA.
### Requirements
@@ -53,16 +53,17 @@ If you use RKE2 to set up a cluster, your nodes must meet the [requirements](htt
RKE2 provisioning is built on top of a new provisioning framework that leverages the upstream [Cluster API](https://github.com/kubernetes-sigs/cluster-api) project. With this new provisioning framework, you can:
- Provision RKE2 clusters on Digital Ocean, AWS EC2, Azure, and vSphere
- Provision RKE2 clusters onto any provider for which Rancher has a node driver
- Fully configure RKE2 clusters within Rancher
- Choose CNI options Calico, Cilium, and Multus in addition to Canal
The RKE2 provisioning also includes installing RKE2 on clusters with Windows nodes. Windows features for RKE2 include:
RKE2 provisioning also includes installing RKE2 on clusters with Windows nodes. **Note that currently Windows nodes are only supported on custom clusters.**
- Windows Containers with RKE2 powered by ContainerD
- Added provisioning of Windows RKE2 custom clusters directly from the Rancher UI
Windows features for RKE2 include:
- Windows Containers with RKE2 powered by containerd
- Provisioning of Windows RKE2 custom clusters directly from the Rancher UI
- Calico CNI for Windows RKE2 custom clusters
- SAC releases of Windows Server (2004 and 20H2) are included in the technical preview
Windows Support for RKE2 Custom Clusters requires choosing Calico as the CNI.
@@ -70,9 +71,7 @@ Windows Support for RKE2 Custom Clusters requires choosing Calico as the CNI.
RKE2 provisioning also allows you to install custom clusters on pre-provisioned VMs or bare-metal nodes.
If you want to reuse a node from a previous custom cluster, [clean the node]({{<baseurl>}}/rancher/v2.6/en/cluster-admin/cleaning-cluster-nodes/) before using it in a cluster again. If you reuse a node that hasn't been cleaned, cluster provisioning may fail.
For more information, refer to the section on [custom nodes.]({{<baseurl>}}/rancher/v2.6/en/cluster-provisioning/rke-clusters/custom-nodes/)
If you want to reuse a node from a previous custom cluster, clean the node before using it in a cluster again. If you reuse a node that hasn't been cleaned, cluster provisioning may fail.
# Programmatically Creating RKE2 Clusters
@@ -72,12 +72,12 @@ The benefit of using a node pool is that if a node is destroyed or deleted, you
Each node pool must have one or more nodes roles assigned.
Each node role (i.e. etcd, control plane, and worker) should be assigned to a distinct node pool. Although it is possible to assign multiple node roles to a node pool, this should not be done for production clusters.
Each node role (i.e. etcd, controlplane, and worker) should be assigned to a distinct node pool. Although it is possible to assign multiple node roles to a node pool, this should not be done for production clusters.
The recommended setup is to have:
- a node pool with the etcd node role and a count of three
- a node pool with the control plane node role and a count of at least two
- a node pool with the controlplane node role and a count of at least two
- a node pool with the worker node role and a count of at least two
#### Node Pool Taints
@@ -141,14 +141,14 @@ Rancher v2.6 introduces provisioning for [RKE2](https://docs.rke2.io/) clusters
### Node Roles
The RKE2 CLI exposes two roles, `server` and `agent`, which represent the Kubernetes node-roles `etcd` + `control-plane` and `worker` respectively. With RKE2 integration in Rancher v2.6, RKE2 node pools can represent more fine-grained role assignments such that `etcd` and `control-plane` roles can be represented.
The RKE2 CLI exposes two roles, `server` and `agent`, which represent the Kubernetes node-roles `etcd` + `controlplane` and `worker` respectively. With RKE2 integration in Rancher v2.6, RKE2 node pools can represent more fine-grained role assignments such that `etcd` and `controlplane` roles can be represented.
The same functionality of using `etcd`, `controlplane` and `worker` nodes is possible in the RKE2 CLI by using flags and node tainting to control where workloads and the Kubernetes master were scheduled. The reason those roles were not implemented as first-class roles in the RKE2 CLI is that RKE2 is conceptualized as a set of raw building blocks that are best leveraged through an orchestration system such as Rancher.
The implementation of the three node roles in Rancher means that Rancher managed RKE2 clusters are able to easily leverage all of the same architectural best practices that are recommended for RKE clusters.
In our [recommended cluster architecture]({{<baseurl>}}/rancher/v2.6/en/cluster-provisioning/production/recommended-architecture/), we outline how many nodes of each role clusters should have:
- At least three nodes with the role etcd to survive losing one node
- At least two nodes with the role `control plane` for master component high availability
- At least two nodes with the role `worker` for workload rescheduling upon node failure
The implementation of the three node roles in Rancher means that Rancher managed RKE2 clusters are able to easily leverage all of the same architectural best practices that are recommended for RKE clusters.
- At least two nodes with the role controlplane for master component high availability
- At least two nodes with the role worker for workload rescheduling upon node failure