diff --git a/README.md b/README.md
index 9e92e8c1f06..07d12120a56 100644
--- a/README.md
+++ b/README.md
@@ -5,7 +5,7 @@ Rancher Docs
We have transitioned to versioned documentation for Rancher (files within `content/rancher`).
-New contributions should be made to the applicable versioned directories (e.g. `content/rancher/v2.5` and `content/rancher/v2.0-v2.4`).
+New contributions should be made to the applicable versioned directories (e.g., `content/rancher/v2.5` and `content/rancher/v2.0-v2.4`).
Contents under the `content/rancher/v2.x` directory are no longer maintained after v2.5.6.
@@ -23,7 +23,12 @@ Windows
./scripts/dev-windows.ps1
```
-and then navigate to http://localhost:9001/. You can customize the port by passing it as an argument:
+and then navigate to http://localhost:9001/. Click the link on the card associated with a given Rancher version to
+access the documentation. For example, clicking on the link of the Rancher v2.5 card will redirect to
+http://localhost:9001/rancher/v2.5/en/. Note that due to the way the Rancher website is built, links in the top
+navigation panel will not work.
+
+You can customize the port by passing it as an argument:
Linux
```bash
diff --git a/config.toml b/config.toml
index 6ea4f5e3a0b..35fdfda6e03 100644
--- a/config.toml
+++ b/config.toml
@@ -209,4 +209,4 @@ pre = "keyboard_arrow_down"
[[menu.main]]
name = "Partners"
url = "https://rancher.com/partners/"
- parent = "about"
+ parent = "about"
\ No newline at end of file
diff --git a/content/_index.html b/content/_index.html
index fe9ce90017d..6eaf499e547 100644
--- a/content/_index.html
+++ b/content/_index.html
@@ -91,6 +91,31 @@
+
+
+
+
+ 2.6
+ Rancher 2.6
+
+
+
+
+
Rancher manages all of your Kubernetes clusters everywhere, unifies them under centralized RBAC, monitors them and lets you easily deploy and manage workloads through an intuitive user interface.
+
+
+
+
+
+
+
+
+
+
+
+ RKE2
+ RKE2
+
+
+
+
+
RKE2, also known as RKE Government, is Rancher's next-generation Kubernetes distribution.
+
+
+
+
+
+
+
+
+ Longhorn
+ Longhorn
+
+
+
+
+
Longhorn is a lightweight, reliable, and powerful distributed block storage system for Kubernetes.
+
+
+
+
+
+
diff --git a/content/k3s/latest/en/advanced/_index.md b/content/k3s/latest/en/advanced/_index.md
index a557e491fc4..a4e250cdb7a 100644
--- a/content/k3s/latest/en/advanced/_index.md
+++ b/content/k3s/latest/en/advanced/_index.md
@@ -11,9 +11,9 @@ This section contains advanced information describing the different ways you can
- [Certificate rotation](#certificate-rotation)
- [Auto-deploying manifests](#auto-deploying-manifests)
- [Using Docker as the container runtime](#using-docker-as-the-container-runtime)
+- [Using etcdctl](#using-etcdctl)
- [Configuring containerd](#configuring-containerd)
-- [Secrets Encryption Config (Experimental)](#secrets-encryption-config-experimental)
-- [Running K3s with RootlessKit (Experimental)](#running-k3s-with-rootlesskit-experimental)
+- [Running K3s with Rootless mode (Experimental)](#running-k3s-with-rootless-mode-experimental)
- [Node labels and taints](#node-labels-and-taints)
- [Starting the server with the installation script](#starting-the-server-with-the-installation-script)
- [Additional preparation for Alpine Linux setup](#additional-preparation-for-alpine-linux-setup)
@@ -22,6 +22,9 @@ This section contains advanced information describing the different ways you can
- [Enabling cgroups for Raspbian Buster](#enabling-cgroups-for-raspbian-buster)
- [SELinux Support](#selinux-support)
- [Additional preparation for (Red Hat/CentOS) Enterprise Linux](#additional-preparation-for-red-hat-centos-enterprise-linux)
+- [Enabling Lazy Pulling of eStargz (Experimental)](#enabling-lazy-pulling-of-estargz-experimental)
+- [Additional Logging Sources](#additional-logging-sources)
+- [Server and agent tokens](#server-and-agent-tokens)
# Certificate Rotation
@@ -31,7 +34,7 @@ If the certificates are expired or have fewer than 90 days remaining before they
# Auto-Deploying Manifests
-Any file found in `/var/lib/rancher/k3s/server/manifests` will automatically be deployed to Kubernetes in a manner similar to `kubectl apply`.
+Any file found in `/var/lib/rancher/k3s/server/manifests` will automatically be deployed to Kubernetes in a manner similar to `kubectl apply`, both on startup and when the file is changed on disk. Deleting files out of this directory will not delete the corresponding resources from the cluster.
For information about deploying Helm charts, refer to the section about [Helm.](../helm)
@@ -116,6 +119,24 @@ rancher/metrics-server v0.3.6 9dd718864ce61 39.9MB
rancher/pause 3.1 da86e6ba6ca19 742kB
```
+# Using etcdctl
+
+etcdctl provides a CLI for etcd.
+
+If you would like to use etcdctl after installing K3s with embedded etcd, install etcdctl using the [official documentation.](https://etcd.io/docs/latest/install/)
+
+```
+$ VERSION="v3.5.0"
+$ curl -L https://github.com/etcd-io/etcd/releases/download/${VERSION}/etcd-${VERSION}-linux-amd64.tar.gz --output etcdctl-linux-amd64.tar.gz
+$ sudo tar -zxvf etcdctl-linux-amd64.tar.gz --strip-components=1 -C /usr/local/bin etcd-${VERSION}-linux-amd64/etcdctl
+```
+
+Then start using etcdctl commands with the appropriate K3s flags:
+
+```
+$ sudo etcdctl --cacert=/var/lib/rancher/k3s/server/tls/etcd/server-ca.crt --cert=/var/lib/rancher/k3s/server/tls/etcd/client.crt --key=/var/lib/rancher/k3s/server/tls/etcd/client.key version
+```
+
# Configuring containerd
K3s will generate config.toml for containerd in `/var/lib/rancher/k3s/agent/etc/containerd/config.toml`.
@@ -124,57 +145,16 @@ For advanced customization for this file you can create another file called `con
The `config.toml.tmpl` will be treated as a Go template file, and the `config.Node` structure is being passed to the template. [This template](https://github.com/rancher/k3s/blob/master/pkg/agent/templates/templates.go#L16-L32) example on how to use the structure to customize the configuration file.
-# Secrets Encryption Config (Experimental)
-As of v1.17.4+k3s1, K3s added the experimental feature of enabling secrets encryption at rest by passing the flag `--secrets-encryption` on a server, this flag will do the following automatically:
-- Generate an AES-CBC key
-- Generate an encryption config file with the generated key
-
-```
-{
- "kind": "EncryptionConfiguration",
- "apiVersion": "apiserver.config.k8s.io/v1",
- "resources": [
- {
- "resources": [
- "secrets"
- ],
- "providers": [
- {
- "aescbc": {
- "keys": [
- {
- "name": "aescbckey",
- "secret": "xxxxxxxxxxxxxxxxxxx"
- }
- ]
- }
- },
- {
- "identity": {}
- }
- ]
- }
- ]
-}
-```
-
-- Pass the config to the KubeAPI as encryption-provider-config
-
-Once enabled any created secret will be encrypted with this key. Note that if you disable encryption then any encrypted secrets will not be readable until you enable encryption again.
-
-# Running K3s with RootlessKit (Experimental)
+# Running K3s with Rootless mode (Experimental)
> **Warning:** This feature is experimental.
-RootlessKit is a kind of Linux-native "fake root" utility, made for mainly [running Docker and Kubernetes as an unprivileged user,](https://github.com/rootless-containers/usernetes) so as to protect the real root on the host from potential container-breakout attacks.
+Rootless mode allows running the entire k3s an unprivileged user, so as to protect the real root on the host from potential container-breakout attacks.
-Initial rootless support has been added but there are a series of significant usability issues surrounding it.
+See also https://rootlesscontaine.rs/ to learn about Rootless mode.
-We are releasing the initial support for those interested in rootless and hopefully some people can help to improve the usability. First, ensure you have a proper setup and support for user namespaces. Refer to the [requirements section](https://github.com/rootless-containers/rootlesskit#setup) in RootlessKit for instructions.
-In short, latest Ubuntu is your best bet for this to work.
-
-### Known Issues with RootlessKit
+### Known Issues with Rootless mode
* **Ports**
@@ -184,24 +164,41 @@ In short, latest Ubuntu is your best bet for this to work.
Currently, only `LoadBalancer` services are automatically bound.
-* **Daemon lifecycle**
-
- Once you kill K3s and then start a new instance of K3s it will create a new network namespace, but it doesn't kill the old pods. So you are left
- with a fairly broken setup. This is the main issue at the moment, how to deal with the network namespace.
-
- The issue is tracked in https://github.com/rootless-containers/rootlesskit/issues/65
-
* **Cgroups**
- Cgroups are not supported.
+ Cgroup v1 is not supported. v2 is supported.
+
+* **Multi-node cluster**
+
+ Multi-cluster installation is untested and undocumented.
### Running Servers and Agents with Rootless
+* Enable cgroup v2 delegation, see https://rootlesscontaine.rs/getting-started/common/cgroup2/ .
+ This step is optional, but highly recommended for enabling CPU and memory resource limtitation.
-Just add `--rootless` flag to either server or agent. So run `k3s server --rootless` and then look for the message `Wrote kubeconfig [SOME PATH]` for where your kubeconfig file is.
+* Download `k3s-rootless.service` from [`https://github.com/k3s-io/k3s/blob//k3s-rootless.service`](https://github.com/k3s-io/k3s/blob/master/k3s-rootless.service).
+ Make sure to use the same version of `k3s-rootless.service` and `k3s`.
-For more information about setting up the kubeconfig file, refer to the [section about cluster access.](../cluster-access)
+* Install `k3s-rootless.service` to `~/.config/systemd/user/k3s-rootless.service`.
+ Installing this file as a system-wide service (`/etc/systemd/...`) is not supported.
+ Depending on the path of `k3s` binary, you might need to modify the `ExecStart=/usr/local/bin/k3s ...` line of the file.
-> Be careful, if you use `-o` to write the kubeconfig to a different directory it will probably not work. This is because the K3s instance in running in a different mount namespace.
+* Run `systemctl --user daemon-reload`
+
+* Run `systemctl --user enable --now k3s-rootless`
+
+* Run `KUBECONFIG=~/.kube/k3s.yaml kubectl get pods -A`, and make sure the pods are running.
+
+> **Note:** Don't try to run `k3s server --rootless` on a terminal, as it doesn't enable cgroup v2 delegation.
+> If you really need to try it on a terminal, prepend `systemd-run --user -p Delegate=yes --tty` to create a systemd scope.
+>
+> i.e., `systemd-run --user -p Delegate=yes --tty k3s server --rootless`
+
+### Troubleshooting
+
+* Run `systemctl --user status k3s-rootless` to check the daemon status
+* Run `journalctl --user -f -u k3s-rootless` to see the daemon log
+* See also https://rootlesscontaine.rs/
# Node Labels and Taints
@@ -310,7 +307,7 @@ sudo reboot
Standard Raspbian Buster installations do not start with `cgroups` enabled. **K3S** needs `cgroups` to start the systemd service. `cgroups`can be enabled by appending `cgroup_memory=1 cgroup_enable=memory` to `/boot/cmdline.txt`.
-## example of /boot/cmdline.txt
+### example of /boot/cmdline.txt
```
console=serial0,115200 console=tty1 root=PARTUUID=58b06195-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait cgroup_memory=1 cgroup_enable=memory
```
@@ -374,3 +371,84 @@ It is recommended to turn off firewalld:
```
systemctl disable firewalld --now
```
+
+If enabled, it is required to disable nm-cloud-setup and reboot the node:
+```
+systemctl disable nm-cloud-setup.service nm-cloud-setup.timer
+reboot
+```
+
+# Enabling Lazy Pulling of eStargz (Experimental)
+
+### What's lazy pulling and eStargz?
+
+Pulling images is known as one of the time-consuming steps in the container lifecycle.
+According to [Harter, et al.](https://www.usenix.org/conference/fast16/technical-sessions/presentation/harter),
+
+> pulling packages accounts for 76% of container start time, but only 6.4% of that data is read
+
+To address this issue, k3s experimentally supports *lazy pulling* of image contents.
+This allows k3s to start a container before the entire image has been pulled.
+Instead, the necessary chunks of contents (e.g. individual files) are fetched on-demand.
+Especially for large images, this technique can shorten the container startup latency.
+
+To enable lazy pulling, the target image needs to be formatted as [*eStargz*](https://github.com/containerd/stargz-snapshotter/blob/main/docs/stargz-estargz.md).
+This is an OCI-alternative but 100% OCI-compatible image format for lazy pulling.
+Because of the compatibility, eStargz can be pushed to standard container registries (e.g. ghcr.io) as well as this is *still runnable* even on eStargz-agnostic runtimes.
+
+eStargz is developed based on the [stargz format proposed by Google CRFS project](https://github.com/google/crfs) but comes with practical features including content verification and performance optimization.
+For more details about lazy pulling and eStargz, please refer to [Stargz Snapshotter project repository](https://github.com/containerd/stargz-snapshotter).
+
+### Configure k3s for lazy pulling of eStargz
+
+As shown in the following, `--snapshotter=stargz` option is needed for k3s server and agent.
+
+```
+k3s server --snapshotter=stargz
+```
+
+With this configuration, you can perform lazy pulling for eStargz-formatted images.
+The following Pod manifest uses eStargz-formatted `node:13.13.0` image (`ghcr.io/stargz-containers/node:13.13.0-esgz`).
+k3s performs lazy pulling for this image.
+
+```
+apiVersion: v1
+kind: Pod
+metadata:
+ name: nodejs
+spec:
+ containers:
+ - name: nodejs-estargz
+ image: ghcr.io/stargz-containers/node:13.13.0-esgz
+ command: ["node"]
+ args:
+ - -e
+ - var http = require('http');
+ http.createServer(function(req, res) {
+ res.writeHead(200);
+ res.end('Hello World!\n');
+ }).listen(80);
+ ports:
+ - containerPort: 80
+```
+
+# Additional Logging Sources
+
+[Rancher logging]({{}}//rancher/v2.6/en/logging/helm-chart-options/) for K3s can be installed without using Rancher. The following instructions should be executed to do so:
+
+```
+helm repo add rancher-charts https://charts.rancher.io
+helm repo update
+helm install --create-namespace -n cattle-logging-system rancher-logging-crd rancher-charts/rancher-logging-crd
+helm install --create-namespace -n cattle-logging-system rancher-logging --set additionalLoggingSources.k3s.enabled=true rancher-charts/rancher-logging
+```
+
+# Server and agent tokens
+
+In K3s, there are two types of tokens: K3S_TOKEN and K3S_AGENT_TOKEN.
+
+K3S_TOKEN: Defines the key required by the server to offer the HTTP config resources. These resources are requested by the other servers before joining the K3s HA cluster. If the K3S_AGENT_TOKEN is not defined, the agents use this token as well to access the required HTTP resources to join the cluster. Note that this token is also used to generate the encryption key for important content in the database (e.g., bootstrap data).
+
+K3S_AGENT_TOKEN: Optional. Defines the key required by the server to offer HTTP config resources to the agents. If not defined, agents will require K3S_TOKEN. Defining K3S_AGENT_TOKEN is encouraged to avoid agents having to know K3S_TOKEN, which is also used to encrypt data.
+
+If no K3S_TOKEN is defined, the first K3s server will generate a random one. The result is part of the content in `/var/lib/rancher/k3s/server/token`. For example, `K1070878408e06a827960208f84ed18b65fa10f27864e71a57d9e053c4caff8504b::server:df54383b5659b9280aa1e73e60ef78fc`, where `df54383b5659b9280aa1e73e60ef78fc` is the K3S_TOKEN.
diff --git a/content/k3s/latest/en/backup-restore/_index.md b/content/k3s/latest/en/backup-restore/_index.md
index ca6aa53ab1a..8e9569e2948 100644
--- a/content/k3s/latest/en/backup-restore/_index.md
+++ b/content/k3s/latest/en/backup-restore/_index.md
@@ -18,7 +18,7 @@ For details on taking database snapshots and restoring your database from them,
- [Official MySQL documentation](https://dev.mysql.com/doc/refman/8.0/en/replication-snapshot-method.html)
- [Official PostgreSQL documentation](https://www.postgresql.org/docs/8.3/backup-dump.html)
-- [Official etcd documentation](https://github.com/etcd-io/etcd/blob/master/Documentation/op-guide/recovery.md)
+- [Official etcd documentation](https://etcd.io/docs/latest/op-guide/recovery/)
# Backup and Restore with Embedded etcd Datastore (Experimental)
@@ -26,17 +26,19 @@ _Available as of v1.19.1+k3s1_
In this section, you'll learn how to create backups of the K3s cluster data and to restore the cluster from backup.
+>**Note on Single-Server with embedded SQLite:** Currently, backups of SQLite are not supported. Instead, make a copy of `/var/lib/rancher/k3s/server` and then delete K3s.
+
### Creating Snapshots
Snapshots are enabled by default.
-The snapshot directory defaults to `/server/db/snapshots`.
+The snapshot directory defaults to `${data-dir}/server/db/snapshots`. The data-dir value defaults to `/var/lib/rancher/k3s` and can be changed by setting the `--data-dir` flag.
To configure the snapshot interval or the number of retained snapshots, refer to the [options.](#options)
### Restoring a Cluster from a Snapshot
-When K3s is restored from backup, the old data directory will be moved to `/server/db/etcd-old/`. Then K3s will attempt to restore the snapshot by creating a new data directory, then starting etcd with a new K3s cluster with one etcd member.
+When K3s is restored from backup, the old data directory will be moved to `${data-dir}/server/db/etcd-old/`. Then K3s will attempt to restore the snapshot by creating a new data directory, then starting etcd with a new K3s cluster with one etcd member.
To restore the cluster from backup, run K3s with the `--cluster-reset` option, with the `--cluster-reset-restore-path` also given:
@@ -101,3 +103,41 @@ k3s server \
--etcd-s3-access-key= \
--etcd-s3-secret-key=
```
+
+### Etcd Snapshot and Restore Subcommands
+
+k3s supports a set of subcommands for working with your etcd snapshots.
+
+| Subcommand | Description |
+| ----------- | --------------- |
+| delete | Delete given snapshot(s) |
+| ls, list, l | List snapshots |
+| prune | Remove snapshots that exceed the configured retention count |
+| save | Trigger an immediate etcd snapshot |
+
+*note* The `save` subcommand is the same as `k3s etcd-snapshot`. The latter will eventually be deprecated in favor of the former.
+
+These commands will perform as expected whether the etcd snapshots are stored locally or in an S3 compatible object store.
+
+For additional information on the etcd snapshot subcommands, run `k3s etcd-snapshot`.
+
+Delete a snapshot from S3.
+
+```
+k3s etcd-snapshot delete \
+ --s3 \
+ --s3-bucket= \
+ --s3-access-key= \
+ --s3-secret-key= \
+
+```
+
+Prune local snapshots with the default retention policy (5). The `prune` subcommand takes an additional flag `--snapshot-retention` that allows for overriding the default retention policy.
+
+```
+k3s etcd-snapshot prune
+```
+
+```
+k3s etcd-snapshot prune --snapshot-retention 10
+```
diff --git a/content/k3s/latest/en/helm/_index.md b/content/k3s/latest/en/helm/_index.md
index 574c36d6c66..89d21d70ba5 100644
--- a/content/k3s/latest/en/helm/_index.md
+++ b/content/k3s/latest/en/helm/_index.md
@@ -66,6 +66,20 @@ spec:
Content placed in `/var/lib/rancher/k3s/server/static/` can be accessed anonymously via the Kubernetes APIServer from within the cluster. This URL can be templated using the special variable `%{KUBERNETES_API}%` in the `spec.chart` field. For example, the packaged Traefik component loads its chart from `https://%{KUBERNETES_API}%/static/charts/traefik-1.81.0.tgz`.
+**Note:** The `name` field should follow the Helm chart naming conventions. Refer [here](https://helm.sh/docs/chart_best_practices/conventions/#chart-names) to learn more.
+
+>**Notice on File Naming Requirements:** `HelmChart` and `HelmChartConfig` manifest filenames should adhere to Kubernetes object [naming restrictions](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/). The Helm Controller uses filenames to create objects; therefore, the filename must also align with the restrictions. Any related errors can be observed in the rke2-server logs. The example below is an error generated from using underscores:
+```
+level=error msg="Failed to process config: failed to process
+/var/lib/rancher/rke2/server/manifests/rke2_ingress_daemonset.yaml:
+Addon.k3s.cattle.io \"rke2_ingress_daemonset\" is invalid: metadata.name:
+Invalid value: \"rke2_ingress_daemonset\": a lowercase RFC 1123 subdomain
+must consist of lower case alphanumeric characters, '-' or '.', and must
+start and end with an alphanumeric character (e.g. 'example.com', regex
+used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]
+([-a-z0-9]*[a-z0-9])?)*')"
+```
+
### Customizing Packaged Components with HelmChartConfig
To allow overriding values for packaged components that are deployed as HelmCharts (such as Traefik), K3s versions starting with v1.19.0+k3s1 support customizing deployments via a HelmChartConfig resources. The HelmChartConfig resource must match the name and namespace of its corresponding HelmChart, and supports providing additional `valuesContent`, which is passed to the `helm` command as an additional value file.
diff --git a/content/k3s/latest/en/installation/airgap/_index.md b/content/k3s/latest/en/installation/airgap/_index.md
index 91d37c00830..303cebab4b9 100644
--- a/content/k3s/latest/en/installation/airgap/_index.md
+++ b/content/k3s/latest/en/installation/airgap/_index.md
@@ -3,7 +3,7 @@ title: "Air-Gap Install"
weight: 60
---
-You can install K3s in an air-gapped environment using two different methods. You can either deploy a private registry and mirror docker.io or you can manually deploy images such as for small clusters.
+You can install K3s in an air-gapped environment using two different methods. An air-gapped environment is any environment that is not directly connected to the Internet. You can either deploy a private registry and mirror docker.io, or you can manually deploy images such as for small clusters.
# Private Registry Method
@@ -39,22 +39,23 @@ Follow the steps in the next section to install K3s.
# Install K3s
-Only after you have completed either the [Private Registry Method](#private-registry-method) or the [Manually Deploy Images Method](#manually-deploy-images-method) above should you install K3s.
+### Prerequisites
-Obtain the K3s binary from the [releases](https://github.com/rancher/k3s/releases) page, matching the same version used to get the airgap images.
-Obtain the K3s install script at https://get.k3s.io
+- Before installing K3s, complete the the [Private Registry Method](#private-registry-method) or the [Manually Deploy Images Method](#manually-deploy-images-method) above to prepopulate the images that K3s needs to install.
+- Download the K3s binary from the [releases](https://github.com/rancher/k3s/releases) page, matching the same version used to get the airgap images. Place the binary in `/usr/local/bin` on each air-gapped node and ensure it is executable.
+- Download the K3s install script at https://get.k3s.io. Place the install script anywhere on each air-gapped node, and name it `install.sh`.
-Place the binary in `/usr/local/bin` on each node and ensure it is executable.
-Place the install script anywhere on each node, and name it `install.sh`.
+When running the K3s script with the `INSTALL_K3S_SKIP_DOWNLOAD` environment variable, K3s will use the local version of the script and binary.
-### Install Options
+### Installing K3s in an Air-Gapped Environment
+
You can install K3s on one or more servers as described below.
{{% tabs %}}
{{% tab "Single Server Configuration" %}}
-To install K3s on a single server simply do the following on the server node.
+To install K3s on a single server, simply do the following on the server node:
```
INSTALL_K3S_SKIP_DOWNLOAD=true ./install.sh
@@ -75,13 +76,13 @@ For example, step two of the High Availability with an External DB guide mention
```
curl -sfL https://get.k3s.io | sh -s - server \
- --datastore-endpoint="mysql://username:password@tcp(hostname:3306)/database-name"
+ --datastore-endpoint='mysql://username:password@tcp(hostname:3306)/database-name'
```
Instead, you would modify such examples like below:
```
-INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_EXEC='server --datastore-endpoint="mysql://username:password@tcp(hostname:3306)/database-name"' ./install.sh
+INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_EXEC='server' K3S_DATASTORE_ENDPOINT='mysql://username:password@tcp(hostname:3306)/database-name' ./install.sh
```
{{% /tab %}}
diff --git a/content/k3s/latest/en/installation/datastore/_index.md b/content/k3s/latest/en/installation/datastore/_index.md
index 059d73e16fe..b5476b42f35 100644
--- a/content/k3s/latest/en/installation/datastore/_index.md
+++ b/content/k3s/latest/en/installation/datastore/_index.md
@@ -23,7 +23,7 @@ If you wish to use an external datastore such as PostgreSQL, MySQL, or etcd you
CLI Flag | Environment Variable | Description
------------|-------------|------------------
- `--datastore-endpoint` | `K3S_DATASTORE_ENDPOINT` | Specify a PostgresSQL, MySQL, or etcd connection string. This is a string used to describe the connection to the datastore. The structure of this string is specific to each backend and is detailed below.
+ `--datastore-endpoint` | `K3S_DATASTORE_ENDPOINT` | Specify a PostgreSQL, MySQL, or etcd connection string. This is a string used to describe the connection to the datastore. The structure of this string is specific to each backend and is detailed below.
`--datastore-cafile` | `K3S_DATASTORE_CAFILE` | TLS Certificate Authority (CA) file used to help secure communication with the datastore. If your datastore serves requests over TLS using a certificate signed by a custom certificate authority, you can specify that CA using this parameter so that the K3s client can properly verify the certificate. |
| `--datastore-certfile` | `K3S_DATASTORE_CERTFILE` | TLS certificate file used for client certificate based authentication to your datastore. To use this feature, your datastore must be configured to support client certificate based authentication. If you specify this parameter, you must also specify the `datastore-keyfile` parameter. |
| `--datastore-keyfile` | `K3S_DATASTORE_KEYFILE` | TLS key file used for client certificate based authentication to your datastore. See the previous `datastore-certfile` parameter for more details. |
@@ -81,7 +81,7 @@ The above assumes a typical three node etcd cluster. The parameter can accept on
{{% /tab %}}
{{% /tabs %}}
-
Based on the above, the following example command could be used to launch a server instance that connects to a PostgresSQL database named k3s:
+
Based on the above, the following example command could be used to launch a server instance that connects to a PostgreSQL database named k3s:
```
K3S_DATASTORE_ENDPOINT='postgres://username:password@hostname:5432/k3s' k3s server
```
diff --git a/content/k3s/latest/en/installation/disable-flags/_index.md b/content/k3s/latest/en/installation/disable-flags/_index.md
index 6652c85d704..83b6b692cca 100644
--- a/content/k3s/latest/en/installation/disable-flags/_index.md
+++ b/content/k3s/latest/en/installation/disable-flags/_index.md
@@ -3,16 +3,16 @@ title: "Disable Components Flags"
weight: 60
---
-When starting K3s server with --cluster-init it will run all control plane components that includes (api server, controller manager, scheduler, and etcd). However you can run server nodes with certain components and execlude others, the following sectiohs will explain how to do that.
+When starting K3s server with --cluster-init it will run all control plane components that includes (api server, controller manager, scheduler, and etcd). However you can run server nodes with certain components and execlude others, the following sections will explain how to do that.
# ETCD Only Nodes
This document assumes you run K3s server with embedded etcd by passing `--cluster-init` flag to the server process.
-To run a K3s server with only etcd components you can pass `--disable-api-server --disable-controller-manager --disable-scheduler` flags to k3s, this will result in running a server node with only etcd, for example to run K3s server with those flags:
+To run a K3s server with only etcd components you can pass `--disable-apiserver --disable-controller-manager --disable-scheduler` flags to k3s, this will result in running a server node with only etcd, for example to run K3s server with those flags:
```
-curl -fL https://get.k3s.io | sh -s - server --cluster-init --disable-api-server --disable-controller-manager --disable-scheduler
+curl -fL https://get.k3s.io | sh -s - server --cluster-init --disable-apiserver --disable-controller-manager --disable-scheduler
```
You can join other nodes to the cluster normally after that.
@@ -34,12 +34,12 @@ ip-172-31-13-32 Ready etcd 5h39m v1.20.4+k3s1
ip-172-31-14-69 Ready control-plane,master 5h39m v1.20.4+k3s1
```
-Note that you can run `kubectl` commands only on the k3s server that has the api running, and you cant run `kubectl` commands on etcd only nodes.
+Note that you can run `kubectl` commands only on the k3s server that has the api running, and you can't run `kubectl` commands on etcd only nodes.
### Re-enabling control components
-In both cases you can re-enable any component that you already disabled simply by removing the corresponding flag that disables them, so for example if you want to revert the etcd only node back to a full k3s server with all components you can just remove the following 3 flags `--disable-api-server --disable-controller-manager --disable-scheduler`, so in our example to revert back node `ip-172-31-13-32` to a full k3s server you can just re-run the curl command without the disable flags:
+In both cases you can re-enable any component that you already disabled simply by removing the corresponding flag that disables them, so for example if you want to revert the etcd only node back to a full k3s server with all components you can just remove the following 3 flags `--disable-apiserver --disable-controller-manager --disable-scheduler`, so in our example to revert back node `ip-172-31-13-32` to a full k3s server you can just re-run the curl command without the disable flags:
```
curl -fL https://get.k3s.io | sh -s - server --cluster-init
```
@@ -57,11 +57,11 @@ Notice that role labels has been re-added to the node `ip-172-31-13-32` with the
# Add disable flags using the config file
-In any of the previous situation you can use the config file instead of running the curl commands with the associated flags, for example to run an etcd only node you can add the following options to the `/etc/rancher/k3s/config.yaml` file:
+In any of the previous situations you can use the config file instead of running the curl commands with the associated flags, for example to run an etcd only node you can add the following options to the `/etc/rancher/k3s/config.yaml` file:
```
---
-disable-api-server: true
+disable-apiserver: true
disable-controller-manager: true
disable-scheduler: true
cluster-init: true
@@ -70,4 +70,19 @@ and then start K3s using the curl command without any arguents:
```
curl -fL https://get.k3s.io | sh -
-```
\ No newline at end of file
+```
+# Disable components using .skip files
+
+For any yaml file under `/var/lib/rancher/k3s/server/manifests` (coredns, traefik, local-storeage, etc.) you can add a `.skip` file which will cause K3s to not apply the associated yaml file.
+For example, adding `traefik.yaml.skip` in the manifests directory will cause K3s to skip `traefik.yaml`.
+```
+ls /var/lib/rancher/k3s/server/manifests
+ccm.yaml local-storage.yaml rolebindings.yaml traefik.yaml.skip
+coredns.yaml traefik.yaml
+
+kubectl get pods -A
+NAMESPACE NAME READY STATUS RESTARTS AGE
+kube-system local-path-provisioner-64ffb68fd-xx98j 1/1 Running 0 74s
+kube-system metrics-server-5489f84d5d-7zwkt 1/1 Running 0 74s
+kube-system coredns-85cb69466-vcq7j 1/1 Running 0 74s
+```
diff --git a/content/k3s/latest/en/installation/ha-embedded/_index.md b/content/k3s/latest/en/installation/ha-embedded/_index.md
index 6b940fc02c9..9526a67c61e 100644
--- a/content/k3s/latest/en/installation/ha-embedded/_index.md
+++ b/content/k3s/latest/en/installation/ha-embedded/_index.md
@@ -7,6 +7,9 @@ weight: 40
K3s has added full support for embedded etcd as of release v1.19.5+k3s1. Versions v1.19.1 thru v1.19.4 provide only experimental support for embedded etcd.
Embedded etcd replaced experimental Dqlite in the K3s v1.19.1 release. This is a breaking change. Please note that upgrades from experimental Dqlite to embedded etcd are not supported. If you attempt an upgrade it will not succeed and data will be lost.
+>**Warning:**
+Embedded etcd (HA) may have performance issues on slower disks such as Raspberry Pis running with SD cards.
+
To run K3s in this mode, you must have an odd number of server nodes. We recommend starting with three nodes.
To get started, first launch a server node with the `cluster-init` flag to enable clustering and a token that will be used as a shared secret to join additional servers to the cluster.
@@ -20,3 +23,9 @@ K3S_TOKEN=SECRET k3s server --server https://:6443
```
Now you have a highly available control plane. Joining additional worker nodes to the cluster follows the same procedure as a single server cluster.
+
+There are a few config flags that must be the same in all server nodes:
+
+* Network related flags: `--cluster-dns`, `--cluster-domain`, `--cluster-cidr`, `--service-cidr`
+* Flags controlling the deployment of certain components: `--disable-helm-controller`, `--disable-kube-proxy`, `--disable-network-policy` and any component passed to `--disable`
+* Feature related flags: `--secrets-encryption`
diff --git a/content/k3s/latest/en/installation/ha/_index.md b/content/k3s/latest/en/installation/ha/_index.md
index 00c082d2ac5..a7bc5491eac 100644
--- a/content/k3s/latest/en/installation/ha/_index.md
+++ b/content/k3s/latest/en/installation/ha/_index.md
@@ -33,12 +33,13 @@ You will first need to create an external datastore for the cluster. See the [Cl
### 2. Launch Server Nodes
K3s requires two or more server nodes for this HA configuration. See the [Installation Requirements]({{}}/k3s/latest/en/installation/installation-requirements/) guide for minimum machine requirements.
-When running the `k3s server` command on these nodes, you must set the `datastore-endpoint` parameter so that K3s knows how to connect to the external datastore.
+When running the `k3s server` command on these nodes, you must set the `datastore-endpoint` parameter so that K3s knows how to connect to the external datastore. The `token` parameter can also be used to set a deterministic token when adding nodes. When empty, this token will be generated automatically for further use.
-For example, a command like the following could be used to install the K3s server with a MySQL database as the external datastore:
+For example, a command like the following could be used to install the K3s server with a MySQL database as the external datastore and [set a token]({{}}/k3s/latest/en/installation/install-options/server-config/#cluster-options}}):
-```
+```bash
curl -sfL https://get.k3s.io | sh -s - server \
+ --token=SECRET \
--datastore-endpoint="mysql://username:password@tcp(hostname:3306)/database-name"
```
@@ -62,12 +63,37 @@ Agent nodes need a URL to register against. This can be the IP or hostname of an
This endpoint can also be used for accessing the Kubernetes API. So you can, for example, modify your [kubeconfig](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/) file to point to it instead of a specific node. To avoid certificate errors in such a configuration, you should install the server with the `--tls-san YOUR_IP_OR_HOSTNAME_HERE` option. This option adds an additional hostname or IP as a Subject Alternative Name in the TLS cert, and it can be specified multiple times if you would like to access via both the IP and the hostname.
-### 4. Optional: Join Agent Nodes
+### 4. Optional: Join Additional Server Nodes
+
+The same example command in Step 2 can be used to join additional server nodes, where the token from the first node needs to be used.
+
+If the first server node was started without the `--token` CLI flag or `K3S_TOKEN` variable, the token value can be retrieved from any server already joined to the cluster:
+```bash
+cat /var/lib/rancher/k3s/server/token
+```
+
+Additional server nodes can then be added [using the token]({{}}/k3s/latest/en/installation/install-options/server-config/#cluster-options}}):
+
+```bash
+curl -sfL https://get.k3s.io | sh -s - server \
+ --token=SECRET \
+ --datastore-endpoint="mysql://username:password@tcp(hostname:3306)/database-name"
+```
+
+There are a few config flags that must be the same in all server nodes:
+
+* Network related flags: `--cluster-dns`, `--cluster-domain`, `--cluster-cidr`, `--service-cidr`
+* Flags controlling the deployment of certain components: `--disable-helm-controller`, `--disable-kube-proxy`, `--disable-network-policy` and any component passed to `--disable`
+* Feature related flags: `--secrets-encryption`
+
+> **Note:** Ensure that you retain a copy of this token as it is required when restoring from backup and adding nodes. Previously, K3s did not enforce the use of a token when using external SQL datastores.
+
+### 5. Optional: Join Agent Nodes
Because K3s server nodes are schedulable by default, the minimum number of nodes for an HA K3s server cluster is two server nodes and zero agent nodes. To add nodes designated to run your apps and services, join agent nodes to your cluster.
Joining agent nodes in an HA cluster is the same as joining agent nodes in a single server cluster. You just need to specify the URL the agent should register to and the token it should use.
-```
+```bash
K3S_TOKEN=SECRET k3s agent --server https://fixed-registration-address:6443
```
diff --git a/content/k3s/latest/en/installation/install-options/_index.md b/content/k3s/latest/en/installation/install-options/_index.md
index efab7e77072..e38f4cb7f01 100644
--- a/content/k3s/latest/en/installation/install-options/_index.md
+++ b/content/k3s/latest/en/installation/install-options/_index.md
@@ -46,6 +46,11 @@ When using this method to install K3s, the following environment variables can b
| `INSTALL_K3S_CHANNEL_URL` | Channel URL for fetching K3s download URL. Defaults to https://update.k3s.io/v1-release/channels. |
| `INSTALL_K3S_CHANNEL` | Channel to use for fetching K3s download URL. Defaults to "stable". Options include: `stable`, `latest`, `testing`. |
+This example shows where to place aforementioned environment variables as options (after the pipe):
+
+```
+curl -sfL https://get.k3s.io | INSTALL_K3S_CHANNEL=latest sh -
+```
Environment variables which begin with `K3S_` will be preserved for the systemd and openrc services to use.
@@ -53,7 +58,7 @@ Setting `K3S_URL` without explicitly setting an exec command will default the co
When running the agent `K3S_TOKEN` must also be set.
-# Installing K3s from the Binary
+### Options for installation from binary
As stated, the installation script is primarily concerned with configuring K3s to run as a service. If you choose to not use the script, you can run K3s simply by downloading the binary from our [release page](https://github.com/rancher/k3s/releases/latest), placing it on your path, and executing it. The K3s binary supports the following commands:
diff --git a/content/k3s/latest/en/installation/install-options/how-to-flags/_index.md b/content/k3s/latest/en/installation/install-options/how-to-flags/_index.md
index 25aa9b43567..d7392feba23 100644
--- a/content/k3s/latest/en/installation/install-options/how-to-flags/_index.md
+++ b/content/k3s/latest/en/installation/install-options/how-to-flags/_index.md
@@ -27,9 +27,24 @@ If this command is not specified as a server or agent command, it will default t
The final systemd command resolves to a combination of this environment variable and script args. To illustrate this, the following commands result in the same behavior of registering a server without flannel:
```bash
-curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--no-flannel" sh -s -
-curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="server --no-flannel" sh -s -
-curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="server" sh -s - --no-flannel
-curl -sfL https://get.k3s.io | sh -s - server --no-flannel
-curl -sfL https://get.k3s.io | sh -s - --no-flannel
-```
\ No newline at end of file
+curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--flannel-backend none" sh -s -
+curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="server --flannel-backend none" sh -s -
+curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="server" sh -s - --flannel-backend none
+curl -sfL https://get.k3s.io | sh -s - server --flannel-backend none
+curl -sfL https://get.k3s.io | sh -s - --flannel-backend none
+```
+
+### Example C: CONFIG FILE
+
+Before installing k3s, you can create a file called `config.yaml` containing fields that match CLI flags. That file needs to be in the path: `/etc/rancher/k3s/config.yaml` for k3s to consume it.
+
+The fields in the config file drop the starting `--` from the matching CLI flag. For example:
+
+```
+write-kubeconfig-mode: 644
+token: "secret"
+node-ip: 10.0.10.22,2a05:d012:c6f:4655:d73c:c825:a184:1b75
+cluster-cidr: 10.42.0.0/16,2001:cafe:42:0::/56
+service-cidr: 10.43.0.0/16,2001:cafe:42:1::/112
+disable-network-policy: true
+```
diff --git a/content/k3s/latest/en/installation/install-options/server-config/_index.md b/content/k3s/latest/en/installation/install-options/server-config/_index.md
index a60c075bbd5..853d2ccb491 100644
--- a/content/k3s/latest/en/installation/install-options/server-config/_index.md
+++ b/content/k3s/latest/en/installation/install-options/server-config/_index.md
@@ -39,6 +39,21 @@ In this section, you'll learn how to configure the K3s server.
| `--datastore-cafile` value | `K3S_DATASTORE_CAFILE` | TLS Certificate Authority file used to secure datastore backend communication |
| `--datastore-certfile` value | `K3S_DATASTORE_CERTFILE` | TLS certification file used to secure datastore backend communication |
| `--datastore-keyfile` value | `K3S_DATASTORE_KEYFILE` | TLS key file used to secure datastore backend communication |
+| `--etcd-expose-metrics` | N/A | Expose etcd metrics to client interface. (Default false) |
+| `--etcd-disable-snapshots` | N/A | Disable automatic etcd snapshots |
+| `--etcd-snapshot-name` value | N/A | Set the base name of etcd snapshots. Default: etcd-snapshot- (default: "etcd-snapshot") |
+| `--etcd-snapshot-schedule-cron` value | N/A | Snapshot interval time in cron spec. eg. every 5 hours '* */5 * * *' (default: "0 */12 * * *") |
+| `--etcd-snapshot-retention` value | N/A | Number of snapshots to retain (Default: 5) |
+| `--etcd-snapshot-dir` value | N/A | Directory to save db snapshots. (Default location: ${data-dir}/db/snapshots) |
+| `--etcd-s3` | N/A | Enable backup to S3 |
+| `--etcd-s3-endpoint` value | N/A | S3 endpoint url (default: "s3.amazonaws.com") |
+| `--etcd-s3-endpoint-ca` value | N/A | S3 custom CA cert to connect to S3 endpoint |
+| `--etcd-s3-skip-ssl-verify` | N/A | Disables S3 SSL certificate validation |
+| `--etcd-s3-access-key` value | `AWS_ACCESS_KEY_ID` | S3 access key |
+| `--etcd-s3-secret-key` value | `AWS_SECRET_ACCESS_KEY` | S3 secret key |
+| `--etcd-s3-bucket` value | N/A | S3 bucket name |
+| `--etcd-s3-region` value | N/A | S3 region / bucket location (optional) (default: "us-east-1") |
+| `--etcd-s3-folder` value | N/A | S3 folder |
### Cluster Options
@@ -66,6 +81,10 @@ K3s agent options are available as server options because the server has the age
| `--with-node-id` | N/A | Append id to node name | (agent/node)
| `--node-label` value | N/A | Registering and starting kubelet with set of labels |
| `--node-taint` value | N/A | Registering kubelet with set of taints |
+| `--image-credential-provider-bin-dir` value | N/A | The path to the directory where credential provider plugin binaries are located (default: "/var/lib/rancher/credentialprovider/bin") |
+| `--image-credential-provider-config` value | N/A | The path to the credential provider plugin config file (default: "/var/lib/rancher/credentialprovider/config.yaml") |
+| `--selinux` | `K3S_SELINUX` | Enable SELinux in containerd |
+| `--lb-server-port` value | `K3S_LB_SERVER_PORT` | Local port for supervisor client load-balancer. If the supervisor and apiserver are not colocated an additional port 1 less than this port will also be used for the apiserver client load-balancer. (default: 6444) |
### Agent Runtime
@@ -74,6 +93,7 @@ K3s agent options are available as server options because the server has the age
| `--docker` | N/A | Use docker instead of containerd | (agent/runtime)
| `--container-runtime-endpoint` value | N/A | Disable embedded containerd and use alternative CRI implementation |
| `--pause-image` value | "docker.io/rancher/pause:3.1" | Customized pause image for containerd or Docker sandbox |
+| `--snapshotter` value | N/A | Override default containerd snapshotter (default: "overlayfs") |
| `--private-registry` value | "/etc/rancher/k3s/registries.yaml" | Private registry configuration file |
### Agent Networking
@@ -94,6 +114,7 @@ the agent options are there because the server has the agent process embedded wi
| Flag | Default | Description |
|------|---------|-------------|
+| `--debug` | N/A | Turn on debug logs |
| `-v` value | 0 | Number for the log level verbosity |
| `--vmodule` value | N/A | Comma-separated list of pattern=N settings for file-filtered logging |
| `--log value, -l` value | N/A | Log to file |
@@ -122,6 +143,7 @@ the agent options are there because the server has the agent process embedded wi
|------|---------|-------------|
| `--cluster-cidr` value | "10.42.0.0/16" | Network CIDR to use for pod IPs |
| `--service-cidr` value | "10.43.0.0/16" | Network CIDR to use for services IPs |
+| `--service-node-port-range` value | "30000-32767" | Port range to reserve for services with NodePort visibility |
| `--cluster-dns` value | "10.43.0.10" | Cluster IP for coredns service. Should be in your service-cidr range |
| `--cluster-domain` value | "cluster.local" | Cluster Domain |
| `--flannel-backend` value | "vxlan" | One of 'none', 'vxlan', 'ipsec', 'host-gw', or 'wireguard' |
@@ -130,6 +152,7 @@ the agent options are there because the server has the agent process embedded wi
| Flag | Description |
|------|--------------|
+| `--etcd-arg` value | Customized flag for etcd process |
| `--kube-apiserver-arg` value | Customized flag for kube-apiserver process |
| `--kube-scheduler-arg` value | Customized flag for kube-scheduler process |
| `--kube-controller-manager-arg` value | Customized flag for kube-controller-manager process |
@@ -148,6 +171,7 @@ the agent options are there because the server has the agent process embedded wi
| `--disable` value | Do not deploy packaged components and delete any deployed components (valid items: coredns, servicelb, traefik,local-storage, metrics-server) |
| `--disable-scheduler` | Disable Kubernetes default scheduler |
| `--disable-cloud-controller` | Disable k3s default cloud controller manager |
+| `--disable-kube-proxy` | Disable running kube-proxy |
| `--disable-network-policy` | Disable k3s default network policy controller |
### Customized Flags for Kubernetes Processes
@@ -190,6 +214,7 @@ USAGE:
k3s server [OPTIONS]
OPTIONS:
+ --config FILE, -c FILE (config) Load configuration from FILE (default: "/etc/rancher/k3s/config.yaml") [$K3S_CONFIG_FILE] --debug (logging) Turn on debug logs [$K3S_DEBUG]
-v value (logging) Number for the log level verbosity (default: 0)
--vmodule value (logging) Comma-separated list of pattern=N settings for file-filtered logging
--log value, -l value (logging) Log to file
@@ -202,6 +227,7 @@ OPTIONS:
--data-dir value, -d value (data) Folder to hold state default /var/lib/rancher/k3s or ${HOME}/.rancher/k3s if not root
--cluster-cidr value (networking) Network CIDR to use for pod IPs (default: "10.42.0.0/16")
--service-cidr value (networking) Network CIDR to use for services IPs (default: "10.43.0.0/16")
+ --service-node-port-range value (networking) Port range to reserve for services with NodePort visibility (default: "30000-32767")
--cluster-dns value (networking) Cluster IP for coredns service. Should be in your service-cidr range (default: 10.43.0.10)
--cluster-domain value (networking) Cluster Domain (default: "cluster.local")
--flannel-backend value (networking) One of 'none', 'vxlan', 'ipsec', 'host-gw', or 'wireguard' (default: "vxlan")
@@ -209,6 +235,7 @@ OPTIONS:
--token-file value (cluster) File containing the cluster-secret/token [$K3S_TOKEN_FILE]
--write-kubeconfig value, -o value (client) Write kubeconfig for admin client to this file [$K3S_KUBECONFIG_OUTPUT]
--write-kubeconfig-mode value (client) Write kubeconfig with this mode [$K3S_KUBECONFIG_MODE]
+ --etcd-arg value (flags) Customized flag for etcd process
--kube-apiserver-arg value (flags) Customized flag for kube-apiserver process
--kube-scheduler-arg value (flags) Customized flag for kube-scheduler process
--kube-controller-manager-arg value (flags) Customized flag for kube-controller-manager process
@@ -217,18 +244,37 @@ OPTIONS:
--datastore-cafile value (db) TLS Certificate Authority file used to secure datastore backend communication [$K3S_DATASTORE_CAFILE]
--datastore-certfile value (db) TLS certification file used to secure datastore backend communication [$K3S_DATASTORE_CERTFILE]
--datastore-keyfile value (db) TLS key file used to secure datastore backend communication [$K3S_DATASTORE_KEYFILE]
+ --etcd-expose-metrics (db) Expose etcd metrics to client interface. (Default false)
+ --etcd-disable-snapshots (db) Disable automatic etcd snapshots
+ --etcd-snapshot-name value (db) Set the base name of etcd snapshots. Default: etcd-snapshot- (default: "etcd-snapshot")
+ --etcd-snapshot-schedule-cron value (db) Snapshot interval time in cron spec. eg. every 5 hours '* */5 * * *' (default: "0 */12 * * *")
+ --etcd-snapshot-retention value (db) Number of snapshots to retain Default: 5 (default: 5)
+ --etcd-snapshot-dir value (db) Directory to save db snapshots. (Default location: ${data-dir}/db/snapshots)
+ --etcd-s3 (db) Enable backup to S3
+ --etcd-s3-endpoint value (db) S3 endpoint url (default: "s3.amazonaws.com")
+ --etcd-s3-endpoint-ca value (db) S3 custom CA cert to connect to S3 endpoint
+ --etcd-s3-skip-ssl-verify (db) Disables S3 SSL certificate validation
+ --etcd-s3-access-key value (db) S3 access key [$AWS_ACCESS_KEY_ID]
+ --etcd-s3-secret-key value (db) S3 secret key [$AWS_SECRET_ACCESS_KEY]
+ --etcd-s3-bucket value (db) S3 bucket name
+ --etcd-s3-region value (db) S3 region / bucket location (optional) (default: "us-east-1")
+ --etcd-s3-folder value (db) S3 folder
--default-local-storage-path value (storage) Default local storage path for local provisioner storage class
--disable value (components) Do not deploy packaged components and delete any deployed components (valid items: coredns, servicelb, traefik, local-storage, metrics-server)
--disable-scheduler (components) Disable Kubernetes default scheduler
--disable-cloud-controller (components) Disable k3s default cloud controller manager
+ --disable-kube-proxy (components) Disable running kube-proxy
--disable-network-policy (components) Disable k3s default network policy controller
--node-name value (agent/node) Node name [$K3S_NODE_NAME]
--with-node-id (agent/node) Append id to node name
--node-label value (agent/node) Registering and starting kubelet with set of labels
--node-taint value (agent/node) Registering kubelet with set of taints
+ --image-credential-provider-bin-dir value (agent/node) The path to the directory where credential provider plugin binaries are located (default: "/var/lib/rancher/credentialprovider/bin")
+ --image-credential-provider-config value (agent/node) The path to the credential provider plugin config file (default: "/var/lib/rancher/credentialprovider/config.yaml")
--docker (agent/runtime) Use docker instead of containerd
--container-runtime-endpoint value (agent/runtime) Disable embedded containerd and use alternative CRI implementation
--pause-image value (agent/runtime) Customized pause image for containerd or docker sandbox (default: "docker.io/rancher/pause:3.1")
+ --snapshotter value (agent/runtime) Override default containerd snapshotter (default: "overlayfs")
--private-registry value (agent/runtime) Private registry configuration file (default: "/etc/rancher/k3s/registries.yaml")
--node-ip value, -i value (agent/networking) IP address to advertise for node
--node-external-ip value (agent/networking) External IP address to advertise for node
@@ -237,14 +283,19 @@ OPTIONS:
--flannel-conf value (agent/networking) Override default flannel config file
--kubelet-arg value (agent/flags) Customized flag for kubelet process
--kube-proxy-arg value (agent/flags) Customized flag for kube-proxy process
+ --protect-kernel-defaults (agent/node) Kernel tuning behavior. If set, error if kernel tunables are different than kubelet defaults.
--rootless (experimental) Run rootless
--agent-token value (experimental/cluster) Shared secret used to join agents to the cluster, but not servers [$K3S_AGENT_TOKEN]
--agent-token-file value (experimental/cluster) File containing the agent secret [$K3S_AGENT_TOKEN_FILE]
--server value, -s value (experimental/cluster) Server to connect to, used to join a cluster [$K3S_URL]
--cluster-init (experimental/cluster) Initialize new cluster master [$K3S_CLUSTER_INIT]
--cluster-reset (experimental/cluster) Forget all peers and become a single cluster new cluster master [$K3S_CLUSTER_RESET]
+ --cluster-reset-restore-path value (db) Path to snapshot file to be restored
--secrets-encryption (experimental) Enable Secret encryption at rest
+ --system-default-registry value (image) Private registry to be used for all system images [$K3S_SYSTEM_DEFAULT_REGISTRY]
+ --selinux (agent/node) Enable SELinux in containerd [$K3S_SELINUX]
+ --lb-server-port value (agent/node) Local port for supervisor client load-balancer. If the supervisor and apiserver are not colocated an additional port 1 less than this port will also be used for the apiserver client load-balancer. (default: 6444) [$K3S_LB_SERVER_PORT]
--no-flannel (deprecated) use --flannel-backend=none
--no-deploy value (deprecated) Do not deploy packaged components (valid items: coredns, servicelb, traefik, local-storage, metrics-server)
--cluster-secret value (deprecated) use --token [$K3S_CLUSTER_SECRET]
-```
\ No newline at end of file
+```
diff --git a/content/k3s/latest/en/installation/installation-requirements/_index.md b/content/k3s/latest/en/installation/installation-requirements/_index.md
index 1b5d14825de..3daee8b3ccc 100644
--- a/content/k3s/latest/en/installation/installation-requirements/_index.md
+++ b/content/k3s/latest/en/installation/installation-requirements/_index.md
@@ -51,6 +51,7 @@ If you wish to utilize the metrics server, you will need to open port 10250 on e
If you plan on achieving high availability with embedded etcd, server nodes must be accessible to each other on ports 2379 and 2380.
> **Important:** The VXLAN port on nodes should not be exposed to the world as it opens up your cluster network to be accessed by anyone. Run your nodes behind a firewall/security group that disables access to port 8472.
+> **Warning:** Flannel relies on the [Bridge CNI plugin](https://www.cni.dev/plugins/current/main/bridge/) to create a L2 network that switches traffic. Rogue pods with NET_RAW capabilities can abuse that L2 network to launch attacks such as [ARP spoofing](https://static.sched.com/hosted_files/kccncna19/72/ARP%20DNS%20spoof.pdf). Therefore, as documented in the [kubernetes docs](https://kubernetes.io/docs/concepts/security/pod-security-standards/), please set a restricted profile that disables NET_RAW on non-trustable pods.
Inbound Rules for K3s Server Nodes
diff --git a/content/k3s/latest/en/installation/kube-dashboard/_index.md b/content/k3s/latest/en/installation/kube-dashboard/_index.md
index cb5c15bfc36..880a16c630d 100644
--- a/content/k3s/latest/en/installation/kube-dashboard/_index.md
+++ b/content/k3s/latest/en/installation/kube-dashboard/_index.md
@@ -86,4 +86,6 @@ sudo k3s kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard
```bash
sudo k3s kubectl delete ns kubernetes-dashboard
+sudo k3s kubectl delete clusterrolebinding kubernetes-dashboard
+sudo k3s kubectl delete clusterrole kubernetes-dashboard
```
diff --git a/content/k3s/latest/en/installation/network-options/_index.md b/content/k3s/latest/en/installation/network-options/_index.md
index 97873e4151b..dcc65a03aea 100644
--- a/content/k3s/latest/en/installation/network-options/_index.md
+++ b/content/k3s/latest/en/installation/network-options/_index.md
@@ -69,3 +69,20 @@ You should see that IP forwarding is set to true.
{{% /tab %}}
{{% /tabs %}}
+
+### Dual-stack installation
+
+Dual-stack networking must be configured when the cluster is first created. It cannot be enabled on an existing single-stack cluster.
+
+To enable dual-stack in k3s, you must provide valid dual-stack `cluster-cidr` and `service-cidr`, and set `disable-network-policy` on all server nodes. Both servers and agents must provide valid dual-stack `node-ip` settings. Node address auto-detection and network policy enforcement are not supported on dual-stack clusters when using the default flannel CNI. Besides, only vxlan backend is supported at the moment. This is an example of a valid configuration:
+
+```
+node-ip: 10.0.10.7,2a05:d012:c6f:4611:5c2:5602:eed2:898c
+cluster-cidr: 10.42.0.0/16,2001:cafe:42:0::/56
+service-cidr: 10.43.0.0/16,2001:cafe:42:1::/112
+disable-network-policy: true
+```
+
+Note that you can choose whatever `cluster-cidr` and `service-cidr` value, however the `node-ip` values must correspond to the ip addresses of your main interface. Remember to allow ipv6 traffic if you are deploying in a public cloud.
+
+If you are using a custom cni plugin, i.e. a cni plugin different from flannel, the previous configuration might not be enough to enable dual-stack in the cni plugin. Please check how to enable dual-stack in its documentation and verify if network policies can be enabled.
diff --git a/content/k3s/latest/en/known-issues/_index.md b/content/k3s/latest/en/known-issues/_index.md
index 8107e8a7451..d12fafa2a5c 100644
--- a/content/k3s/latest/en/known-issues/_index.md
+++ b/content/k3s/latest/en/known-issues/_index.md
@@ -12,6 +12,6 @@ If you plan to use K3s with docker, Docker installed via a snap package is not r
If you are running iptables in nftables mode instead of legacy you might encounter issues. We recommend utilizing newer iptables (such as 1.6.1+) to avoid issues.
-**RootlessKit**
+**Rootless Mode**
-Running K3s with RootlessKit is experimental and has several [known issues.]({{}}/k3s/latest/en/advanced/#known-issues-with-rootlesskit)
+Running K3s with Rootless mode is experimental and has several [known issues.]({{}}/k3s/latest/en/advanced/#known-issues-with-rootless-mode)
diff --git a/content/k3s/latest/en/networking/_index.md b/content/k3s/latest/en/networking/_index.md
index 95cc646e57a..2dff22e927d 100644
--- a/content/k3s/latest/en/networking/_index.md
+++ b/content/k3s/latest/en/networking/_index.md
@@ -28,11 +28,11 @@ If you don't install CoreDNS, you will need to install a cluster DNS provider yo
[Traefik](https://traefik.io/) is a modern HTTP reverse proxy and load balancer made to deploy microservices with ease. It simplifies networking complexity while designing, deploying, and running applications.
-Traefik is deployed by default when starting the server. For more information see [Auto Deploying Manifests]({{}}/k3s/latest/en/advanced/#auto-deploying-manifests). The default config file is found in `/var/lib/rancher/k3s/server/manifests/traefik.yaml` and any changes made to this file will automatically be deployed to Kubernetes in a manner similar to `kubectl apply`.
+Traefik is deployed by default when starting the server. For more information see [Auto Deploying Manifests]({{}}/k3s/latest/en/advanced/#auto-deploying-manifests). The default config file is found in `/var/lib/rancher/k3s/server/manifests/traefik.yaml`.
-The Traefik ingress controller will use ports 80, 443, and 8080 on the host (i.e. these will not be usable for HostPort or NodePort).
+The Traefik ingress controller will use ports 80 and 443 on the host (i.e. these will not be usable for HostPort or NodePort).
-Traefik can be configured by editing the `traefik.yaml` file. To prevent k3s from using or overwriting the modified version, deploy k3s with `--no-deploy traefik` and store the modified copy in the `k3s/server/manifests` directory. For more information, refer to the official [Traefik for Helm Configuration Parameters.](https://github.com/helm/charts/tree/master/stable/traefik#configuration)
+The `traefik.yaml` file should not be edited manually, because k3s would overwrite it again once it is restarted. Instead you can customize Traefik by creating an additional `HelmChartConfig` manifest in `/var/lib/rancher/k3s/server/manifests`. For more details and an example see [Customizing Packaged Components with HelmChartConfig]({{}}/k3s/latest/en/helm/#customizing-packaged-components-with-helmchartconfig). For more information on the possible configuration values, refer to the official [Traefik Helm Configuration Parameters.](https://github.com/traefik/traefik-helm-chart/tree/master/traefik).
To disable it, start each server with the `--disable traefik` option.
@@ -42,7 +42,7 @@ To migrate from an older Traefik v1 instance please refer to the [Traefik docume
# Service Load Balancer
-Any service load balancer (LB) can be leveraged in your Kubernetes cluster. K3s provides a load balancer known as [Klipper Load Balancer](https://github.com/rancher/klipper-lb) that uses available host ports.
+Any service load balancer (LB) can be leveraged in your Kubernetes cluster. K3s provides a load balancer known as [Klipper Load Balancer](https://github.com/k3s-io/klipper-lb) that uses available host ports.
Upstream Kubernetes allows a Service of type LoadBalancer to be created, but doesn't include the implementation of the LB. Some LB services require a cloud provider such as Amazon EC2 or Microsoft Azure. By contrast, the K3s service LB makes it possible to use an LB service without a cloud provider.
diff --git a/content/k3s/latest/en/security/hardening_guide/_index.md b/content/k3s/latest/en/security/hardening_guide/_index.md
index 53964eb43dd..90e888a8cd4 100644
--- a/content/k3s/latest/en/security/hardening_guide/_index.md
+++ b/content/k3s/latest/en/security/hardening_guide/_index.md
@@ -302,6 +302,68 @@ spec:
- Ingress
```
+The metrics-server and Traefik ingress controller will be blocked by default if network policies are not created to allow access. Traefik v1 as packaged in K3s version 1.20 and below uses different labels than Traefik v2; ensure that you only use the sample yaml below that is associated with the version of Traefik present on your cluster.
+
+```yaml
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: allow-all-metrics-server
+ namespace: kube-system
+spec:
+ podSelector:
+ matchLabels:
+ k8s-app: metrics-server
+ ingress:
+ - {}
+ policyTypes:
+ - Ingress
+---
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: allow-all-svclbtraefik-ingress
+ namespace: kube-system
+spec:
+ podSelector:
+ matchLabels:
+ app: svclb-traefik
+ ingress:
+ - {}
+ policyTypes:
+ - Ingress
+---
+# Below is for 1.20 ONLY -- remove if on 1.21 or above
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: allow-all-traefik-v120-ingress
+ namespace: kube-system
+spec:
+ podSelector:
+ matchLabels:
+ app: traefik
+ ingress:
+ - {}
+ policyTypes:
+ - Ingress
+---
+# Below is for 1.21 and above ONLY -- remove if on 1.20 or below
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: allow-all-traefik-v121-ingress
+ namespace: kube-system
+spec:
+ podSelector:
+ matchLabels:
+ app.kubernetes.io/name: traefik
+ ingress:
+ - {}
+ policyTypes:
+ - Ingress
+```
+
> **Note:** Operators must manage network policies as normal for additional namespaces that are created.
## Known Issues
diff --git a/content/k3s/latest/en/security/secrets_encryption/_index.md b/content/k3s/latest/en/security/secrets_encryption/_index.md
new file mode 100644
index 00000000000..a7491e2fb63
--- /dev/null
+++ b/content/k3s/latest/en/security/secrets_encryption/_index.md
@@ -0,0 +1,241 @@
+---
+title: Secrets Encryption
+weight: 26
+---
+
+# Secrets Encryption Config
+_Available as of v1.17.4+k3s1_
+
+K3s supports enabling secrets encryption at rest by passing the flag `--secrets-encryption` on a server; this flag will do the following automatically:
+
+- Generate an AES-CBC key
+- Generate an encryption config file with the generated key
+- Pass the config to the KubeAPI as encryption-provider-config
+
+Example of the encryption config file:
+```
+{
+ "kind": "EncryptionConfiguration",
+ "apiVersion": "apiserver.config.k8s.io/v1",
+ "resources": [
+ {
+ "resources": [
+ "secrets"
+ ],
+ "providers": [
+ {
+ "aescbc": {
+ "keys": [
+ {
+ "name": "aescbckey",
+ "secret": "xxxxxxxxxxxxxxxxxxx"
+ }
+ ]
+ }
+ },
+ {
+ "identity": {}
+ }
+ ]
+ }
+ ]
+}
+```
+
+
+## Secrets Encryption Tool
+_Available as of v1.21.8+k3s1_
+
+K3s contains a utility tool `secrets-encrypt`, which enables automatic control over the following:
+
+- Disabling/Enabling secrets encryption
+- Adding new encryption keys
+- Rotating and deleting encryption keys
+- Reencrypting secrets
+
+>**Warning:** Failure to follow proper procedure for rotating encryption keys can leave your cluster permanently corrupted. Proceed with caution.
+
+### Single-Server Encryption Key Rotation
+To rotate secrets encryption keys on a single-node cluster:
+
+- Start the K3s server with the flag `--secrets-encryption`
+
+>**Note:** Starting K3s without encryption and enabling it at a later time is currently *not* supported.
+
+1. Prepare
+
+ ```
+ k3s secrets-encrypt prepare
+ ```
+
+2. Kill and restart the K3s server with same arguments
+3. Rotate
+
+ ```
+ k3s secrets-encrypt rotate
+ ```
+
+4. Kill and restart the K3s server with same arguments
+5. Reencrypt
+
+ ```
+ k3s secrets-encrypt reencrypt
+ ```
+
+### High-Availability Encryption Key Rotation
+The steps are the same for both embedded DB and external DB clusters.
+
+To rotate secrets encryption keys on HA setups:
+
+>**Notes:**
+>
+> - Starting K3s without encryption and enabling it at a later time is currently *not* supported.
+>
+> - While not required, it is recommended that you pick one server node from which to run the `secrets-encrypt` commands.
+
+- Start up all three K3s servers with the `--secrets-encryption` flag. For brevity, the servers will be referred to as S1, S2, S3.
+
+1. Prepare on S1
+
+ ```
+ k3s secrets-encrypt prepare
+ ```
+
+2. Kill and restart S1 with same arguments
+3. Once S1 is up, kill and restart the S2 and S3
+
+4. Rotate on S1
+
+ ```
+ k3s secrets-encrypt rotate
+ ```
+
+5. Kill and restart S1 with same arguments
+6. Once S1 is up, kill and restart the S2 and S3
+
+7. Reencrypt on S1
+
+ ```
+ k3s secrets-encrypt reencrypt
+ ```
+
+8. Kill and restart S1 with same arguments
+9. Once S1 is up, kill and restart the S2 and S3
+
+### Single-Server Secrets Encryption Disable/Enable
+After launching a server with `--secrets-encryption` flag, secrets encryption can be disabled.
+
+To disable secrets encryption on a single-node cluster:
+
+1. Disable
+
+ ```
+ k3s secrets-encrypt disable
+ ```
+
+2. Kill and restart the K3s server with same arguments
+
+3. Reencrypt with flags
+
+ ```
+ k3s secrets-encrypt reencrypt --force --skip
+ ```
+
+To re-enable secrets encryption on a single node cluster:
+
+1. Enable
+
+ ```
+ k3s secrets-encrypt enable
+ ```
+
+2. Kill and restart the K3s server with same arguments
+
+3. Reencrypt with flags
+
+ ```
+ k3s secrets-encrypt reencrypt --force --skip
+ ```
+
+### High-Availability Secrets Encryption Disable/Enable
+After launching a HA cluster with `--secrets-encryption` flags, secrets encryption can be disabled.
+>**Note:** While not required, it is recommended that you pick one server node from which to run the `secrets-encrypt` commands.
+
+For brevity, the three servers used in this guide will be referred to as S1, S2, S3.
+
+To disable secrets encryption on a HA cluster:
+
+1. Disable on S1
+
+ ```
+ k3s secrets-encrypt disable
+ ```
+
+2. Kill and restart S1 with same arguments
+3. Once S1 is up, kill and restart the S2 and S3
+
+
+4. Reencrypt with flags on S1
+
+ ```
+ k3s secrets-encrypt reencrypt --force --skip
+ ```
+
+To re-enable secrets encryption on a HA cluster:
+
+1. Enable on S1
+
+ ```
+ k3s secrets-encrypt enable
+ ```
+
+2. Kill and restart S1 with same arguments
+3. Once S1 is up, kill and restart the S2 and S3
+
+4. Reencrypt with flags on S1
+
+ ```
+ k3s secrets-encrypt reencrypt --force --skip
+ ```
+
+
+### Secrets Encryption Status
+The secrets-encrypt tool includes a `status` command that displays information about the current status of secrets encryption on the node.
+
+An example of the command on a single-server node:
+```
+$ k3s secrets-encrypt status
+Encryption Status: Enabled
+Current Rotation Stage: start
+Server Encryption Hashes: All hashes match
+
+Active Key Type Name
+------ -------- ----
+ * AES-CBC aescbckey
+
+```
+
+Another example on HA cluster, after rotating the keys, but before restarting the servers:
+```
+$ k3s secrets-encrypt status
+Encryption Status: Enabled
+Current Rotation Stage: rotate
+Server Encryption Hashes: hash does not match between node-1 and node-2
+
+Active Key Type Name
+------ -------- ----
+ * AES-CBC aescbckey-2021-12-10T22:54:38Z
+ AES-CBC aescbckey
+
+```
+
+Details on each section are as follows:
+
+- __Encryption Status__: Displayed whether secrets encryption is disabled or enabled on the node
+- __Current Rotation Stage__: Indicates the current rotation stage on the node.
+ Stages are: `start`, `prepare`, `rotate`, `reencrypt_request`, `reencrypt_active`, `reencrypt_finished`
+- __Server Encryption Hashes__: Useful for HA clusters, this indicates whether all servers are on the same stage with their local files. This can be used to identify whether a restart of servers is required before proceeding to the next stage. In the HA example above, node-1 and node-2 have different hashes, indicating that they currently do not have the same encryption configuration. Restarting the servers will sync up their configuration.
+- __Key Table__: Summarizes information about the secrets encryption keys found on the node.
+ * __Active__: The "*" indicates which, if any, of the keys are currently used for secrets encryption. An active key is used by Kubernetes to encrypt any new secrets.
+ * __Key Type__: All keys using this tool are `AES-CBC` type. See more info [here.](https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/#providers)
+ * __Name__: Name of the encryption key.
\ No newline at end of file
diff --git a/content/k3s/latest/en/security/self_assessment/_index.md b/content/k3s/latest/en/security/self_assessment/_index.md
index 6dc8799df5e..ff7ba082384 100644
--- a/content/k3s/latest/en/security/self_assessment/_index.md
+++ b/content/k3s/latest/en/security/self_assessment/_index.md
@@ -2040,7 +2040,7 @@ Where access to the Kubernetes API from a pod is required, a specific service ac
The default service account should be configured such that it does not provide a service account token and does not have any explicit rights assignments.
-**Result:** Fail. Currently requires operator intervention See the [Hardening Guide]({{}}/rancher/k3s/latest/en/security/hardening_guide) for details.
+**Result:** Fail. Currently requires operator intervention See the [Hardening Guide]({{}}/k3s/latest/en/security/hardening_guide) for details.
**Audit:**
For each namespace in the cluster, review the rights assigned to the default service account and ensure that it has no roles or cluster roles bound to it apart from the defaults. Additionally ensure that the automountServiceAccountToken: false setting is in place for each default service account.
diff --git a/content/k3s/latest/en/upgrades/_index.md b/content/k3s/latest/en/upgrades/_index.md
index 2345c08bbb4..1b9c86805ad 100644
--- a/content/k3s/latest/en/upgrades/_index.md
+++ b/content/k3s/latest/en/upgrades/_index.md
@@ -9,4 +9,6 @@ This section describes how to upgrade your K3s cluster.
[Automated upgrades]({{< baseurl >}}/k3s/latest/en/upgrades/automated/) describes how to perform Kubernetes-native automated upgrades using Rancher's [system-upgrade-controller](https://github.com/rancher/system-upgrade-controller).
-> The experimental embedded Dqlite data store was deprecated in K3s v1.19.1. Please note that upgrades from experimental Dqlite to experimental embedded etcd are not supported. If you attempt an upgrade it will not succeed and data will be lost.
\ No newline at end of file
+> If Traefik is not disabled K3s versions 1.20 and earlier will have installed Traefik v1, while K3s versions 1.21 and later will install Traefik v2 if v1 is not already present. To upgrade Traefik, please refer to the [Traefik documentation](https://doc.traefik.io/traefik/migration/v1-to-v2/) and use the [migration tool](https://github.com/traefik/traefik-migration-tool) to migrate from the older Traefik v1 to Traefik v2.
+
+> The experimental embedded Dqlite data store was deprecated in K3s v1.19.1. Please note that upgrades from experimental Dqlite to experimental embedded etcd are not supported. If you attempt an upgrade it will not succeed and data will be lost.
diff --git a/content/k3s/latest/en/upgrades/automated/_index.md b/content/k3s/latest/en/upgrades/automated/_index.md
index d61e541d5c3..f95da7de0e5 100644
--- a/content/k3s/latest/en/upgrades/automated/_index.md
+++ b/content/k3s/latest/en/upgrades/automated/_index.md
@@ -24,16 +24,21 @@ For more details on the design and architecture of the system-upgrade-controller
- [system-upgrade-controller](https://github.com/rancher/system-upgrade-controller)
- [k3s-upgrade](https://github.com/rancher/k3s-upgrade)
-To automate upgrades in this manner you must:
+To automate upgrades in this manner, you must do the following:
1. Install the system-upgrade-controller into your cluster
1. Configure plans
+>**Note:** Users can and should use Rancher to upgrade their K3s cluster if Rancher is managing it.
+>
+> * If you choose to use Rancher to upgrade, the following steps below are taken care of for you.
+> * If you choose not to use Rancher to upgrade, you must use the following steps below to do so.
+
### Install the system-upgrade-controller
-The system-upgrade-controller can be installed as a deployment into your cluster. The deployment requires a service-account, clusterRoleBinding, and a configmap. To install these components, run the following command:
+ The system-upgrade-controller can be installed as a deployment into your cluster. The deployment requires a service-account, clusterRoleBinding, and a configmap. To install these components, run the following command:
```
-kubectl apply -f https://github.com/rancher/system-upgrade-controller/releases/download/v0.6.2/system-upgrade-controller.yaml
+kubectl apply -f https://github.com/rancher/system-upgrade-controller/releases/latest/download/system-upgrade-controller.yaml
```
The controller can be configured and customized via the previously mentioned configmap, but the controller must be redeployed for the changes to be applied.
@@ -78,7 +83,7 @@ spec:
args:
- prepare
- server-plan
- image: rancher/k3s-upgrade:v1.17.4-k3s1
+ image: rancher/k3s-upgrade
serviceAccountName: system-upgrade
upgrade:
image: rancher/k3s-upgrade
diff --git a/content/os/v1.x/en/_index.md b/content/os/v1.x/en/_index.md
index 55f072a94f5..fcd43aea12f 100644
--- a/content/os/v1.x/en/_index.md
+++ b/content/os/v1.x/en/_index.md
@@ -5,7 +5,7 @@ description: RancherOS is a simplified Linux distribution built from containers,
weight: 1
---
-> RancherOS 1.x is currently in a maintain-only-as-essential mode. It is no longer being actively maintained at a code level other than addressing critical or security fixes. For more information about the support status of RancherOS, see [this page.](https://support.rancher.com/hc/en-us/articles/360041771072#development-status-0-0)
+> RancherOS 1.x is currently in a maintain-only-as-essential mode. It is no longer being actively maintained at a code level other than addressing critical or security fixes. For more information about the support status of RancherOS, see [this page.](https://rancher.com/docs/os/v1.x/en/support/)
RancherOS is the smallest, easiest way to run Docker in production. Every process in RancherOS is a container managed by Docker. This includes system services such as `udev` and `syslog`. Because it only includes the services necessary to run Docker, RancherOS is significantly smaller than most traditional operating systems. By removing unnecessary libraries and services, requirements for security patches and other maintenance are also reduced. This is possible because, with Docker, users typically package all necessary libraries into their containers.
diff --git a/content/os/v1.x/en/configuration/_index.md b/content/os/v1.x/en/configuration/_index.md
index 209b96ea3b4..15a11fcaaa2 100644
--- a/content/os/v1.x/en/configuration/_index.md
+++ b/content/os/v1.x/en/configuration/_index.md
@@ -20,7 +20,7 @@ A Linux OS supporting cloud-config will invoke a cloud-init process during start
When you create a RancherOS instance on AWS, for example, you can optionally provide cloud-config passed in the `user-data` field. Inside the RancherOS instance, cloud-init process will retrieve the cloud-config content through its AWS cloud-config data source, which simply extracts the content of user-data received by the VM instance. If the file starts with "`#cloud-config`", cloud-init will interpret that file as a cloud-config file. If the file starts with `#!` (e.g., `#!/bin/sh`), cloud-init will simply execute that file. You can place any configuration commands in the file as scripts.
-A cloud-config file uses the YAML format. YAML is easy to understand and easy to parse. For more information on YAML, please read more at the [YAML site](http://www.yaml.org/start.html). The most important formatting principle is indentation or whitespace. This indentation indicates relationships of the items to one another. If something is indented more than the previous line, it is a sub-item of the top item that is less indented.
+A cloud-config file uses the YAML format. YAML is easy to understand and easy to parse. For more information on YAML, please read more at the [YAML site](http://www.yaml.org/). The most important formatting principle is indentation or whitespace. This indentation indicates relationships of the items to one another. If something is indented more than the previous line, it is a sub-item of the top item that is less indented.
Example: Notice how both are indented underneath `ssh_authorized_keys`.
diff --git a/content/os/v1.x/en/support/_index.md b/content/os/v1.x/en/support/_index.md
new file mode 100644
index 00000000000..26cccb68d28
--- /dev/null
+++ b/content/os/v1.x/en/support/_index.md
@@ -0,0 +1,15 @@
+---
+title: Support
+weight: 170
+---
+
+## Development and Maintenance Status
+
+
+RancherOS 1.x is no longer being actively maintained. There are two significant reasons behind this product decision:
+
+**1. Docker:** The current industry requirements for a container runtime are very much evolving. Container runtimes like containerd and CRIO are now being actively considered as the default choices. RancherOS 1.x, which was specifically designed around using Docker engine only, unfortunately does not lend itself, in its current design, to this new evolving requirement.
+
+**2. ISV Support:** RancherOS was specifically designed as a minimalistic OS to support purpose-built containerized applications. It was not designed to be used as a general purpose OS (such as CentOS or Ubuntu). As such, most ISVs have not certified their software to run on RancherOS, nor does RancherOS even contain the necessary components for many of these applications to run.
+
+We're working on a replacement. Stay tuned!
\ No newline at end of file
diff --git a/content/rancher/v2.0-v2.4/_index.md b/content/rancher/v2.0-v2.4/_index.md
index ff2500ddd4d..25b54e1aff6 100644
--- a/content/rancher/v2.0-v2.4/_index.md
+++ b/content/rancher/v2.0-v2.4/_index.md
@@ -1,5 +1,5 @@
---
title: v2.0-v2.4.x
-weight: 2
+weight: 3
showBreadcrumb: false
---
diff --git a/content/rancher/v2.0-v2.4/en/admin-settings/authentication/ping-federate/_index.md b/content/rancher/v2.0-v2.4/en/admin-settings/authentication/ping-federate/_index.md
index e9a43d062f2..987ab8e966a 100644
--- a/content/rancher/v2.0-v2.4/en/admin-settings/authentication/ping-federate/_index.md
+++ b/content/rancher/v2.0-v2.4/en/admin-settings/authentication/ping-federate/_index.md
@@ -29,6 +29,8 @@ Note that these URLs will not return valid data until the authentication configu
1. **Groups Field**: Make entries for managing group memberships (example: `memberOf`).
+ 1. **Entity ID Field** (optional): The published, protocol-dependent, unique identifier of your partner. This ID defines your organization as the entity operating the server for SAML 2.0 transactions. This ID may have been obtained out-of-band or via a SAML metadata file.
+
1. **Rancher API Host**: Enter the URL for your Rancher Server.
1. **Private Key** and **Certificate**: This is a key-certificate pair to create a secure shell between Rancher and your IdP.
diff --git a/content/rancher/v2.0-v2.4/en/admin-settings/config-private-registry/_index.md b/content/rancher/v2.0-v2.4/en/admin-settings/config-private-registry/_index.md
index d258e527c23..09779408bb8 100644
--- a/content/rancher/v2.0-v2.4/en/admin-settings/config-private-registry/_index.md
+++ b/content/rancher/v2.0-v2.4/en/admin-settings/config-private-registry/_index.md
@@ -4,7 +4,7 @@ weight: 400
aliases:
---
-You might want to use a private Docker registry to share your custom base images within your organization. With a private registry, you can keep a private, consistent, and centralized source of truth for the Docker images that are used in your clusters.
+You might want to use a private container registry to share your custom base images within your organization. With a private registry, you can keep a private, consistent, and centralized source of truth for the container images that are used in your clusters.
There are two main ways to set up private registries in Rancher: by setting up the global default registry through the **Settings** tab in the global view, and by setting up a private registry in the advanced options in the cluster-level settings. The global default registry is intended to be used for air-gapped setups, for registries that do not require credentials. The cluster-level private registry is intended to be used in all setups in which the private registry requires credentials.
diff --git a/content/rancher/v2.0-v2.4/en/admin-settings/rbac/cluster-project-roles/_index.md b/content/rancher/v2.0-v2.4/en/admin-settings/rbac/cluster-project-roles/_index.md
index 6185daa0bee..6e155df7033 100644
--- a/content/rancher/v2.0-v2.4/en/admin-settings/rbac/cluster-project-roles/_index.md
+++ b/content/rancher/v2.0-v2.4/en/admin-settings/rbac/cluster-project-roles/_index.md
@@ -84,6 +84,10 @@ _Project roles_ are roles that can be used to grant users access to a project. T
These users can manage project-scoped resources like namespaces and workloads, but cannot manage other project members.
+ >**Note:**
+ >
+ >By default, the Rancher role of `project-member` inherits from the `Kubernetes-edit` role, and the `project-owner` role inherits from the `Kubernetes-admin` role. As such, both `project-member` and `project-owner` roles will allow for namespace management, including the ability to create and delete namespaces.
+
- **Read Only:**
These users can view everything in the project but cannot create, update, or delete anything.
diff --git a/content/rancher/v2.0-v2.4/en/backups/backup/_index.md b/content/rancher/v2.0-v2.4/en/backups/backup/_index.md
index 9289d03cf87..d74a41ca001 100644
--- a/content/rancher/v2.0-v2.4/en/backups/backup/_index.md
+++ b/content/rancher/v2.0-v2.4/en/backups/backup/_index.md
@@ -7,6 +7,8 @@ aliases:
- /rancher/v2.0-v2.4/en/backups/backups
- /rancher/v2.0-v2.4/en/backups/legacy/backup
- /rancher/v2.0-v2.4/en/backups/v2.0.x-v2.4.x/backup/
+ - /rancher/v2.x/en/backups/v2.0.x-v2.4.x/
+ - /rancher/v2.x/en/backups/v2.0.x-v2.4.x/backup/
---
This section contains information about how to create backups of your Rancher data and how to restore them in a disaster scenario.
diff --git a/content/rancher/v2.0-v2.4/en/backups/backup/docker-backups/_index.md b/content/rancher/v2.0-v2.4/en/backups/backup/docker-backups/_index.md
index 6f4d55c4b4f..e20ea42087a 100644
--- a/content/rancher/v2.0-v2.4/en/backups/backup/docker-backups/_index.md
+++ b/content/rancher/v2.0-v2.4/en/backups/backup/docker-backups/_index.md
@@ -9,6 +9,7 @@ aliases:
- /rancher/v2.0-v2.4/en/backups/legacy/backup/single-node-backups/
- /rancher/v2.0-v2.4/en/backups/v2.0.x-v2.4.x/backup/docker-backups
- /rancher/v2.0-v2.4/en/installation/backups-and-restoration/single-node-backup-and-restoration/
+ - /rancher/v2.x/en/backups/v2.0.x-v2.4.x/backup/docker-backups/
---
diff --git a/content/rancher/v2.0-v2.4/en/backups/backup/k3s-backups/_index.md b/content/rancher/v2.0-v2.4/en/backups/backup/k3s-backups/_index.md
index b4394bad471..65fd599b0b0 100644
--- a/content/rancher/v2.0-v2.4/en/backups/backup/k3s-backups/_index.md
+++ b/content/rancher/v2.0-v2.4/en/backups/backup/k3s-backups/_index.md
@@ -9,6 +9,7 @@ aliases:
- /rancher/v2.0-v2.4/en/backups/legacy/backups/k3s-backups
- /rancher/v2.0-v2.4/en/backups/legacy/backup/k3s-backups
- /rancher/v2.0-v2.4/en/backups/v2.0.x-v2.4.x/backup/k3s-backups
+ - /rancher/v2.x/en/backups/v2.0.x-v2.4.x/backup/k3s-backups/
---
When Rancher is installed on a high-availability Kubernetes cluster, we recommend using an external database to store the cluster data.
diff --git a/content/rancher/v2.0-v2.4/en/backups/backup/rke-backups/_index.md b/content/rancher/v2.0-v2.4/en/backups/backup/rke-backups/_index.md
index f8929f07dc2..a85625de79b 100644
--- a/content/rancher/v2.0-v2.4/en/backups/backup/rke-backups/_index.md
+++ b/content/rancher/v2.0-v2.4/en/backups/backup/rke-backups/_index.md
@@ -11,6 +11,7 @@ aliases:
- /rancher/v2.0-v2.4/en/backups/legacy/backups/ha-backups
- /rancher/v2.0-v2.4/en/backups/legacy/backup/ha-backups
- /rancher/v2.0-v2.4/en/backups/v2.0.x-v2.4.x/backup/rke-backups
+ - /rancher/v2.x/en/backups/v2.0.x-v2.4.x/backup/rke-backups/
---
This section describes how to create backups of your high-availability Rancher install.
diff --git a/content/rancher/v2.0-v2.4/en/backups/restore/_index.md b/content/rancher/v2.0-v2.4/en/backups/restore/_index.md
index c3a573258f9..bb6569b5e89 100644
--- a/content/rancher/v2.0-v2.4/en/backups/restore/_index.md
+++ b/content/rancher/v2.0-v2.4/en/backups/restore/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/backups/restorations
- /rancher/v2.0-v2.4/en/backups/legacy/restore
- /rancher/v2.0-v2.4/en/backups/v2.0.x-v2.4.x/restore
+ - /rancher/v2.x/en/backups/v2.0.x-v2.4.x/restore/
---
If you lose the data on your Rancher Server, you can restore it if you have backups stored in a safe location.
diff --git a/content/rancher/v2.0-v2.4/en/backups/restore/docker-restores/_index.md b/content/rancher/v2.0-v2.4/en/backups/restore/docker-restores/_index.md
index c5c4d723f23..1dd88ae4ee2 100644
--- a/content/rancher/v2.0-v2.4/en/backups/restore/docker-restores/_index.md
+++ b/content/rancher/v2.0-v2.4/en/backups/restore/docker-restores/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.0-v2.4/en/installation/after-installation/single-node-backup-and-restoration/
- /rancher/v2.0-v2.4/en/backups/restorations/single-node-restoration
- /rancher/v2.0-v2.4/en/backups/v2.0.x-v2.4.x/restore/docker-restores
+ - /rancher/v2.x/en/backups/v2.0.x-v2.4.x/restore/docker-restores/
---
If you encounter a disaster scenario, you can restore your Rancher Server to your most recent backup.
diff --git a/content/rancher/v2.0-v2.4/en/backups/restore/k3s-restore/_index.md b/content/rancher/v2.0-v2.4/en/backups/restore/k3s-restore/_index.md
index fb315b5e27b..2336cdcb398 100644
--- a/content/rancher/v2.0-v2.4/en/backups/restore/k3s-restore/_index.md
+++ b/content/rancher/v2.0-v2.4/en/backups/restore/k3s-restore/_index.md
@@ -8,6 +8,7 @@ aliases:
- /rancher/v2.0-v2.4/en/backups/legacy/restore/k8s-restore/k3s-restore/
- /rancher/v2.0-v2.4/en/backups/legacy/restore/k3s-restore
- /rancher/v2.0-v2.4/en/backups/v2.0.x-v2.4.x/restore/k3s-restore
+ - /rancher/v2.x/en/backups/v2.0.x-v2.4.x/restore/k3s-restore/
---
When Rancher is installed on a high-availability Kubernetes cluster, we recommend using an external database to store the cluster data.
diff --git a/content/rancher/v2.0-v2.4/en/backups/restore/rke-restore/_index.md b/content/rancher/v2.0-v2.4/en/backups/restore/rke-restore/_index.md
index 631d43caef4..c6de8e35c69 100644
--- a/content/rancher/v2.0-v2.4/en/backups/restore/rke-restore/_index.md
+++ b/content/rancher/v2.0-v2.4/en/backups/restore/rke-restore/_index.md
@@ -9,6 +9,7 @@ aliases:
- /rancher/v2.0-v2.4/en/backups/legacy/restore/k8s-restore/rke-restore/
- /rancher/v2.0-v2.4/en/backups/legacy/restore/rke-restore
- /rancher/v2.0-v2.4/en/backups/v2.0.x-v2.4.x/restore/rke-restore
+ - /rancher/v2.x/en/backups/v2.0.x-v2.4.x/restore/rke-restore/
---
This procedure describes how to use RKE to restore a snapshot of the Rancher Kubernetes cluster.
diff --git a/content/rancher/v2.0-v2.4/en/backups/restore/rke-restore/v2.0-v2.1/_index.md b/content/rancher/v2.0-v2.4/en/backups/restore/rke-restore/v2.0-v2.1/_index.md
index 97e3968fdc0..bfc20ae2b48 100644
--- a/content/rancher/v2.0-v2.4/en/backups/restore/rke-restore/v2.0-v2.1/_index.md
+++ b/content/rancher/v2.0-v2.4/en/backups/restore/rke-restore/v2.0-v2.1/_index.md
@@ -1,6 +1,8 @@
---
title: "Rolling back to v2.0.0-v2.1.5"
weight: 1
+aliases:
+ - /rancher/v2.x/en/backups/v2.0.x-v2.4.x/restore/rke-restore/v2.0-v2.1/
---
> Rolling back to Rancher v2.0-v2.1 is no longer supported. The instructions for rolling back to these versions are preserved here and are intended to be used only in cases where upgrading to Rancher v2.2+ is not feasible.
@@ -26,7 +28,7 @@ Because of the changes necessary to address [CVE-2018-20321](https://cve.mitre.o
2. After executing the command a `tokens.json` file will be created. Important! Back up this file in a safe place.** You will need it to restore functionality to your clusters after rolling back Rancher. **If you lose this file, you may lose access to your clusters.**
-3. Rollback Rancher following the [normal instructions]({{}}/rancher/v2.x/en/upgrades/rollbacks/).
+3. Rollback Rancher following the [normal instructions]({{}}/rancher/v2.0-v2.4/en/upgrades/rollbacks/).
4. Once Rancher comes back up, every cluster managed by Rancher (except for Imported clusters) will be in an `Unavailable` state.
diff --git a/content/rancher/v2.0-v2.4/en/best-practices/_index.md b/content/rancher/v2.0-v2.4/en/best-practices/_index.md
index d015a718946..6ea4f98b952 100644
--- a/content/rancher/v2.0-v2.4/en/best-practices/_index.md
+++ b/content/rancher/v2.0-v2.4/en/best-practices/_index.md
@@ -1,6 +1,8 @@
---
title: Best Practices Guide
weight: 4
+aliases:
+ - /rancher/v2.x/en/best-practices/v2.0-v2.4/
---
The purpose of this section is to consolidate best practices for Rancher implementations. This also includes recommendations for related technologies, such as Kubernetes, Docker, containers, and more. The objective is to improve the outcome of a Rancher implementation using the operational experience of Rancher and its customers.
diff --git a/content/rancher/v2.0-v2.4/en/best-practices/containers/_index.md b/content/rancher/v2.0-v2.4/en/best-practices/containers/_index.md
index 6eb905e1e6c..e92222db81f 100644
--- a/content/rancher/v2.0-v2.4/en/best-practices/containers/_index.md
+++ b/content/rancher/v2.0-v2.4/en/best-practices/containers/_index.md
@@ -4,6 +4,7 @@ weight: 100
aliases:
- /rancher/v2.0-v2.4/en/best-practices/containers
- /rancher/v2.0-v2.4/en/best-practices/v2.0-v2.4/containers
+ - /rancher/v2.x/en/best-practices/v2.0-v2.4/containers/
---
Running well-built containers can greatly impact the overall performance and security of your environment.
diff --git a/content/rancher/v2.0-v2.4/en/best-practices/deployment-strategies/_index.md b/content/rancher/v2.0-v2.4/en/best-practices/deployment-strategies/_index.md
index d795146dfca..6a11761bfc7 100644
--- a/content/rancher/v2.0-v2.4/en/best-practices/deployment-strategies/_index.md
+++ b/content/rancher/v2.0-v2.4/en/best-practices/deployment-strategies/_index.md
@@ -4,6 +4,7 @@ weight: 100
aliases:
- /rancher/v2.0-v2.4/en/best-practices/deployment-strategies
- /rancher/v2.0-v2.4/en/best-practices/v2.0-v2.4/deployment-strategies
+ - /rancher/v2.x/en/best-practices/v2.0-v2.4/deployment-strategies/
---
There are two recommended deployment strategies. Each one has its own pros and cons. Read more about which one would fit best for your use case:
diff --git a/content/rancher/v2.0-v2.4/en/best-practices/deployment-types/_index.md b/content/rancher/v2.0-v2.4/en/best-practices/deployment-types/_index.md
index f31b4d7e27a..34f1f0c173a 100644
--- a/content/rancher/v2.0-v2.4/en/best-practices/deployment-types/_index.md
+++ b/content/rancher/v2.0-v2.4/en/best-practices/deployment-types/_index.md
@@ -4,6 +4,7 @@ weight: 100
aliases:
- /rancher/v2.0-v2.4/en/best-practices/deployment-types
- /rancher/v2.0-v2.4/en/best-practices/v2.0-v2.4/deployment-types
+ - /rancher/v2.x/en/best-practices/v2.0-v2.4/deployment-types/
---
A high-availability Kubernetes installation, defined as an installation of Rancher on a Kubernetes cluster with at least three nodes, should be used in any production installation of Rancher, as well as any installation deemed "important." Multiple Rancher instances running on multiple nodes ensure high availability that cannot be accomplished with a single node environment.
diff --git a/content/rancher/v2.0-v2.4/en/best-practices/management/_index.md b/content/rancher/v2.0-v2.4/en/best-practices/management/_index.md
index eabc36c72eb..5e23755f729 100644
--- a/content/rancher/v2.0-v2.4/en/best-practices/management/_index.md
+++ b/content/rancher/v2.0-v2.4/en/best-practices/management/_index.md
@@ -4,6 +4,8 @@ weight: 101
aliases:
- /rancher/v2.0-v2.4/en/best-practices/management
- /rancher/v2.0-v2.4/en/best-practices/v2.0-v2.4/management
+ - /rancher/v2.x/en/best-practices/management/
+ - /rancher/v2.x/en/best-practices/v2.0-v2.4/management/
---
Rancher allows you to set up numerous combinations of configurations. Some configurations are more appropriate for development and testing, while there are other best practices for production environments for maximum availability and fault tolerance. The following best practices should be followed for production.
@@ -85,8 +87,8 @@ Run your etcd and control plane nodes on virtual machines where you can scale vC
### Use at Least Three etcd Nodes
Provision 3 or 5 etcd nodes. Etcd requires a quorum to determine a leader by the majority of nodes, therefore it is not recommended to have clusters of even numbers. Three etcd nodes is generally sufficient for smaller clusters and five etcd nodes for large clusters.
-### Use at Least Two Control Plane Nodes
-Provision two or more control plane nodes. Some control plane components, such as the `kube-apiserver`, run in [active-active](https://www.jscape.com/blog/active-active-vs-active-passive-high-availability-cluster) mode and will give you more scalability. Other components such as kube-scheduler and kube-controller run in active-passive mode (leader elect) and give you more fault tolerance.
+### Use at Least Three Control Plane Nodes
+Provision three or more control plane nodes. Some control plane components, such as the `kube-apiserver`, run in [active-active](https://www.jscape.com/blog/active-active-vs-active-passive-high-availability-cluster) mode and will give you more scalability. Other components such as kube-scheduler and kube-controller run in active-passive mode (leader elect) and give you more fault tolerance.
### Monitor Your Cluster
Closely monitor and scale your nodes as needed. You should [enable cluster monitoring]({{}}/rancher/v2.0-v2.4/en/monitoring-alerting/legacy/monitoring/cluster-monitoring/) and use the Prometheus metrics and Grafana visualization options as a starting point.
diff --git a/content/rancher/v2.0-v2.4/en/cli/_index.md b/content/rancher/v2.0-v2.4/en/cli/_index.md
index b78a30db643..fe6e865db4e 100644
--- a/content/rancher/v2.0-v2.4/en/cli/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cli/_index.md
@@ -6,6 +6,7 @@ metaDescription: "The Rancher CLI is a unified tool that you can use to interact
weight: 21
aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/cluster-access/cli
+ - /rancher/v2.x/en/cli/
---
The Rancher CLI (Command Line Interface) is a unified tool that you can use to interact with Rancher. With this tool, you can operate Rancher using a command line rather than the GUI.
@@ -62,13 +63,13 @@ The following commands are available for use in Rancher CLI.
| `apps, [app]` | Performs operations on catalog applications (i.e. individual [Helm charts](https://docs.helm.sh/developing_charts/) or Rancher charts. |
| `catalog` | Performs operations on [catalogs]({{}}/rancher/v2.0-v2.4/en/catalog/). |
| `clusters, [cluster]` | Performs operations on your [clusters]({{}}/rancher/v2.0-v2.4/en/cluster-provisioning/). |
-| `context` | Switches between Rancher [projects]({{}}/rancher/v2.0-v2.4/en/k8s-in-rancher/projects-and-namespaces/). For an example, see [Project Selection](#project-selection). |
+| `context` | Switches between Rancher [projects]({{}}/rancher/v2.0-v2.4/en/cluster-admin/projects-and-namespaces/). For an example, see [Project Selection](#project-selection). |
| `inspect [OPTIONS] [RESOURCEID RESOURCENAME]` | Displays details about [Kubernetes resources](https://kubernetes.io/docs/reference/kubectl/cheatsheet/#resource-types) or Rancher resources (i.e.: [projects]({{}}/rancher/v2.0-v2.4/en/k8s-in-rancher/projects-and-namespaces/) and [workloads]({{}}/rancher/v2.0-v2.4/en/k8s-in-rancher/workloads/)). Specify resources by name or ID. |
| `kubectl` |Runs [kubectl commands](https://kubernetes.io/docs/reference/kubectl/overview/#operations). |
| `login, [l]` | Logs into a Rancher Server. For an example, see [CLI Authentication](#cli-authentication). |
| `namespaces, [namespace]` |Performs operations on namespaces. |
| `nodes, [node]` |Performs operations on nodes. |
-| `projects, [project]` | Performs operations on [projects]({{}}/rancher/v2.0-v2.4/en/k8s-in-rancher/projects-and-namespaces/). |
+| `projects, [project]` | Performs operations on [projects]({{}}/rancher/v2.0-v2.4/en/cluster-admin/projects-and-namespaces/). |
| `ps` | Displays [workloads]({{}}/rancher/v2.0-v2.4/en/k8s-in-rancher/workloads) in a project. |
| `settings, [setting]` | Shows the current settings for your Rancher Server. |
| `ssh` | Connects to one of your cluster nodes using the SSH protocol. |
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/projects-and-namespaces/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/projects-and-namespaces/_index.md
index 9774a89c470..545de58bf84 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/projects-and-namespaces/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/projects-and-namespaces/_index.md
@@ -162,6 +162,9 @@ By default, your user is added as the project `Owner`.
>**Notes on Permissions:**
>
>- Users assigned the `Owner` or `Member` role for a project automatically inherit the `namespace creation` role. However, this role is a [Kubernetes ClusterRole](https://kubernetes.io/docs/reference/access-authn-authz/rbac/#role-and-clusterrole), meaning its scope extends to all projects in the cluster. Therefore, users explicitly assigned the `Owner` or `Member` role for a project can create namespaces in other projects they're assigned to, even with only the `Read Only` role assigned.
+>
+>- By default, the Rancher role of `project-member` inherits from the `Kubernetes-edit` role, and the `project-owner` role inherits from the `Kubernetes-admin` role. As such, both `project-member` and `project-owner` roles will allow for namespace management, including the ability to create and delete namespaces.
+>
>- Choose `Custom` to create a custom role on the fly: [Custom Project Roles]({{}}/rancher/v2.0-v2.4/en/admin-settings/rbac/cluster-project-roles/#custom-project-roles).
To add members:
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cis-scans/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cis-scans/_index.md
index 7024de3c0f1..b9c354f493c 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cis-scans/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cis-scans/_index.md
@@ -2,8 +2,9 @@
title: CIS Scans
weight: 18
aliases:
- - /rancher/v2.0-v2.4/en/cis-scans/legacy
- - /rancher/v2.0-v2.4/en/cis-scans
+ - /rancher/v2.0-v2.4/en/cis-scans/legacy
+ - /rancher/v2.0-v2.4/en/cis-scans
+ - /rancher/v2.x/en/cis-scans/v2.4/
---
_Available as of v2.4.0_
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cis-scans/skipped-tests/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cis-scans/skipped-tests/_index.md
index 9c2b6b04eb5..b1a58cb69c1 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cis-scans/skipped-tests/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cis-scans/skipped-tests/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cis-scans/legacy/skipped-tests
- /rancher/v2.0-v2.4/en/cis-scans/v2.4/skipped-tests
- /rancher/v2.0-v2.4/en/cis-scans/skipped-tests
+ - /rancher/v2.x/en/cis-scans/v2.4/skipped-tests/
---
This section lists the tests that are skipped in the permissive test profile for RKE.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-alerts/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-alerts/_index.md
index ad34cd8cdde..67430e68c2f 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-alerts/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-alerts/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/alerts
- /rancher/v2.0-v2.4/en/monitoring-alerting/legacy/alerts/cluster-alerts
- /rancher/v2.0-v2.4/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-alerts
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-alerts/
---
To keep your clusters and applications healthy and driving your organizational productivity forward, you need to stay informed of events occurring in your clusters and projects, both planned and unplanned. When an event occurs, your alert is triggered, and you are sent a notification. You can then, if necessary, follow up with corrective actions.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/_index.md
index 44bb935202d..60af88703f2 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/_index.md
@@ -9,6 +9,8 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/logging
- /rancher/v2.0-v2.4/en/logging/legacy/cluster-logging
- /rancher/v2.0-v2.4/en/logging/v2.0.x-v2.4.x/cluster-logging/
+ - /rancher/v2.x/en/logging/v2.0.x-v2.4.x/
+ - /rancher/v2.x/en/logging/v2.0.x-v2.4.x/cluster-logging/
---
Logging is helpful because it allows you to:
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/elasticsearch/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/elasticsearch/_index.md
index 74411899576..293ea184959 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/elasticsearch/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/elasticsearch/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/logging/elasticsearch
- /rancher/v2.0-v2.4/en/logging/legacy/cluster-logging/elasticsearch
- /rancher/v2.0-v2.4/en/logging/v2.0.x-v2.4.x/cluster-logging/elasticsearch
+ - /rancher/v2.x/en/logging/v2.0.x-v2.4.x/cluster-logging/elasticsearch/
---
If your organization uses [Elasticsearch](https://www.elastic.co/), either on premise or in the cloud, you can configure Rancher to send it Kubernetes logs. Afterwards, you can log into your Elasticsearch deployment to view logs.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/fluentd/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/fluentd/_index.md
index c6b4660d20d..200fb6c564c 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/fluentd/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/fluentd/_index.md
@@ -2,9 +2,10 @@
title: Fluentd
weight: 600
aliases:
- - /rancher/v2.0-v2.4/en/cluster-admin/tools/logging/fluentd
- - /rancher/v2.0-v2.4/en/logging/legacy/cluster-logging/fluentd
- - /rancher/v2.0-v2.4/en/logging/v2.0.x-v2.4.x/cluster-logging/fluentd
+ - /rancher/v2.0-v2.4/en/cluster-admin/tools/logging/fluentd
+ - /rancher/v2.0-v2.4/en/logging/legacy/cluster-logging/fluentd
+ - /rancher/v2.0-v2.4/en/logging/v2.0.x-v2.4.x/cluster-logging/fluentd
+ - /rancher/v2.x/en/logging/v2.0.x-v2.4.x/cluster-logging/fluentd/
---
If your organization uses [Fluentd](https://www.fluentd.org/), you can configure Rancher to send it Kubernetes logs. Afterwards, you can log into your Fluentd server to view logs.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/kafka/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/kafka/_index.md
index 6a94b79d599..ec15f61ea6a 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/kafka/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/kafka/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/logging/kafka
- /rancher/v2.0-v2.4/en/logging/legacy/cluster-logging/kafka
- /rancher/v2.0-v2.4/en/logging/v2.0.x-v2.4.x/cluster-logging/kafka
+ - /rancher/v2.x/en/logging/v2.0.x-v2.4.x/cluster-logging/kafka/
---
If your organization uses [Kafka](https://kafka.apache.org/), you can configure Rancher to send it Kubernetes logs. Afterwards, you can log into your Kafka server to view logs.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/splunk/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/splunk/_index.md
index 666fe7bcfff..f5510ee8222 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/splunk/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/splunk/_index.md
@@ -7,6 +7,8 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/logging/splunk
- /rancher/v2.0-v2.4/en/logging/legacy/cluster-logging/splunk
- /rancher/v2.0-v2.4/en/logging/v2.0.x-v2.4.x/cluster-logging/splunk
+ - /rancher/v2.x/en/logging/v2.0.x-v2.4.x/cluster-logging/splunk/
+ - /rancher/v2.x/en/cluster-admin/tools/logging/splunk
---
If your organization uses [Splunk](https://www.splunk.com/), you can configure Rancher to send it Kubernetes logs. Afterwards, you can log into your Splunk server to view logs.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/syslog/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/syslog/_index.md
index da112f8bde9..9f959319c08 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/syslog/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-logging/syslog/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/logging/syslog
- /rancher/v2.0-v2.4/en/logging/legacy/cluster-logging/syslog
- /rancher/v2.0-v2.4/en/logging/v2.0.x-v2.4.x/cluster-logging/syslog
+ - /rancher/v2.x/en/logging/v2.0.x-v2.4.x/cluster-logging/syslog/
---
If your organization uses [Syslog](https://tools.ietf.org/html/rfc5424), you can configure Rancher to send it Kubernetes logs. Afterwards, you can log into your Syslog server to view logs.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/_index.md
index 6e376e0c10d..d21612e27f5 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/_index.md
@@ -8,6 +8,8 @@ aliases:
- /rancher/v2.0-v2.4/en/monitoring-alerting/legacy/monitoring/cluster-monitoring
- /rancher/v2.0-v2.4/en/monitoring-alerting/v2.0.x-v2.4.x/monitoring/cluster-monitoring
- /rancher/v2.0-v2.4/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/
---
_Available as of v2.2.0_
@@ -53,7 +55,7 @@ Using Prometheus, you can monitor Rancher at both the cluster level and [project
As an [administrator]({{}}/rancher/v2.0-v2.4/en/admin-settings/rbac/global-permissions/) or [cluster owner]({{}}/rancher/v2.0-v2.4/en/admin-settings/rbac/cluster-project-roles/#cluster-roles), you can configure Rancher to deploy Prometheus to monitor your Kubernetes cluster.
-> **Prerequisite:** The following TCP ports need to be opened for metrics scraping:
+> **Prerequisites:** The following TCP ports need to be opened for metrics scraping:
>
> | Port | Node type | Component |
> | --- | --- | --- |
@@ -64,6 +66,8 @@ As an [administrator]({{}}/rancher/v2.0-v2.4/en/admin-settings/rbac/glo
> | 10252 | Controlplane | Kube controller manager |
> | 2379 | Etcd | Etcd server |
+> Monitoring V1 requires a Kubernetes verison less than or equal to v1.20.x. To install monitoring on Kubernetes v1.21+, you will need to [migrate to Monitoring V2.]({{}}/rancher/v2.5/en/monitoring-alerting/migrating/)
+
1. From the **Global** view, navigate to the cluster that you want to configure cluster monitoring.
1. Select **Tools > Monitoring** in the navigation bar.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/cluster-metrics/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/cluster-metrics/_index.md
index e1b785ca32b..c6ea196adac 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/cluster-metrics/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/cluster-metrics/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/monitoring/cluster-metrics
- /rancher/v2.0-v2.4/en/monitoring-alerting/legacy/monitoring/cluster-monitoring/cluster-metrics
- /rancher/v2.0-v2.4/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/cluster-metrics
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/cluster-metrics/
---
_Available as of v2.2.0_
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/custom-metrics/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/custom-metrics/_index.md
index 44ce8ae1216..f710ae39b76 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/custom-metrics/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/custom-metrics/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.0-v2.4/en/monitoring-alerting/legacy/monitoring/cluster-monitoring/custom-metrics
- /rancher/v2.0-v2.4/en/cluster-admin/tools/monitoring/custom-metrics/
- /rancher/v2.0-v2.4/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/custom-metrics
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/custom-metrics/
---
After you've enabled [cluster level monitoring]({{< baseurl >}}/rancher/v2.0-v2.4/en/monitoring-alerting/legacy/monitoring/cluster-monitoring/), You can view the metrics data from Rancher. You can also deploy the Prometheus custom metrics adapter then you can use the HPA with metrics stored in cluster monitoring.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/expression/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/expression/_index.md
index 5cb11c74edc..9109666fa00 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/expression/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/expression/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/monitoring/expression
- /rancher/v2.0-v2.4/en/monitoring-alerting/legacy/monitoring/cluster-monitoring/expression
- /rancher/v2.0-v2.4/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/expression
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/expression/
---
The PromQL expressions in this doc can be used to configure [alerts.]({{}}/rancher/v2.0-v2.4/en/cluster-admin/tools/alerts/)
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/prometheus/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/prometheus/_index.md
index ffc9a4da9e3..01c490eb02f 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/prometheus/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/prometheus/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/monitoring/prometheus/
- /rancher/v2.0-v2.4/en/monitoring-alerting/legacy/monitoring/cluster-monitoring/prometheus
- /rancher/v2.0-v2.4/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/prometheus
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/prometheus/
---
_Available as of v2.2.0_
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/viewing-metrics/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/viewing-metrics/_index.md
index 5b894861177..f3748f37e39 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/viewing-metrics/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/cluster-monitoring/viewing-metrics/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/monitoring/viewing-metrics
- /rancher/v2.0-v2.4/en/monitoring-alerting/legacy/monitoring/cluster-monitoring/viewing-metrics
- /rancher/v2.0-v2.4/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/viewing-metrics
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/viewing-metrics/
---
_Available as of v2.2.0_
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/_index.md
index 0060dd5c8c2..4cbdfdd96b1 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/_index.md
@@ -7,6 +7,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/
- /rancher/v2.0-v2.4/en/project-admin/istio
- /rancher/v2.0-v2.4/en/istio/legacy/cluster-istio
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/
---
_Available as of v2.3.0_
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/disabling-istio/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/disabling-istio/_index.md
index 00e4a4acdd6..27c14e7caa6 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/disabling-istio/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/disabling-istio/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/disabling-istio
- /rancher/v2.0-v2.4/en/istio/legacy/disabling-istio
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/disabling-istio
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/disabling-istio/
---
This section describes how to disable Istio in a cluster, namespace, or workload.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/rbac/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/rbac/_index.md
index d2c06a6c66a..498dfa16f52 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/rbac/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/rbac/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/rbac
- /rancher/v2.0-v2.4/en/istio/legacy/rbac
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/rbac
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/rbac/
---
This section describes the permissions required to access Istio features and how to configure access to the Kiali and Jaeger visualizations.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/release-notes/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/release-notes/_index.md
index 937d6db3275..2fd7ad70c2b 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/release-notes/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/release-notes/_index.md
@@ -4,6 +4,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/release-notes
- /rancher/v2.0-v2.4/en/istio/legacy/release-notes
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/release-notes
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/release-notes/
---
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/resources/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/resources/_index.md
index da25577d828..8f4ea071ea3 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/resources/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/resources/_index.md
@@ -7,6 +7,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/resources
- /rancher/v2.0-v2.4/en/istio/legacy/resources
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/resources
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/resources/
---
_Available as of v2.3.0_
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/_index.md
index 7eaeb1ac190..3f44270f3a7 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup
- /rancher/v2.0-v2.4/en/istio/legacy/setup
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/setup
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/setup/
---
This section describes how to enable Istio and start using it in your projects.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/deploy-workloads/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/deploy-workloads/_index.md
index c01d4edb146..fa88cd2852c 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/deploy-workloads/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/deploy-workloads/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/deploy-workloads
- /rancher/v2.0-v2.4/en/istio/legacy/setup/deploy-workloads
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/setup/deploy-workloads
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/setup/deploy-workloads/
---
> **Prerequisite:** To enable Istio for a workload, the cluster and namespace must have Istio enabled.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-cluster/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-cluster/_index.md
index 73c7842d91c..c7a06c44a50 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-cluster/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-cluster/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-cluster
- /rancher/v2.0-v2.4/en/istio/legacy/setup/enable-istio-in-cluster
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/setup/enable-istio-in-cluster
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/setup/enable-istio-in-cluster/
---
This cluster uses the default Nginx controller to allow traffic into the cluster.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-cluster/enable-istio-with-psp/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-cluster/enable-istio-with-psp/_index.md
index e222a856866..d3a8130ac25 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-cluster/enable-istio-with-psp/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-cluster/enable-istio-with-psp/_index.md
@@ -4,6 +4,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-cluster/enable-istio-with-psp
- /rancher/v2.0-v2.4/en/istio/legacy/setup/enable-istio-in-cluster/enable-istio-with-psp
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/setup/enable-istio-in-cluster/enable-istio-with-psp
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/setup/enable-istio-in-cluster/enable-istio-with-psp/
---
>**Note:** The following guide is only for RKE provisioned clusters.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-namespace/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-namespace/_index.md
index 854921e5936..97a725a79db 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-namespace/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-namespace/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/enable-istio-in-namespace
- /rancher/v2.0-v2.4/en/istio/legacy/setup/enable-istio-in-namespace
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/setup/enable-istio-in-namespace
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/setup/enable-istio-in-namespace/
---
You will need to manually enable Istio in each namespace that you want to be tracked or controlled by Istio. When Istio is enabled in a namespace, the Envoy sidecar proxy will be automatically injected into all new workloads that are deployed in the namespace.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/gateway/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/gateway/_index.md
index 78a2d83ca1f..7bd777e2352 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/gateway/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/gateway/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/gateway
- /rancher/v2.0-v2.4/en/istio/legacy/setup/gateway
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/setup/gateway
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/setup/gateway/
---
The gateway to each cluster can have its own port or load balancer, which is unrelated to a service mesh. By default, each Rancher-provisioned cluster has one NGINX ingress controller allowing traffic into the cluster.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/node-selectors/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/node-selectors/_index.md
index fdc0982dad2..cae0c5936f5 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/node-selectors/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/node-selectors/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/node-selectors
- /rancher/v2.0-v2.4/en/istio/legacy/setup/node-selectors
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/setup/node-selectors
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/setup/node-selectors/
---
> **Prerequisite:** Your cluster needs a worker node that can designated for Istio. The worker node should meet the [resource requirements.]({{}}/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/resources)
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/set-up-traffic-management/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/set-up-traffic-management/_index.md
index 22fee4590c5..003ec7c7107 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/set-up-traffic-management/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/set-up-traffic-management/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/set-up-traffic-management
- /rancher/v2.0-v2.4/en/istio/legacy/setup/set-up-traffic-management
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/setup/set-up-traffic-management
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/setup/set-up-traffic-management/
---
A central advantage of traffic management in Istio is that it allows dynamic request routing. Some common applications for dynamic request routing include canary deployments and blue/green deployments. The two key resources in Istio traffic management are *virtual services* and *destination rules*.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/view-traffic/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/view-traffic/_index.md
index ed3e20002da..566f6aef2c5 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/view-traffic/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/view-traffic/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/istio/setup/view-traffic
- /rancher/v2.0-v2.4/en/istio/legacy/setup/view-traffic
- /rancher/v2.0-v2.4/en/istio/v2.3.x-v2.4.x/setup/view-traffic
+ - /rancher/v2.x/en/istio/v2.3.x-v2.4.x/setup/view-traffic/
---
This section describes how to view the traffic that is being managed by Istio.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/notifiers/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/notifiers/_index.md
index 25dd8b25420..1d4887810e2 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/tools/notifiers/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/tools/notifiers/_index.md
@@ -6,6 +6,8 @@ aliases:
- /rancher/v2.0-v2.4/en/cluster-admin/tools/notifiers
- /rancher/v2.0-v2.4/en/monitoring-alerting/legacy/notifiers
- /rancher/v2.0-v2.4/en/monitoring-alerting/v2.0.x-v2.4.x/notifiers
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/notifiers/
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-alerts/default-alerts/
---
Notifiers are services that inform you of alert events. You can configure notifiers to send alert notifications to staff best suited to take corrective action.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-admin/upgrading-kubernetes/_index.md b/content/rancher/v2.0-v2.4/en/cluster-admin/upgrading-kubernetes/_index.md
index ff2c692af34..51e7fa4b58a 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-admin/upgrading-kubernetes/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-admin/upgrading-kubernetes/_index.md
@@ -33,7 +33,7 @@ As of Rancher v2.4.0,
# Tested Kubernetes Versions
-Before a new version of Rancher is released, it's tested with the latest minor versions of Kubernetes to ensure compatibility. For example, Rancher v2.3.0 is was tested with Kubernetes v1.15.4, v1.14.7, and v1.13.11. For details on which versions of Kubernetes were tested on each Rancher version, refer to the [support maintenance terms.](https://rancher.com/support-maintenance-terms/all-supported-versions/rancher-v2.3.0/)
+Before a new version of Rancher is released, it's tested with the latest minor versions of Kubernetes to ensure compatibility. For details on which versions of Kubernetes were tested on each Rancher version, refer to the [support maintenance terms.](https://rancher.com/support-maintenance-terms/all-supported-versions/rancher-v2.4.17/)
# How Upgrades Work
diff --git a/content/rancher/v2.0-v2.4/en/cluster-provisioning/cluster-capabilities-table/index.md b/content/rancher/v2.0-v2.4/en/cluster-provisioning/cluster-capabilities-table/index.md
index 2af054da595..a1c3bb4f8e6 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-provisioning/cluster-capabilities-table/index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-provisioning/cluster-capabilities-table/index.md
@@ -16,7 +16,8 @@ headless: true
| [Ability to back up your Kubernetes Clusters]({{}}/rancher/v2.0-v2.4/en/cluster-admin/backing-up-etcd/) | ✓ | | |
| [Ability to recover and restore etcd]({{}}/rancher/v2.0-v2.4/en/cluster-admin/restoring-etcd/) | ✓ | | |
| [Cleaning Kubernetes components when clusters are no longer reachable from Rancher]({{}}/rancher/v2.0-v2.4/en/cluster-admin/cleaning-cluster-nodes/) | ✓ | | |
-| [Configuring Pod Security Policies]({{}}/rancher/v2.0-v2.4/en/cluster-admin/pod-security-policy/) | ✓ | | |
+| [Configuring Pod Security Policies]({{}}/rancher/v2.0-v2.4/en/cluster-admin/pod-security-policy/) | ✓ | | |
| [Running Security Scans]({{}}/rancher/v2.0-v2.4/en/security/security-scan/) | ✓ | | |
+| [Authorized Cluster Endpoint]({{}}/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/options/#authorized-cluster-endpoint) | ✓ | | |
\* Cluster configuration options can't be edited for imported clusters, except for K3s clusters.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-provisioning/node-requirements/_index.md b/content/rancher/v2.0-v2.4/en/cluster-provisioning/node-requirements/_index.md
index a3ea0e34f85..81b0972581d 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-provisioning/node-requirements/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-provisioning/node-requirements/_index.md
@@ -3,9 +3,9 @@ title: Node Requirements for Rancher Managed Clusters
weight: 1
---
-This page describes the requirements for the Rancher managed Kubernetes clusters where your apps and services will be installed. These downstream clusters should be separate from the cluster (or single node) running Rancher.
+This page describes the requirements for the Rancher managed Kubernetes clusters where your apps and services will be installed. These downstream clusters should be separate from the three-node cluster running Rancher.
-> If Rancher is installed on a high-availability Kubernetes cluster, the Rancher server cluster and downstream clusters have different requirements. For Rancher installation requirements, refer to the node requirements in the [installation section.]({{}}/rancher/v2.0-v2.4/en/installation/requirements/)
+> If Rancher is installed on a high-availability Kubernetes cluster, the Rancher server three-node cluster and downstream clusters have different requirements. For Rancher installation requirements, refer to the node requirements in the [installation section.]({{}}/rancher/v2.0-v2.4/en/installation/requirements/)
Make sure the nodes for the Rancher server fulfill the following requirements:
diff --git a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/azure/_index.md b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/azure/_index.md
index b825babbfc0..263db5c0d39 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/azure/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/azure/_index.md
@@ -12,6 +12,13 @@ First, you will set up your Azure cloud credentials in Rancher. Then you will us
Then you will create an Azure cluster in Rancher, and when configuring the new cluster, you will define node pools for it. Each node pool will have a Kubernetes role of etcd, controlplane, or worker. Rancher will install Kubernetes on the new nodes, and it will set up each node with the Kubernetes role defined by the node pool.
+>**Warning:** When the Rancher RKE cluster is running in Azure and has an Azure load balancer in front, the outbound flow will fail. The workaround for this problem is as follows:
+
+> - Terminate the SSL/TLS on the internal load balancer
+> - Use the L7 load balancer
+
+> For more information, refer to the documentation on [Azure load balancer limitations](https://docs.microsoft.com/en-us/azure/load-balancer/components#limitations).
+
For more information on configuring the Kubernetes cluster that Rancher will install on the Azure nodes, refer to the [RKE cluster configuration reference.]({{}}/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/options)
For more information on configuring Azure node templates, refer to the [Azure node template configuration reference.](./azure-node-template-config)
diff --git a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/prior-to-2.0.4/_index.md b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/prior-to-2.0.4/_index.md
index 9801050ad1d..f66a4fa794f 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/prior-to-2.0.4/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/prior-to-2.0.4/_index.md
@@ -2,6 +2,8 @@
title: vSphere Node Template Configuration in Rancher before v2.0.4
shortTitle: Before v2.0.4
weight: 5
+aliases:
+ - /rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/prior-to-2.0.4/
---
- [Account access](#account-access)
diff --git a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.0.4/_index.md b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.0.4/_index.md
index f53ea208781..658c575eaad 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.0.4/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.0.4/_index.md
@@ -2,6 +2,8 @@
title: vSphere Node Template Configuration in Rancher v2.0.4
shortTitle: v2.0.4
weight: 4
+aliases:
+ - /rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.0.4/
---
- [Account access](#account-access)
- [Scheduling](#scheduling)
diff --git a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.2.0/_index.md b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.2.0/_index.md
index 3d02d1c3f2a..feab925f580 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.2.0/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.2.0/_index.md
@@ -2,6 +2,8 @@
title: vSphere Node Template Configuration in Rancher v2.2.0
shortTitle: v2.2.0
weight: 3
+aliases:
+ - /rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.2.0/
---
- [Account Access](#account-access)
- [Scheduling](#scheduling)
diff --git a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.3.0/_index.md b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.3.0/_index.md
index d2c31a9b02d..829e7edea51 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.3.0/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.3.0/_index.md
@@ -2,6 +2,8 @@
title: vSphere Node Template Configuration in Rancher v2.3.0
shortTitle: v2.3.0
weight: 2
+aliases:
+ - /rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.3.0/
---
- [Account Access](#account-access)
- [Scheduling](#scheduling)
diff --git a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.3.3/_index.md b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.3.3/_index.md
index c6221e65d89..9b4c5390378 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.3.3/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.3.3/_index.md
@@ -2,6 +2,8 @@
title: vSphere Node Template Configuration in Rancher v2.3.3
shortTitle: v2.3.3
weight: 1
+aliases:
+ - /rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/vsphere/vsphere-node-template-config/v2.3.3/
---
- [Account Access](#account-access)
- [Scheduling](#scheduling)
diff --git a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/options/_index.md b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/options/_index.md
index bc6c50f0c99..a02c277da87 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/options/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/options/_index.md
@@ -108,7 +108,7 @@ _Available as of v2.2.0_
Authorized Cluster Endpoint can be used to directly access the Kubernetes API server, without requiring communication through Rancher.
-> The authorized cluster endpoint only works on Rancher-launched Kubernetes clusters. In other words, it only works in clusters where Rancher [used RKE]({{}}/rancher/v2.0-v2.4/en/overview/architecture/#tools-for-provisioning-kubernetes-clusters) to provision the cluster. It is not available for clusters in a hosted Kubernetes provider, such as Amazon's EKS.
+> The authorized cluster endpoint is available only in clusters that Rancher has provisioned [using RKE]({{}}/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/options/#authorized-cluster-endpoint). It is not available for clusters in hosted Kubernetes providers, such as Amazon's EKS. Additionally, the authorized cluster endpoint cannot be enabled for RKE clusters that are imported into Rancher; it is available only on Rancher-launched Kubernetes clusters.
This is enabled by default in Rancher-launched Kubernetes clusters, using the IP of the node with the `controlplane` role and the default Kubernetes self signed certificates.
diff --git a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/windows-clusters/docs-for-2.1-and-2.2/_index.md b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/windows-clusters/docs-for-2.1-and-2.2/_index.md
index 68a568e1481..c1f5ce3bae5 100644
--- a/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/windows-clusters/docs-for-2.1-and-2.2/_index.md
+++ b/content/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/windows-clusters/docs-for-2.1-and-2.2/_index.md
@@ -1,6 +1,8 @@
---
title: v2.1.x and v2.2.x Windows Documentation (Experimental)
weight: 9100
+aliases:
+ - /rancher/v2.x/en/cluster-provisioning/rke-clusters/windows-clusters/docs-for-2.1-and-2.2/
---
_Available from v2.1.0 to v2.1.9 and v2.2.0 to v2.2.3_
diff --git a/content/rancher/v2.0-v2.4/en/faq/upgrades-to-2x/_index.md b/content/rancher/v2.0-v2.4/en/faq/upgrades-to-2x/_index.md
index e0aa7ff6a3c..db5cc1e85b3 100644
--- a/content/rancher/v2.0-v2.4/en/faq/upgrades-to-2x/_index.md
+++ b/content/rancher/v2.0-v2.4/en/faq/upgrades-to-2x/_index.md
@@ -1,6 +1,8 @@
---
title: Questions about Upgrading to Rancher v2.x
weight: 1
+aliases:
+ - /rancher/v2.x/en/faq/upgrades-to-2x/
---
This page contains frequently asked questions about the changes between Rancher v1.x and v2.x, and how to upgrade from Rancher v1.x to v2.x.
diff --git a/content/rancher/v2.0-v2.4/en/helm-charts/creating-apps/_index.md b/content/rancher/v2.0-v2.4/en/helm-charts/creating-apps/_index.md
index e1f251fd545..73d1f6efe48 100644
--- a/content/rancher/v2.0-v2.4/en/helm-charts/creating-apps/_index.md
+++ b/content/rancher/v2.0-v2.4/en/helm-charts/creating-apps/_index.md
@@ -45,18 +45,20 @@ Advantages of Rancher charts include:
# Chart Directory Structure
-The following table demonstrates the directory structure for a chart, which can be found in a chart directory: `charts///`. This information is helpful when customizing charts for a custom catalog. Files denoted with **Rancher Specific** are specific to Rancher charts, but are optional for chart customization.
+The following table demonstrates the directory structure for a Rancher Chart. The `charts` directory is the top level directory under the repository base. Adding the repository to Rancher will expose all charts contained within it. This information is helpful when customizing charts for a custom catalog. The `questions.yaml`, `README.md`, and `requirements.yml` files are specific to Rancher charts, but are optional for chart customization.
```
-charts///
-|--charts/ # Directory containing dependency charts.
-|--templates/ # Directory containing templates that, when combined with values.yml, generates Kubernetes YAML.
-|--app-readme.md # Text displayed in the charts header within the Rancher UI.*
-|--Chart.yml # Required Helm chart information file.
-|--questions.yml # Form questions displayed within the Rancher UI. Questions display in Configuration Options.*
-|--README.md # Optional: Helm Readme file displayed within Rancher UI. This text displays in Detailed Descriptions.
-|--requirements.yml # Optional: YAML file listing dependencies for the chart.
-|--values.yml # Default configuration values for the chart.
+/
+ │
+ ├── charts/
+ │ ├── / # This directory name will be surfaced in the Rancher UI as the chart name
+ │ │ ├── / # Each directory at this level provides different app versions that will be selectable within the chart in the Rancher UI
+ │ │ │ ├── Chart.yaml # Required Helm chart information file.
+ │ │ │ ├── questions.yaml # Form questions displayed within the Rancher UI. Questions display in Configuration Options.*
+ │ │ │ ├── README.md # Optional: Helm Readme file displayed within Rancher UI. This text displays in Detailed Descriptions.
+ │ │ │ ├── requirements.yml # Optional: YAML file listing dependencies for the chart.
+ │ │ │ ├── values.yml # Default configuration values for the chart.
+ │ │ │ ├── templates/ # Directory containing templates that, when combined with values.yml, generates Kubernetes YAML.
```
# Additional Files for Rancher Charts
diff --git a/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/helm2/_index.md b/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/helm2/_index.md
index c86106ec751..7895c69d7af 100644
--- a/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/helm2/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/helm2/_index.md
@@ -7,6 +7,7 @@ aliases:
- /rancher/v2.0-v2.4/en/installation/upgrades-rollbacks/upgrades/ha/helm2
- /rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades-rollbacks/upgrades/ha/helm2
- /rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades-rollbacks/upgrades/helm2
+ - /rancher/v2.x/en/installation/install-rancher-on-k8s/upgrades/helm2/
---
> Helm 3 has been released. If you are using Helm 2, we recommend [migrating to Helm 3](https://helm.sh/blog/migrate-from-helm-v2-to-helm-v3/) because it is simpler to use and more secure than Helm 2.
diff --git a/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/migrating-from-rke-add-on/_index.md b/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/migrating-from-rke-add-on/_index.md
index 9bde3e6dad6..50b771e626d 100644
--- a/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/migrating-from-rke-add-on/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/migrating-from-rke-add-on/_index.md
@@ -7,6 +7,7 @@ aliases:
- /rancher/v2.0-v2.4/en/upgrades/upgrades/migrating-from-rke-add-on
- /rancher/v2.0-v2.4/en/installation/upgrades-rollbacks/upgrades/migrating-from-rke-add-on
- /rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades-rollbacks/upgrades/migrating-from-rke-add-on
+ - /rancher/v2.x/en/installation/install-rancher-on-k8s/upgrades/migrating-from-rke-add-on/
---
> **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/namespace-migration/_index.md b/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/namespace-migration/_index.md
index 1f1d212a289..773bb97f9a0 100644
--- a/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/namespace-migration/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades/namespace-migration/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/upgrades/upgrades/namespace-migration
- /rancher/v2.0-v2.4/en/installation/upgrades-rollbacks/upgrades/namespace-migration
- /rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/upgrades-rollbacks/upgrades/namespace-migration
+ - /rancher/v2.x/en/installation/install-rancher-on-k8s/upgrades/namespace-migration/
---
>This section applies only to Rancher upgrades from v2.0.6 or earlier to v2.0.7 or later. Upgrades from v2.0.7 to later version are unaffected.
diff --git a/content/rancher/v2.0-v2.4/en/installation/other-installation-methods/single-node-docker/single-node-upgrades/_index.md b/content/rancher/v2.0-v2.4/en/installation/other-installation-methods/single-node-docker/single-node-upgrades/_index.md
index be69fcd235e..7e7e935097c 100644
--- a/content/rancher/v2.0-v2.4/en/installation/other-installation-methods/single-node-docker/single-node-upgrades/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/other-installation-methods/single-node-docker/single-node-upgrades/_index.md
@@ -86,7 +86,7 @@ During upgrade, you create a copy of the data from your current Rancher containe
```
- docker run --volumes-from rancher-data -v $PWD:/backup busybox tar zcvf /backup/rancher-data-backup--.tar.gz /var/lib/rancher
+ docker run --volumes-from rancher-data -v "$PWD:/backup" --rm busybox tar zcvf /backup/rancher-data-backup--.tar.gz /var/lib/rancher
```
**Step Result:** When you enter this command, a series of commands should run.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/_index.md
index be2d6ede306..40243da33a7 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.0-v2.4/en/installation/air-gap-high-availability/
- /rancher/v2.0-v2.4/en/installation/air-gap-single-node/
- /rancher/v2.0-v2.4/en/installation/options/air-gap-helm2
+ - /rancher/v2.x/en/installation/resources/advanced/air-gap-helm2/
---
> After Helm 3 was released, the Rancher installation instructions were updated to use Helm 3.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/install-rancher/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/install-rancher/_index.md
index 0612502462a..5ba25689328 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/install-rancher/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/install-rancher/_index.md
@@ -8,6 +8,7 @@ aliases:
- /rancher/v2.0-v2.4/en/installation/air-gap-single-node/install-rancher
- /rancher/v2.0-v2.4/en/installation/air-gap/install-rancher
- /rancher/v2.0-v2.4/en/installation/options/air-gap-helm2/install-rancher
+ - /rancher/v2.x/en/installation/resources/advanced/air-gap-helm2/install-rancher/
---
This section is about how to deploy Rancher for your air gapped environment. An air gapped environment could be where Rancher server will be installed offline, behind a firewall, or behind a proxy. There are _tabs_ for either a high availability (recommended) or a Docker installation.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/launch-kubernetes/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/launch-kubernetes/_index.md
index e0d1d69cf7d..afac79574b6 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/launch-kubernetes/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/launch-kubernetes/_index.md
@@ -4,6 +4,7 @@ weight: 300
aliases:
- /rancher/v2.0-v2.4/en/installation/air-gap-high-availability/install-kube
- /rancher/v2.0-v2.4/en/installation/options/air-gap-helm2/launch-kubernetes
+ - /rancher/v2.x/en/installation/resources/advanced/air-gap-helm2/launch-kubernetes/
---
This section is about how to prepare to launch a Kubernetes cluster which is used to deploy Rancher server for your air gapped environment.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/populate-private-registry/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/populate-private-registry/_index.md
index ae22120aa63..75e024e218e 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/populate-private-registry/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/populate-private-registry/_index.md
@@ -8,6 +8,7 @@ aliases:
- /rancher/v2.0-v2.4/en/installation/air-gap-single-node/config-rancher-for-private-reg/
- /rancher/v2.0-v2.4/en/installation/air-gap-high-availability/config-rancher-for-private-reg/
- /rancher/v2.0-v2.4/en/installation/options/air-gap-helm2/populate-private-registry
+ - /rancher/v2.x/en/installation/resources/advanced/air-gap-helm2/populate-private-registry/
---
> **Prerequisites:** You must have a [private registry](https://docs.docker.com/registry/deploying/) available to use.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/prepare-nodes/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/prepare-nodes/_index.md
index 8d2539a4c3c..71c94aecb84 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/prepare-nodes/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/air-gap-helm2/prepare-nodes/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/installation/air-gap-high-availability/provision-hosts
- /rancher/v2.0-v2.4/en/installation/air-gap-single-node/provision-host
- /rancher/v2.0-v2.4/en/installation/options/air-gap-helm2/prepare-nodes
+ - /rancher/v2.x/en/installation/resources/advanced/air-gap-helm2/prepare-nodes/
---
This section is about how to prepare your node(s) to install Rancher for your air gapped environment. An air gapped environment could be where Rancher server will be installed offline, behind a firewall, or behind a proxy. There are _tabs_ for either a high availability (recommended) or a Docker installation.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/arm64-platform/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/arm64-platform/_index.md
index a5459d480a0..03bcfbede09 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/arm64-platform/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/arm64-platform/_index.md
@@ -12,14 +12,30 @@ aliases:
The following options are available when using an ARM64 platform:
- Running Rancher on ARM64 based node(s)
- - Only [Docker Install]({{}}/rancher/v2.0-v2.4/en/installation/other-installation-methods/single-node-docker)
+ - Only for Docker Install. Please note that the following installation command replaces the examples found in the [Docker Install]({{}}/rancher/v2.0-v2.4/en/installation/other-installation-methods/single-node-docker) link:
+
+ ```
+ # In the last line `rancher/rancher:vX.Y.Z`, be certain to replace "X.Y.Z" with a released version in which ARM64 builds exist. For example, if your matching version is v2.5.8, you would fill in this line with `rancher/rancher:v2.5.8`.
+ docker run -d --restart=unless-stopped \
+ -p 80:80 -p 443:443 \
+ --privileged \
+ rancher/rancher:vX.Y.Z
+ ```
+> **Note:** To check if your specific released version is compatible with the ARM64 architecture, you may navigate to your
+> version's release notes in the following two ways:
+>
+> - Manually find your version using https://github.com/rancher/rancher/releases.
+> - Go directly to your version using the tag and the specific version number. If you plan to use v2.5.8, for example, you may
+> navigate to https://github.com/rancher/rancher/releases/tag/v2.5.8.
+
- Create custom cluster and adding ARM64 based node(s)
- Kubernetes cluster version must be 1.12 or higher
- CNI Network Provider must be [Flannel]({{}}/rancher/v2.0-v2.4/en/faq/networking/cni-providers/#flannel)
+
- Importing clusters that contain ARM64 based nodes
- Kubernetes cluster version must be 1.12 or higher
-Please see [Cluster Options]({{}}/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/options/) how to configure the cluster options.
+Please see [Cluster Options]({{}}/rancher/v2.0-v2.4/en/cluster-provisioning/rke-clusters/options/) for information on how to configure the cluster options.
The following features are not tested:
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-certificate-recognizedca/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-certificate-recognizedca/_index.md
index 280c5bd8308..c546bb51f1d 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-certificate-recognizedca/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-certificate-recognizedca/_index.md
@@ -3,6 +3,7 @@ title: Template for an RKE Cluster with a Certificate Signed by Recognized CA an
weight: 3
aliases:
- /rancher/v2.0-v2.4/en/installation/options/cluster-yml-templates/3-node-certificate-recognizedca
+ - /rancher/v2.x/en/installation/resources/advanced/cluster-yml-templates/3-node-certificate-recognizedca/
---
RKE uses a cluster.yml file to install and configure your Kubernetes cluster.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-certificate/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-certificate/_index.md
index f815968262a..9f7552a58eb 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-certificate/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-certificate/_index.md
@@ -3,6 +3,7 @@ title: Template for an RKE Cluster with a Self-signed Certificate and Layer 4 Lo
weight: 2
aliases:
- /rancher/v2.0-v2.4/en/installation/options/cluster-yml-templates/3-node-certificate
+ - /rancher/v2.x/en/installation/resources/advanced/cluster-yml-templates/3-node-certificate/
---
RKE uses a cluster.yml file to install and configure your Kubernetes cluster.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-externalssl-certificate/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-externalssl-certificate/_index.md
index c260a3e5e33..8b2e38ac17e 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-externalssl-certificate/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-externalssl-certificate/_index.md
@@ -3,6 +3,7 @@ title: Template for an RKE Cluster with a Self-signed Certificate and SSL Termin
weight: 3
aliases:
- /rancher/v2.0-v2.4/en/installation/options/cluster-yml-templates/3-node-externalssl-certificate
+ - /rancher/v2.x/en/installation/resources/advanced/cluster-yml-templates/3-node-externalssl-certificate/
---
RKE uses a cluster.yml file to install and configure your Kubernetes cluster.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-externalssl-recognizedca/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-externalssl-recognizedca/_index.md
index 04f5d063555..ee5d81eaecb 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-externalssl-recognizedca/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/cluster-yml-templates/3-node-externalssl-recognizedca/_index.md
@@ -3,6 +3,7 @@ title: Template for an RKE Cluster with a Recognized CA Certificate and SSL Term
weight: 4
aliases:
- /rancher/v2.0-v2.4/en/installation/options/cluster-yml-templates/3-node-externalssl-recognizedca
+ - /rancher/v2.x/en/installation/resources/advanced/cluster-yml-templates/3-node-externalssl-recognizedca/
---
RKE uses a cluster.yml file to install and configure your Kubernetes cluster.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/_index.md
index 2310bb55f78..552053f1816 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/_index.md
@@ -3,6 +3,7 @@ title: Kubernetes Installation Using Helm 2
weight: 1
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/
---
> After Helm 3 was released, the Rancher installation instructions were updated to use Helm 3.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/_index.md
index 871799100bd..87cbb05f594 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/_index.md
@@ -3,6 +3,7 @@ title: "1. Create Nodes and Load Balancer"
weight: 185
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/create-nodes-lb
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/create-nodes-lb/
---
Use your provider of choice to provision 3 nodes and a Load Balancer endpoint for your RKE install.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/nginx/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/nginx/_index.md
index 39af4c87788..b81f5303496 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/nginx/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/nginx/_index.md
@@ -3,6 +3,7 @@ title: NGINX
weight: 270
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/create-nodes-lb/nginx
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/create-nodes-lb/nginx/
---
NGINX will be configured as Layer 4 load balancer (TCP) that forwards connections to one of your Rancher nodes.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/nlb/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/nlb/_index.md
index bb050e3ddcf..4f15be04556 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/nlb/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/create-nodes-lb/nlb/_index.md
@@ -3,6 +3,7 @@ title: Amazon NLB
weight: 277
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/create-nodes-lb/nlb
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/create-nodes-lb/nlb/
---
## Objectives
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-init/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-init/_index.md
index fcbb07246d4..f3186308967 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-init/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-init/_index.md
@@ -4,6 +4,7 @@ description: "With Helm, you can create configurable deployments instead of usin
weight: 195
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/helm-init
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/helm-init/
---
Helm is the package management tool of choice for Kubernetes. Helm "charts" provide templating syntax for Kubernetes YAML manifest documents. With Helm we can create configurable deployments instead of just using static files. For more information about creating your own catalog of deployments, check out the docs at [https://helm.sh/](https://helm.sh/). To be able to use Helm, the server-side component `tiller` needs to be installed on your cluster.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-init/troubleshooting/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-init/troubleshooting/_index.md
index 2a3f8e230db..789e01310f1 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-init/troubleshooting/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-init/troubleshooting/_index.md
@@ -3,6 +3,7 @@ title: Troubleshooting
weight: 276
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/helm-init/troubleshooting
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/helm-init/troubleshooting/
---
### Helm commands show forbidden
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/_index.md
index 1574a0f7818..985141b076a 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/_index.md
@@ -3,6 +3,7 @@ title: "4. Install Rancher"
weight: 200
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/helm-rancher
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/helm-rancher/
---
Rancher installation is managed using the Helm package manager for Kubernetes. Use `helm` to install the prerequisite and charts to install Rancher.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/chart-options/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/chart-options/_index.md
index b8e3a5948c6..e13a88a1a61 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/chart-options/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/chart-options/_index.md
@@ -3,6 +3,7 @@ title: Chart Options
weight: 276
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/helm-rancher/chart-options
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/helm-rancher/chart-options/
---
### Common Options
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/tls-secrets/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/tls-secrets/_index.md
index 0eb25cd3ae3..3f964fa1459 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/tls-secrets/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/tls-secrets/_index.md
@@ -4,6 +4,7 @@ description: Read about how to populate the Kubernetes TLS secret for a Rancher
weight: 276
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/helm-rancher/tls-secrets
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/helm-rancher/tls-secrets/
---
Kubernetes will create all the objects and services for Rancher, but it will not become available until we populate the `tls-rancher-ingress` secret in the `cattle-system` namespace with the certificate and key.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/troubleshooting/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/troubleshooting/_index.md
index a9e4fedd898..df9f7d23e32 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/troubleshooting/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/helm-rancher/troubleshooting/_index.md
@@ -3,6 +3,7 @@ title: Troubleshooting
weight: 276
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/helm-rancher/troubleshooting
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/helm-rancher/troubleshooting/
---
### Where is everything
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/kubernetes-rke/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/kubernetes-rke/_index.md
index f713be031c1..aeb3d54a9dd 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/kubernetes-rke/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/kubernetes-rke/_index.md
@@ -3,6 +3,7 @@ title: "2. Install Kubernetes with RKE"
weight: 190
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/kubernetes-rke
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/kubernetes-rke/
---
Use RKE to install Kubernetes with a high availability etcd configuration.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/kubernetes-rke/troubleshooting/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/kubernetes-rke/troubleshooting/_index.md
index ef5f433024b..81ec584c614 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/kubernetes-rke/troubleshooting/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/kubernetes-rke/troubleshooting/_index.md
@@ -3,6 +3,7 @@ title: Troubleshooting
weight: 276
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/kubernetes-rke/troubleshooting
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/kubernetes-rke/troubleshooting/
---
### canal Pods show READY 2/3
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/_index.md
index 9f80b74631b..a6989a9fe0b 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/_index.md
@@ -3,6 +3,7 @@ title: RKE Add-On Install
weight: 276
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/api-auditing/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/api-auditing/_index.md
index ac3db04bfdc..9425665cd71 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/api-auditing/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/api-auditing/_index.md
@@ -4,6 +4,7 @@ weight: 300
aliases:
- /rke/latest/en/config-options/add-ons/api-auditing/
- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/api-auditing
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/api-auditing/
---
>**Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-4-lb/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-4-lb/_index.md
index e0a651ba141..7a84ec93609 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-4-lb/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-4-lb/_index.md
@@ -3,6 +3,7 @@ title: Kubernetes Install with External Load Balancer (TCP/Layer 4)
weight: 275
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/layer-4-lb
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/layer-4-lb/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-4-lb/nlb/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-4-lb/nlb/_index.md
index fd17fdf20de..c8b155bb6c2 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-4-lb/nlb/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-4-lb/nlb/_index.md
@@ -2,8 +2,9 @@
title: Amazon NLB Configuration
weight: 277
aliases:
-- /rancher/v2.0-v2.4/en/installation/ha-server-install/nlb/
-- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/layer-4-lb/nlb
+ - /rancher/v2.0-v2.4/en/installation/ha-server-install/nlb/
+ - /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/layer-4-lb/nlb
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/layer-4-lb/nlb/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/_index.md
index 0ad8d2520b6..0dbb1290d64 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/_index.md
@@ -2,8 +2,9 @@
title: Kubernetes Install with External Load Balancer (HTTPS/Layer 7)
weight: 276
aliases:
-- /rancher/v2.0-v2.4/en/installation/ha-server-install-external-lb/
-- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/layer-7-lb
+ - /rancher/v2.0-v2.4/en/installation/ha-server-install-external-lb/
+ - /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/layer-7-lb
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/alb/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/alb/_index.md
index 28431151967..cda6cd4f1d9 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/alb/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/alb/_index.md
@@ -2,8 +2,9 @@
title: Amazon ALB Configuration
weight: 277
aliases:
-- /rancher/v2.0-v2.4/en/installation/ha-server-install-external-lb/alb/
-- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/layer-7-lb/alb
+ - /rancher/v2.0-v2.4/en/installation/ha-server-install-external-lb/alb/
+ - /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/layer-7-lb/alb
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/alb/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/nginx/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/nginx/_index.md
index df7af681f27..c1e1c8024fb 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/nginx/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/nginx/_index.md
@@ -2,8 +2,9 @@
title: NGINX Configuration
weight: 277
aliases:
-- /rancher/v2.0-v2.4/en/installation/ha-server-install-external-lb/nginx/
-- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/layer-7-lb/nginx
+ - /rancher/v2.0-v2.4/en/installation/ha-server-install-external-lb/nginx/
+ - /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/layer-7-lb/nginx
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/layer-7-lb/nginx/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/proxy/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/proxy/_index.md
index 7f41f57dbaf..80cf52b95b8 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/proxy/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/proxy/_index.md
@@ -3,6 +3,7 @@ title: HTTP Proxy Configuration
weight: 277
aliases:
- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/proxy
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/proxy/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/404-default-backend/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/404-default-backend/_index.md
index 2387e81fd55..0c2697ec112 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/404-default-backend/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/404-default-backend/_index.md
@@ -2,9 +2,10 @@
title: 404 - default backend
weight: 30
aliases:
-- /rancher/v2.0-v2.4/en/installation/troubleshooting-ha/404-default-backend/
-- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/troubleshooting/404-default-backend
-- /404-default-backend/
+ - /rancher/v2.0-v2.4/en/installation/troubleshooting-ha/404-default-backend/
+ - /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/troubleshooting/404-default-backend
+ - /404-default-backend/
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/404-default-backend/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/_index.md
index 35978bf4a31..aa383d05918 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/_index.md
@@ -2,9 +2,10 @@
title: Troubleshooting HA RKE Add-On Install
weight: 370
aliases:
-- /rancher/v2.0-v2.4/en/installation/troubleshooting-ha/
-- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/troubleshooting
-- /rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/404-default-backend/
+ - /rancher/v2.0-v2.4/en/installation/troubleshooting-ha/
+ - /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/troubleshooting
+ - /rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/404-default-backend/
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/generic-troubleshooting/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/generic-troubleshooting/_index.md
index 0f2a369e066..9019f0b737d 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/generic-troubleshooting/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/generic-troubleshooting/_index.md
@@ -2,8 +2,9 @@
title: Generic troubleshooting
weight: 5
aliases:
-- /rancher/v2.0-v2.4/en/installation/troubleshooting-ha/generic-troubleshooting/
-- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/troubleshooting/generic-troubleshooting
+ - /rancher/v2.0-v2.4/en/installation/troubleshooting-ha/generic-troubleshooting/
+ - /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/troubleshooting/generic-troubleshooting
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/generic-troubleshooting/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/job-complete-status/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/job-complete-status/_index.md
index 782424bb4c0..f6591e3cd78 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/job-complete-status/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/job-complete-status/_index.md
@@ -2,8 +2,9 @@
title: Failed to get job complete status
weight: 20
aliases:
-- /rancher/v2.0-v2.4/en/installation/troubleshooting-ha/job-complete-status/
-- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/troubleshooting/job-complete-status
+ - /rancher/v2.0-v2.4/en/installation/troubleshooting-ha/job-complete-status/
+ - /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/troubleshooting/job-complete-status
+ - /rancher/v2.x/en/installation/resources/advanced/helm2/rke-add-on/troubleshooting/job-complete-status/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/rke-add-on/layer-4-lb/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/rke-add-on/layer-4-lb/_index.md
index 297d95a5ec8..cb9001f3484 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/rke-add-on/layer-4-lb/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/rke-add-on/layer-4-lb/_index.md
@@ -2,9 +2,10 @@
title: Kubernetes Install with External Load Balancer (TCP/Layer 4)
weight: 275
aliases:
-- /rancher/v2.0-v2.4/en/installation/ha/rke-add-on/layer-4-lb
-- /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/layer-4-lb
-- /rancher/v2.0-v2.4/en/installation/options/rke-add-on/layer-4-lb
+ - /rancher/v2.0-v2.4/en/installation/ha/rke-add-on/layer-4-lb
+ - /rancher/v2.0-v2.4/en/installation/options/helm2/rke-add-on/layer-4-lb
+ - /rancher/v2.0-v2.4/en/installation/options/rke-add-on/layer-4-lb
+ - /rancher/v2.x/en/installation/resources/advanced/rke-add-on/layer-4-lb/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/rke-add-on/layer-7-lb/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/rke-add-on/layer-7-lb/_index.md
index 653c23d9f0a..236813e01e0 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/advanced/rke-add-on/layer-7-lb/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/advanced/rke-add-on/layer-7-lb/_index.md
@@ -2,9 +2,10 @@
title: Kubernetes Install with External Load Balancer (HTTPS/Layer 7)
weight: 276
aliases:
-- /rancher/v2.0-v2.4/en/installation/ha/rke-add-on/layer-7-lb
-- /rancher/v2.0-v2.4/en/installation/options/rke-add-on/layer-7-lb/
-- /rancher/v2.0-v2.4/en/installation/options/rke-add-on/layer-7-lb
+ - /rancher/v2.0-v2.4/en/installation/ha/rke-add-on/layer-7-lb
+ - /rancher/v2.0-v2.4/en/installation/options/rke-add-on/layer-7-lb/
+ - /rancher/v2.0-v2.4/en/installation/options/rke-add-on/layer-7-lb
+ - /rancher/v2.x/en/installation/resources/advanced/rke-add-on/layer-7-lb/
---
> #### **Important: RKE add-on install is only supported up to Rancher v2.0.8**
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/k8s-tutorials/infrastructure-tutorials/infra-for-ha/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/k8s-tutorials/infrastructure-tutorials/infra-for-ha/_index.md
index b9f4c847907..0ca01f9a5d8 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/k8s-tutorials/infrastructure-tutorials/infra-for-ha/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/k8s-tutorials/infrastructure-tutorials/infra-for-ha/_index.md
@@ -9,7 +9,8 @@ This tutorial is intended to help you create a high-availability RKE cluster tha
To install the Rancher management server on a high-availability RKE cluster, we recommend setting up the following infrastructure:
-- **Three Linux nodes,** typically virtual machines, in an infrastructure provider such as Amazon's EC2, Google Compute Engine, or vSphere.
+- **Three Linux nodes,** typically virtual machines, in an infrastructure provider such as Amazon's EC2, Google Compute Engine, Azure, or vSphere.
+ * **Note:** When installing Rancher with Helm in Azure, use the L7 load balancer to avoid networking issues. Please refer [here](https://docs.microsoft.com/en-us/azure/load-balancer/components#limitations) for more information on Azure load balancer limitations.
- **A load balancer** to direct front-end traffic to the three nodes.
- **A DNS record** to map a URL to the load balancer. This will become the Rancher server URL, and downstream Kubernetes clusters will need to reach it.
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/tls-secrets/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/tls-secrets/_index.md
index 40f9c5294d2..3c32084c5e6 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/tls-secrets/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/tls-secrets/_index.md
@@ -35,4 +35,4 @@ kubectl -n cattle-system create secret generic tls-ca \
# Updating a Private CA Certificate
-Follow the steps on [this page]({{}}/rancher/v2.x/en/installation/resources/update-ca-cert) to update the SSL certificate of the ingress in a Rancher [high availability Kubernetes installation]({{}}/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/) or to switch from the default self-signed certificate to a custom certificate.
\ No newline at end of file
+Follow the steps on [this page]({{}}/rancher/v2.0-v2.4/en/installation/resources/update-ca-cert) to update the SSL certificate of the ingress in a Rancher [high availability Kubernetes installation]({{}}/rancher/v2.0-v2.4/en/installation/install-rancher-on-k8s/) or to switch from the default self-signed certificate to a custom certificate.
\ No newline at end of file
diff --git a/content/rancher/v2.0-v2.4/en/installation/resources/upgrading-cert-manager/helm-2-instructions/_index.md b/content/rancher/v2.0-v2.4/en/installation/resources/upgrading-cert-manager/helm-2-instructions/_index.md
index 0bd20397014..aba42eb1959 100644
--- a/content/rancher/v2.0-v2.4/en/installation/resources/upgrading-cert-manager/helm-2-instructions/_index.md
+++ b/content/rancher/v2.0-v2.4/en/installation/resources/upgrading-cert-manager/helm-2-instructions/_index.md
@@ -4,6 +4,7 @@ weight: 2040
aliases:
- /rancher/v2.0-v2.4/en/installation/options/upgrading-cert-manager/helm-2-instructions
- /rancher/v2.0-v2.4/en/installation/resources/choosing-version/encryption/upgrading-cert-manager/helm-2-instructions
+ - /rancher/v2.x/en/installation/resources/upgrading-cert-manager/helm-2-instructions/
---
Rancher uses cert-manager to automatically generate and renew TLS certificates for HA deployments of Rancher. As of Fall 2019, three important changes to cert-manager are set to occur that you need to take action on if you have an HA deployment of Rancher:
diff --git a/content/rancher/v2.0-v2.4/en/k8s-in-rancher/horitzontal-pod-autoscaler/hpa-for-rancher-before-2_0_7/_index.md b/content/rancher/v2.0-v2.4/en/k8s-in-rancher/horitzontal-pod-autoscaler/hpa-for-rancher-before-2_0_7/_index.md
index 32a3e6c0d8d..2c819769302 100644
--- a/content/rancher/v2.0-v2.4/en/k8s-in-rancher/horitzontal-pod-autoscaler/hpa-for-rancher-before-2_0_7/_index.md
+++ b/content/rancher/v2.0-v2.4/en/k8s-in-rancher/horitzontal-pod-autoscaler/hpa-for-rancher-before-2_0_7/_index.md
@@ -3,6 +3,7 @@ title: Manual HPA Installation for Clusters Created Before Rancher v2.0.7
weight: 3050
aliases:
- /rancher/v2.0-v2.4/en/k8s-in-rancher/horizontal-pod-autoscaler/hpa-for-rancher-before-2_0_7
+ - /rancher/v2.x/en/k8s-in-rancher/horitzontal-pod-autoscaler/hpa-for-rancher-before-2_0_7/
---
This section describes how to manually install HPAs for clusters created with Rancher before v2.0.7. This section also describes how to configure your HPA to scale up or down, and how to assign roles to your HPA.
diff --git a/content/rancher/v2.0-v2.4/en/k8s-in-rancher/horitzontal-pod-autoscaler/manage-hpa-with-kubectl/_index.md b/content/rancher/v2.0-v2.4/en/k8s-in-rancher/horitzontal-pod-autoscaler/manage-hpa-with-kubectl/_index.md
index 1e2bf83d268..6857b0ce295 100644
--- a/content/rancher/v2.0-v2.4/en/k8s-in-rancher/horitzontal-pod-autoscaler/manage-hpa-with-kubectl/_index.md
+++ b/content/rancher/v2.0-v2.4/en/k8s-in-rancher/horitzontal-pod-autoscaler/manage-hpa-with-kubectl/_index.md
@@ -71,7 +71,7 @@ spec:
```
-Directive | Description
+Directive | Description
---------|----------|
`apiVersion: autoscaling/v2beta1` | The version of the Kubernetes `autoscaling` API group in use. This example manifest uses the beta version, so scaling by CPU and memory is enabled. |
`name: hello-world` | Indicates that HPA is performing autoscaling for the `hello-word` deployment. |
@@ -172,7 +172,7 @@ For HPA to use custom metrics from Prometheus, package [k8s-prometheus-adapter](
I0724 10:18:45.696703 1 round_trippers.go:445] Content-Type: application/json
I0724 10:18:45.696706 1 round_trippers.go:445] Content-Length: 2581
I0724 10:18:45.696766 1 request.go:836] Response Body: {"kind":"PodList","apiVersion":"v1","metadata":{"selfLink":"/api/v1/namespaces/default/pods","resourceVersion":"6237"},"items":[{"metadata":{"name":"hello-world-54764dfbf8-q6l82","generateName":"hello-world-54764dfbf8-","namespace":"default","selfLink":"/api/v1/namespaces/default/pods/hello-world-54764dfbf8-q6l82","uid":"484cb929-8f29-11e8-99d2-067cac34e79c","resourceVersion":"4066","creationTimestamp":"2018-07-24T10:06:50Z","labels":{"app":"hello-world","pod-template-hash":"1032089694"},"annotations":{"cni.projectcalico.org/podIP":"10.42.0.7/32"},"ownerReferences":[{"apiVersion":"extensions/v1beta1","kind":"ReplicaSet","name":"hello-world-54764dfbf8","uid":"4849b9b1-8f29-11e8-99d2-067cac34e79c","controller":true,"blockOwnerDeletion":true}]},"spec":{"volumes":[{"name":"default-token-ncvts","secret":{"secretName":"default-token-ncvts","defaultMode":420}}],"containers":[{"name":"hello-world","image":"rancher/hello-world","ports":[{"containerPort":80,"protocol":"TCP"}],"resources":{"requests":{"cpu":"500m","memory":"64Mi"}},"volumeMounts":[{"name":"default-token-ncvts","readOnly":true,"mountPath":"/var/run/secrets/kubernetes.io/serviceaccount"}],"terminationMessagePath":"/dev/termination-log","terminationMessagePolicy":"File","imagePullPolicy":"Always"}],"restartPolicy":"Always","terminationGracePeriodSeconds":30,"dnsPolicy":"ClusterFirst","serviceAccountName":"default","serviceAccount":"default","nodeName":"34.220.18.140","securityContext":{},"schedulerName":"default-scheduler","tolerations":[{"key":"node.kubernetes.io/not-ready","operator":"Exists","effect":"NoExecute","tolerationSeconds":300},{"key":"node.kubernetes.io/unreachable","operator":"Exists","effect":"NoExecute","tolerationSeconds":300}]},"status":{"phase":"Running","conditions":[{"type":"Initialized","status":"True","lastProbeTime":null,"lastTransitionTime":"2018-07-24T10:06:50Z"},{"type":"Ready","status":"True","lastProbeTime":null,"lastTransitionTime":"2018-07-24T10:06:54Z"},{"type":"PodScheduled","status":"True","lastProbeTime":null,"lastTransitionTime":"2018-07-24T10:06:50Z"}],"hostIP":"34.220.18.140","podIP":"10.42.0.7","startTime":"2018-07-24T10:06:50Z","containerStatuses":[{"name":"hello-world","state":{"running":{"startedAt":"2018-07-24T10:06:54Z"}},"lastState":{},"ready":true,"restartCount":0,"image":"rancher/hello-world:latest","imageID":"docker-pullable://rancher/hello-world@sha256:4b1559cb4b57ca36fa2b313a3c7dde774801aa3a2047930d94e11a45168bc053","containerID":"docker://cce4df5fc0408f03d4adf82c90de222f64c302bf7a04be1c82d584ec31530773"}],"qosClass":"Burstable"}}]}
- I0724 10:18:45.699525 1 api.go:74] GET http://prometheus-server.prometheus.34.220.18.140.xip.io/api/v1/query?query=sum%28rate%28container_fs_read_seconds_total%7Bpod_name%3D%22hello-world-54764dfbf8-q6l82%22%2Ccontainer_name%21%3D%22POD%22%2Cnamespace%3D%22default%22%7D%5B5m%5D%29%29+by+%28pod_name%29&time=1532427525.697 200 OK
+ I0724 10:18:45.699525 1 api.go:74] GET http://prometheus-server.prometheus.34.220.18.140.sslip.io/api/v1/query?query=sum%28rate%28container_fs_read_seconds_total%7Bpod_name%3D%22hello-world-54764dfbf8-q6l82%22%2Ccontainer_name%21%3D%22POD%22%2Cnamespace%3D%22default%22%7D%5B5m%5D%29%29+by+%28pod_name%29&time=1532427525.697 200 OK
I0724 10:18:45.699620 1 api.go:93] Response Body: {"status":"success","data":{"resultType":"vector","result":[{"metric":{"pod_name":"hello-world-54764dfbf8-q6l82"},"value":[1532427525.697,"0"]}]}}
I0724 10:18:45.699939 1 wrap.go:42] GET /apis/custom.metrics.k8s.io/v1beta1/namespaces/default/pods/%2A/fs_read?labelSelector=app%3Dhello-world: (12.431262ms) 200 [[kube-controller-manager/v1.10.1 (linux/amd64) kubernetes/d4ab475/system:serviceaccount:kube-system:horizontal-pod-autoscaler] 10.42.0.0:24268]
I0724 10:18:51.727845 1 request.go:836] Request Body: {"kind":"SubjectAccessReview","apiVersion":"authorization.k8s.io/v1beta1","metadata":{"creationTimestamp":null},"spec":{"nonResourceAttributes":{"path":"/","verb":"get"},"user":"system:anonymous","group":["system:unauthenticated"]},"status":{"allowed":false}}
diff --git a/content/rancher/v2.0-v2.4/en/k8s-in-rancher/load-balancers-and-ingress/ingress/_index.md b/content/rancher/v2.0-v2.4/en/k8s-in-rancher/load-balancers-and-ingress/ingress/_index.md
index e2eba57e3ff..82a6da5d5d1 100644
--- a/content/rancher/v2.0-v2.4/en/k8s-in-rancher/load-balancers-and-ingress/ingress/_index.md
+++ b/content/rancher/v2.0-v2.4/en/k8s-in-rancher/load-balancers-and-ingress/ingress/_index.md
@@ -4,7 +4,7 @@ description: Ingresses can be added for workloads to provide load balancing, SSL
weight: 3042
aliases:
- /rancher/v2.0-v2.4/en/tasks/workloads/add-ingress/
- - /rancher/v2.0-v2.4/en/k8s-in-rancher/load-balancers-and-ingress/ingress
+ - /rancher/v2.0-v2.4/en/k8s-in-rancher/load-balancers-and-ingress/ingress
---
Ingress can be added for workloads to provide load balancing, SSL termination and host/path based routing. When using ingresses in a project, you can program the ingress hostname to an external DNS by setting up a [Global DNS entry]({{}}/rancher/v2.0-v2.4/en/helm-charts/globaldns/).
@@ -14,24 +14,24 @@ Ingress can be added for workloads to provide load balancing, SSL termination an
1. Enter a **Name** for the ingress.
1. Select an existing **Namespace** from the drop-down list. Alternatively, you can create a new namespace on the fly by clicking **Add to a new namespace**.
1. Create ingress forwarding **Rules**. For help configuring the rules, refer to [this section.](#ingress-rule-configuration) If any of your ingress rules handle requests for encrypted ports, add a certificate to encrypt/decrypt communications.
-1. **Optional:** click **Add Rule** to create additional ingress rules. For example, after you create ingress rules to direct requests for your hostname, you'll likely want to create a default backend to handle 404s.
+1. **Optional:** click **Add Rule** to create additional ingress rules. For example, after you create ingress rules to direct requests for your hostname, you'll likely want to create a default backend to handle 404s.
**Result:** Your ingress is added to the project. The ingress begins enforcing your ingress rules.
# Ingress Rule Configuration
-- [Automatically generate a xip.io hostname](#automatically-generate-a-xip-io-hostname)
+- [Automatically generate a sslip.io hostname](#automatically-generate-a-sslip-io-hostname)
- [Specify a hostname to use](#specify-a-hostname-to-use)
- [Use as the default backend](#use-as-the-default-backend)
- [Certificates](#certificates)
- [Labels and Annotations](#labels-and-annotations)
-### Automatically generate a xip.io hostname
+### Automatically generate a sslip.io hostname
-If you choose this option, ingress routes requests to hostname to a DNS name that's automatically generated. Rancher uses [xip.io](http://xip.io/) to automatically generates the DNS name. This option is best used for testing, _not_ production environments.
+If you choose this option, ingress routes requests to hostname to a DNS name that's automatically generated. Rancher uses [sslip.io](http://sslip.io/) to automatically generates the DNS name. This option is best used for testing, _not_ production environments.
->**Note:** To use this option, you must be able to resolve to `xip.io` addresses.
+>**Note:** To use this option, you must be able to resolve to `sslip.io` addresses.
1. Add a **Target Backend**. By default, a workload is added to the ingress, but you can add more targets by clicking either **Service** or **Workload**.
1. **Optional:** If you want specify a workload or service when a request is sent to a particular hostname path, add a **Path** for the target. For example, if you want requests for `www.mysite.com/contact-us` to be sent to a different service than `www.mysite.com`, enter `/contact-us` in the **Path** field. Typically, the first rule that you create does not include a path.
diff --git a/content/rancher/v2.0-v2.4/en/k8s-in-rancher/load-balancers-and-ingress/load-balancers/_index.md b/content/rancher/v2.0-v2.4/en/k8s-in-rancher/load-balancers-and-ingress/load-balancers/_index.md
index 6fdfa423363..c3b39f63b54 100644
--- a/content/rancher/v2.0-v2.4/en/k8s-in-rancher/load-balancers-and-ingress/load-balancers/_index.md
+++ b/content/rancher/v2.0-v2.4/en/k8s-in-rancher/load-balancers-and-ingress/load-balancers/_index.md
@@ -58,9 +58,9 @@ Some cloud-managed layer-7 load balancers (such as the ALB ingress controller on
Other layer-7 load balancers, such as the Google Load Balancer or Nginx Ingress Controller, directly expose one or more IP addresses. Google Load Balancer provides a single routable IP address. Nginx Ingress Controller exposes the external IP of all nodes that run the Nginx Ingress Controller. You can do either of the following:
1. Configure your own DNS to map (via A records) your domain name to the IP addresses exposes by the Layer-7 load balancer.
-2. Ask Rancher to generate an xip.io host name for your ingress rule. Rancher will take one of your exposed IPs, say a.b.c.d, and generate a host name ..a.b.c.d.xip.io.
+2. Ask Rancher to generate an sslip.io host name for your ingress rule. Rancher will take one of your exposed IPs, say a.b.c.d, and generate a host name ..a.b.c.d.sslip.io.
-The benefit of using xip.io is that you obtain a working entrypoint URL immediately after you create the ingress rule. Setting up your own domain name, on the other hand, requires you to configure DNS servers and wait for DNS to propagate.
+The benefit of using sslip.io is that you obtain a working entrypoint URL immediately after you create the ingress rule. Setting up your own domain name, on the other hand, requires you to configure DNS servers and wait for DNS to propagate.
## Related Links
diff --git a/content/rancher/v2.0-v2.4/en/k8s-in-rancher/workloads/deploy-workloads/_index.md b/content/rancher/v2.0-v2.4/en/k8s-in-rancher/workloads/deploy-workloads/_index.md
index 95a39db870d..249bd6e59d9 100644
--- a/content/rancher/v2.0-v2.4/en/k8s-in-rancher/workloads/deploy-workloads/_index.md
+++ b/content/rancher/v2.0-v2.4/en/k8s-in-rancher/workloads/deploy-workloads/_index.md
@@ -15,7 +15,7 @@ Deploy a workload to run an application in one or more containers.
1. Enter a **Name** for the workload.
-1. Select a [workload type]({{}}/rancher/v2.0-v2.4/en/k8s-in-rancher/workloads/). The workload defaults to a scalable deployment, by can change the workload type by clicking **More options.**
+1. Select a [workload type]({{}}/rancher/v2.0-v2.4/en/k8s-in-rancher/workloads/). The workload defaults to a scalable deployment, but you can change the workload type by clicking **More options.**
1. From the **Docker Image** field, enter the name of the Docker image that you want to deploy to the project, optionally prefacing it with the registry host (e.g. `quay.io`, `registry.gitlab.com`, etc.). During deployment, Rancher pulls this image from the specified public or private registry. If no registry host is provided, Rancher will pull the image from [Docker Hub](https://hub.docker.com/explore/). Enter the name exactly as it appears in the registry server, including any required path, and optionally including the desired tag (e.g. `registry.gitlab.com/user/path/image:tag`). If no tag is provided, the `latest` tag will be automatically used.
diff --git a/content/rancher/v2.0-v2.4/en/overview/concepts/_index.md b/content/rancher/v2.0-v2.4/en/overview/concepts/_index.md
index afac8412a3f..c637928995d 100644
--- a/content/rancher/v2.0-v2.4/en/overview/concepts/_index.md
+++ b/content/rancher/v2.0-v2.4/en/overview/concepts/_index.md
@@ -52,7 +52,7 @@ Three etcd nodes is generally sufficient for smaller clusters and five etcd node
### Controlplane Nodes
-Controlplane nodes run the Kubernetes API server, scheduler, and controller manager. These nodes take care of routine tasks to ensure that your cluster maintains your configuration. Because all cluster data is stored on your etcd nodes, control plane nodes are stateless. You can run control plane on a single node, although two or more nodes are recommended for redundancy. Additionally, a single node can share the control plane and etcd roles.
+Controlplane nodes run the Kubernetes API server, scheduler, and controller manager. These nodes take care of routine tasks to ensure that your cluster maintains your configuration. Because all cluster data is stored on your etcd nodes, control plane nodes are stateless. You can run control plane on a single node, although three or more nodes are recommended for redundancy. Additionally, a single node can share the control plane and etcd roles.
### Worker Nodes
@@ -69,4 +69,4 @@ For high-availability installations of Rancher, Helm is the tool used to install
Helm is the package management tool of choice for Kubernetes. Helm charts provide templating syntax for Kubernetes YAML manifest documents. With Helm we can create configurable deployments instead of just using static files. For more information about creating your own catalog of deployments, check out the docs at [https://helm.sh/](https://helm.sh).
-For more information on service accounts and cluster role binding, refer to the [Kubernetes documentation.](https://kubernetes.io/docs/reference/access-authn-authz/rbac/)
\ No newline at end of file
+For more information on service accounts and cluster role binding, refer to the [Kubernetes documentation.](https://kubernetes.io/docs/reference/access-authn-authz/rbac/)
diff --git a/content/rancher/v2.0-v2.4/en/pipelines/docs-for-v2.0.x/_index.md b/content/rancher/v2.0-v2.4/en/pipelines/docs-for-v2.0.x/_index.md
index 322a32e6e34..e4c584e74bf 100644
--- a/content/rancher/v2.0-v2.4/en/pipelines/docs-for-v2.0.x/_index.md
+++ b/content/rancher/v2.0-v2.4/en/pipelines/docs-for-v2.0.x/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/project-admin/tools/pipelines/docs-for-v2.0.x
- /rancher/v2.0-v2.4/en/project-admin/pipelines/docs-for-v2.0.x
- /rancher/v2.0-v2.4/en/k8s-in-rancher/pipelines/docs-for-v2.0.x
+ - /rancher/v2.x/en/pipelines/docs-for-v2.0.x/
---
>**Note:** This section describes the pipeline feature as implemented in Rancher v2.0.x. If you are using Rancher v2.1 or later, where pipelines have been significantly improved, please refer to the new documentation for [v2.1 or later]({{}}/rancher/v2.0-v2.4/en/k8s-in-rancher/pipelines/).
diff --git a/content/rancher/v2.0-v2.4/en/project-admin/project-members/_index.md b/content/rancher/v2.0-v2.4/en/project-admin/project-members/_index.md
index 47f4c7eddfe..a0a4a0922d7 100644
--- a/content/rancher/v2.0-v2.4/en/project-admin/project-members/_index.md
+++ b/content/rancher/v2.0-v2.4/en/project-admin/project-members/_index.md
@@ -42,6 +42,8 @@ Following project creation, you can add users as project members so that they ca
>
>- Users assigned the `Owner` or `Member` role for a project automatically inherit the `namespace creation` role. However, this role is a [Kubernetes ClusterRole](https://kubernetes.io/docs/reference/access-authn-authz/rbac/#role-and-clusterrole), meaning its scope extends to all projects in the cluster. Therefore, users explicitly assigned the `Owner` or `Member` role for a project can create namespaces in other projects they're assigned to, even with only the `Read Only` role assigned.
>
+ >- By default, the Rancher role of `project-member` inherits from the `Kubernetes-edit` role, and the `project-owner` role inherits from the `Kubernetes-admin` role. As such, both `project-member` and `project-owner` roles will allow for namespace management, including the ability to create and delete namespaces.
+ >
>- For `Custom` roles, you can modify the list of individual roles available for assignment.
>
> - To add roles to the list, [Add a Custom Role]({{}}/rancher/v2.0-v2.4/en/admin-settings/rbac/default-custom-roles).
diff --git a/content/rancher/v2.0-v2.4/en/project-admin/resource-quotas/_index.md b/content/rancher/v2.0-v2.4/en/project-admin/resource-quotas/_index.md
index 6cac538d8f9..af27d4b3457 100644
--- a/content/rancher/v2.0-v2.4/en/project-admin/resource-quotas/_index.md
+++ b/content/rancher/v2.0-v2.4/en/project-admin/resource-quotas/_index.md
@@ -45,4 +45,4 @@ Edit [resource quotas]({{}}/rancher/v2.0-v2.4/en/k8s-in-rancher/project
1. Click **Create**.
-**Result:** The resource quota is applied to your project and namespaces. When you add more namespaces in the future, Rancher validates that the project can accommodate the namespace. If the project can't allocate the resources, Rancher won't let you save your changes.
+**Result:** The resource quota is applied to your project and namespaces. When you add more namespaces in the future, Rancher validates that the project can accommodate the namespace. If the project can't allocate the resources, you may still create namespaces, but they will be given a resource quota of 0. Subsequently, Rancher will not allow you to create any resources restricted by this quota.
diff --git a/content/rancher/v2.0-v2.4/en/project-admin/resource-quotas/quotas-for-projects/_index.md b/content/rancher/v2.0-v2.4/en/project-admin/resource-quotas/quotas-for-projects/_index.md
index 48fd35226c5..63a18ba0f49 100644
--- a/content/rancher/v2.0-v2.4/en/project-admin/resource-quotas/quotas-for-projects/_index.md
+++ b/content/rancher/v2.0-v2.4/en/project-admin/resource-quotas/quotas-for-projects/_index.md
@@ -28,7 +28,7 @@ The resource quota includes two limits, which you set while creating or editing
In the following diagram, a Rancher administrator wants to apply a resource quota that sets the same CPU and memory limit for every namespace in their project (`Namespace 1-4`). However, in Rancher, the administrator can set a resource quota for the project (`Project Resource Quota`) rather than individual namespaces. This quota includes resource limits for both the entire project (`Project Limit`) and individual namespaces (`Namespace Default Limit`). Rancher then propagates the `Namespace Default Limit` quotas to each namespace (`Namespace Resource Quota`) when created.
Rancher: Resource Quotas Propagating to Each Namespace
-
+
Let's highlight some more nuanced functionality. If a quota is deleted at the project level, it will also be removed from all namespaces contained within that project, despite any overrides that may exist. Further, updating an existing namespace default limit for a quota at the project level will not result in that value being propagated to existing namespaces in the project; the updated value will only be applied to newly created namespaces in that project. To update a namespace default limit for existing namespaces you can delete and subsequently recreate the quota at the project level with the new default value. This will result in the new default value being applied to all existing namespaces in the project.
diff --git a/content/rancher/v2.0-v2.4/en/project-admin/tools/project-alerts/_index.md b/content/rancher/v2.0-v2.4/en/project-admin/tools/project-alerts/_index.md
index badf94d9cb9..e3710de9d07 100644
--- a/content/rancher/v2.0-v2.4/en/project-admin/tools/project-alerts/_index.md
+++ b/content/rancher/v2.0-v2.4/en/project-admin/tools/project-alerts/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.0-v2.4/en/project-admin/tools/alerts
- /rancher/v2.0-v2.4/en/monitoring-alerting/legacy/alerts/project-alerts
- /rancher/v2.0-v2.4/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-alerts/project-alerts
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-alerts/project-alerts/
---
To keep your clusters and applications healthy and driving your organizational productivity forward, you need to stay informed of events occurring in your clusters and projects, both planned and unplanned. When an event occurs, your alert is triggered, and you are sent a notification. You can then, if necessary, follow up with corrective actions.
diff --git a/content/rancher/v2.0-v2.4/en/project-admin/tools/project-logging/_index.md b/content/rancher/v2.0-v2.4/en/project-admin/tools/project-logging/_index.md
index 6cb0f5cdaa8..c4c54f55e3d 100644
--- a/content/rancher/v2.0-v2.4/en/project-admin/tools/project-logging/_index.md
+++ b/content/rancher/v2.0-v2.4/en/project-admin/tools/project-logging/_index.md
@@ -6,6 +6,8 @@ aliases:
- /rancher/v2.0-v2.4/en/project-admin/tools/logging
- /rancher/v2.0-v2.4/en/logging/legacy/project-logging
- /rancher/v2.0-v2.4/en/logging/v2.0.x-v2.4.x/project-logging
+ - /rancher/v2.x/en/logging/v2.0.x-v2.4.x/project-logging/
+ - /rancher/v2.x/en/monitoring-alerting/v2.0.x-v2.4.x/cluster-monitoring/project-monitoring/
---
Rancher can integrate with a variety of popular logging services and tools that exist outside of your Kubernetes clusters.
diff --git a/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/amazon-aws-qs/_index.md b/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/amazon-aws-qs/_index.md
index 24c27e3bb93..9c45743601b 100644
--- a/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/amazon-aws-qs/_index.md
+++ b/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/amazon-aws-qs/_index.md
@@ -24,7 +24,7 @@ The following steps will quickly deploy a Rancher Server on AWS with a single no
1. Rename the `terraform.tfvars.example` file to `terraform.tfvars`.
1. Edit `terraform.tfvars` and customize the following variables:
- - `aws_access_key` - Amazon AWS Access Key
+ - `aws_access_key` - Amazon AWS Access Key
- `aws_secret_key` - Amazon AWS Secret Key
- `rancher_server_admin_password` - Admin password for created Rancher server
@@ -45,7 +45,7 @@ Suggestions include:
Outputs:
rancher_node_ip = xx.xx.xx.xx
- rancher_server_url = https://rancher.xx.xx.xx.xx.xip.io
+ rancher_server_url = https://rancher.xx.xx.xx.xx.sslip.io
workload_node_ip = yy.yy.yy.yy
```
diff --git a/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/digital-ocean-qs/_index.md b/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/digital-ocean-qs/_index.md
index 49c66da56e3..0f11b237ccf 100644
--- a/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/digital-ocean-qs/_index.md
+++ b/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/digital-ocean-qs/_index.md
@@ -45,7 +45,7 @@ Suggestions include:
Outputs:
rancher_node_ip = xx.xx.xx.xx
- rancher_server_url = https://rancher.xx.xx.xx.xx.xip.io
+ rancher_server_url = https://rancher.xx.xx.xx.xx.sslip.io
workload_node_ip = yy.yy.yy.yy
```
diff --git a/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/google-gcp-qs/_index.md b/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/google-gcp-qs/_index.md
index f6f591cf368..0eeb4a5624d 100644
--- a/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/google-gcp-qs/_index.md
+++ b/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/google-gcp-qs/_index.md
@@ -25,7 +25,7 @@ The following steps will quickly deploy a Rancher server on GCP in a single-node
1. Rename the `terraform.tfvars.example` file to `terraform.tfvars`.
1. Edit `terraform.tfvars` and customize the following variables:
- - `gcp_account_json` - GCP service account file path and file name
+ - `gcp_account_json` - GCP service account file path and file name
- `rancher_server_admin_password` - Admin password for created Rancher server
1. **Optional:** Modify optional variables within `terraform.tfvars`.
@@ -46,7 +46,7 @@ Suggestions include:
Outputs:
rancher_node_ip = xx.xx.xx.xx
- rancher_server_url = https://rancher.xx.xx.xx.xx.xip.io
+ rancher_server_url = https://rancher.xx.xx.xx.xx.sslip.io
workload_node_ip = yy.yy.yy.yy
```
diff --git a/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/microsoft-azure-qs/_index.md b/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/microsoft-azure-qs/_index.md
index 10856d3d126..663c03edc1b 100644
--- a/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/microsoft-azure-qs/_index.md
+++ b/content/rancher/v2.0-v2.4/en/quick-start-guide/deployment/microsoft-azure-qs/_index.md
@@ -27,7 +27,7 @@ The following steps will quickly deploy a Rancher server on Azure in a single-no
1. Rename the `terraform.tfvars.example` file to `terraform.tfvars`.
1. Edit `terraform.tfvars` and customize the following variables:
- - `azure_subscription_id` - Microsoft Azure Subscription ID
+ - `azure_subscription_id` - Microsoft Azure Subscription ID
- `azure_client_id` - Microsoft Azure Client ID
- `azure_client_secret` - Microsoft Azure Client Secret
- `azure_tenant_id` - Microsoft Azure Tenant ID
@@ -51,7 +51,7 @@ Suggestions include:
Outputs:
rancher_node_ip = xx.xx.xx.xx
- rancher_server_url = https://rancher.xx.xx.xx.xx.xip.io
+ rancher_server_url = https://rancher.xx.xx.xx.xx.sslip.io
workload_node_ip = yy.yy.yy.yy
```
diff --git a/content/rancher/v2.0-v2.4/en/quick-start-guide/workload/quickstart-deploy-workload-ingress/_index.md b/content/rancher/v2.0-v2.4/en/quick-start-guide/workload/quickstart-deploy-workload-ingress/_index.md
index 1aaf5c6d324..e47fa946ccb 100644
--- a/content/rancher/v2.0-v2.4/en/quick-start-guide/workload/quickstart-deploy-workload-ingress/_index.md
+++ b/content/rancher/v2.0-v2.4/en/quick-start-guide/workload/quickstart-deploy-workload-ingress/_index.md
@@ -61,11 +61,11 @@ Now that the application is up and running it needs to be exposed so that other
9. Leave everything else as default and click **Save**.
-**Result:** The application is assigned a `xip.io` address and exposed. It may take a minute or two to populate.
+**Result:** The application is assigned a `sslip.io` address and exposed. It may take a minute or two to populate.
### View Your Application
-From the **Load Balancing** page, click the target link, which will look something like `hello.default.xxx.xxx.xxx.xxx.xip.io > hello-world`.
+From the **Load Balancing** page, click the target link, which will look something like `hello.default.xxx.xxx.xxx.xxx.sslip.io > hello-world`.
Your application will open in a separate window.
diff --git a/content/rancher/v2.0-v2.4/en/security/cve/_index.md b/content/rancher/v2.0-v2.4/en/security/cve/_index.md
index ec0dd7d58f0..41699809bdf 100644
--- a/content/rancher/v2.0-v2.4/en/security/cve/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/cve/_index.md
@@ -7,6 +7,9 @@ Rancher is committed to informing the community of security issues in our produc
| ID | Description | Date | Resolution |
|----|-------------|------|------------|
+| [CVE-2021-31999](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-31999) | A vulnerability was discovered where a malicious Rancher user could craft an API request directed at the proxy for the Kubernetes API of a managed cluster to gain access to information they do not have access to. This is done by passing the "Impersonate-User" or "Impersonate-Group" header in the Connection header, which is then removed by the proxy. At this point, instead of impersonating the user and their permissions, the request will act as if it was from the Rancher management server, i.e. local server, and return the requested information. You are vulnerable if you are running any Rancher 2.x version. Only valid Rancher users who have some level of permission on the cluster can perform the request. There is no direct mitigation besides upgrading to the patched versions. You can limit wider exposure by ensuring all Rancher users are trusted. | 14 Jul 2021 | [Rancher v2.5.9](https://github.com/rancher/rancher/releases/tag/v2.5.9), [Rancher v2.4.16](https://github.com/rancher/rancher/releases/tag/v2.4.16) |
+| [CVE-2021-25318](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-25318) | A vulnerability was discovered in Rancher where users were granted access to resources regardless of the resource's API group. For example Rancher should have allowed users access to `apps.catalog.cattle.io`, but instead incorrectly gave access to `apps.*`. You are vulnerable if you are running any Rancher 2.x version. The extent of the exploit increases if there are other matching CRD resources installed in the cluster. There is no direct mitigation besides upgrading to the patched versions. | 14 Jul 2021 | [Rancher v2.5.9](https://github.com/rancher/rancher/releases/tag/v2.5.9), [Rancher v2.4.16](https://github.com/rancher/rancher/releases/tag/v2.4.16) |
+| [CVE-2021-25320](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-25320) | A vulnerability was discovered in Rancher where cloud credentials weren't being properly validated through the Rancher API. Specifically through a proxy designed to communicate with cloud providers. Any Rancher user that was logged-in and aware of a cloud credential ID that was valid for a given cloud provider could make requests against that cloud provider's API through the proxy API, and the cloud credential would be attached. You are vulnerable if you are running any Rancher 2.2.0 or above and use cloud credentials. The exploit is limited to valid Rancher users. There is no direct mitigation besides upgrading to the patched versions. You can limit wider exposure by ensuring all Rancher users are trusted. | 14 Jul 2021 | [Rancher v2.5.9](https://github.com/rancher/rancher/releases/tag/v2.5.9), [Rancher v2.4.16](https://github.com/rancher/rancher/releases/tag/v2.4.16) |
| [CVE-2018-20321](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20321) | Any project member with access to the `default` namespace can mount the `netes-default` service account in a pod and then use that pod to execute administrative privileged commands against the Kubernetes cluster. | 29 Jan 2019 | [Rancher v2.1.6](https://github.com/rancher/rancher/releases/tag/v2.1.6) and [Rancher v2.0.11](https://github.com/rancher/rancher/releases/tag/v2.0.11) - Rolling back from these versions or greater have specific [instructions]({{}}/rancher/v2.0-v2.4/en/upgrades/rollbacks/). |
| [CVE-2019-6287](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-6287) | Project members continue to get access to namespaces from projects that they were removed from if they were added to more than one project. | 29 Jan 2019 | [Rancher v2.1.6](https://github.com/rancher/rancher/releases/tag/v2.1.6) and [Rancher v2.0.11](https://github.com/rancher/rancher/releases/tag/v2.0.11) |
| [CVE-2019-11202](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11202) | The default admin, that is shipped with Rancher, will be re-created upon restart of Rancher despite being explicitly deleted. | 16 Apr 2019 | [Rancher v2.2.2](https://github.com/rancher/rancher/releases/tag/v2.2.2), [Rancher v2.1.9](https://github.com/rancher/rancher/releases/tag/v2.1.9) and [Rancher v2.0.14](https://github.com/rancher/rancher/releases/tag/v2.0.14) |
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.1/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.1/_index.md
index 31ca2f58b5a..8e443a49919 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.1/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.1/_index.md
@@ -1,6 +1,8 @@
---
title: Rancher v2.1
weight: 5
+aliases:
+ - /rancher/v2.x/en/security/rancher-2.1/
---
### Self Assessment Guide
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.1/benchmark-2.1/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.1/benchmark-2.1/_index.md
index 7931a1d5c8d..15b400c431f 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.1/benchmark-2.1/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.1/benchmark-2.1/_index.md
@@ -3,6 +3,7 @@ title: CIS Benchmark Rancher Self-Assessment Guide v2.1
weight: 209
aliases:
- /rancher/v2.0-v2.4/en/security/benchmark-2.1
+ - /rancher/v2.x/en/security/rancher-2.1/benchmark-2.1/
---
This document is a companion to the Rancher v2.1 security hardening guide. The hardening guide provides prescriptive guidance for hardening a production installation of Rancher, and this benchmark guide is meant to help you evaluate the level of security of the hardened cluster against each control in the benchmark.
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.1/hardening-2.1/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.1/hardening-2.1/_index.md
index 1dcbee095ba..aedd034a598 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.1/hardening-2.1/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.1/hardening-2.1/_index.md
@@ -3,6 +3,7 @@ title: Hardening Guide v2.1
weight: 104
aliases:
- /rancher/v2.0-v2.4/en/security/hardening-2.1
+ - /rancher/v2.x/en/security/rancher-2.1/hardening-2.1/
---
This document provides prescriptive guidance for hardening a production installation of Rancher v2.1.x. It outlines the configurations and controls required to address Kubernetes benchmark controls from the Center for Information Security (CIS).
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.2/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.2/_index.md
index 457ecb4477d..a485c707358 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.2/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.2/_index.md
@@ -1,6 +1,8 @@
---
title: Rancher v2.2
weight: 4
+aliases:
+ - /rancher/v2.x/en/security/rancher-2.2/
---
### Self Assessment Guide
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.2/benchmark-2.2/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.2/benchmark-2.2/_index.md
index 0bbfd78bd3e..7d719a872dc 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.2/benchmark-2.2/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.2/benchmark-2.2/_index.md
@@ -3,6 +3,7 @@ title: CIS Benchmark Rancher Self-Assessment Guide v2.2
weight: 208
aliases:
- /rancher/v2.0-v2.4/en/security/benchmark-2.2
+ - /rancher/v2.x/en/security/rancher-2.2/benchmark-2.2/
---
This document is a companion to the Rancher v2.2 security hardening guide. The hardening guide provides prescriptive guidance for hardening a production installation of Rancher, and this benchmark guide is meant to help you evaluate the level of security of the hardened cluster against each control in the benchmark.
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.2/hardening-2.2/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.2/hardening-2.2/_index.md
index f3faefd7802..768e53eccac 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.2/hardening-2.2/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.2/hardening-2.2/_index.md
@@ -3,6 +3,7 @@ title: Hardening Guide v2.2
weight: 103
aliases:
- /rancher/v2.0-v2.4/en/security/hardening-2.2
+ - /rancher/v2.x/en/security/rancher-2.2/hardening-2.2/
---
This document provides prescriptive guidance for hardening a production installation of Rancher v2.2.x. It outlines the configurations and controls required to address Kubernetes benchmark controls from the Center for Information Security (CIS).
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/_index.md
index 0f3f04da692..e50a8c2f175 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/_index.md
@@ -1,6 +1,8 @@
---
title: Rancher v2.3.x
weight: 3
+aliases:
+ - /rancher/v2.x/en/security/rancher-2.3.x/
---
The relevant Hardening Guide and Self Assessment guide depends on your Rancher version:
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/_index.md
index aa31c9c9af7..5897146658c 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/_index.md
@@ -1,6 +1,8 @@
---
title: Rancher v2.3.0
weight: 3
+aliases:
+ - /rancher/v2.x/en/security/rancher-2.3.x/rancher-v2.3.0/
---
### Self Assessment Guide
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/benchmark-2.3/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/benchmark-2.3/_index.md
index 06b216c6972..6c0fbc2b9ff 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/benchmark-2.3/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/benchmark-2.3/_index.md
@@ -3,6 +3,7 @@ title: CIS Benchmark Rancher Self-Assessment Guide v2.3
weight: 207
aliases:
- /rancher/v2.0-v2.4/en/security/benchmark-2.3
+ - /rancher/v2.x/en/security/rancher-2.3.x/rancher-v2.3.0/benchmark-2.3/
---
This document is a companion to the Rancher v2.3 security hardening guide. The hardening guide provides prescriptive guidance for hardening a production installation of Rancher, and this benchmark guide is meant to help you evaluate the level of security of the hardened cluster against each control in the benchmark.
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/hardening-2.3/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/hardening-2.3/_index.md
index 8f5fe7cd3e2..7f77f125450 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/hardening-2.3/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.0/hardening-2.3/_index.md
@@ -3,6 +3,7 @@ title: Hardening Guide v2.3
weight: 102
aliases:
- /rancher/v2.0-v2.4/en/security/hardening-2.3
+ - /rancher/v2.x/en/security/rancher-2.3.x/rancher-v2.3.0/hardening-2.3/
---
This document provides prescriptive guidance for hardening a production installation of Rancher v2.3.0-v2.3.2. It outlines the configurations and controls required to address Kubernetes benchmark controls from the Center for Information Security (CIS).
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/_index.md
index 77c1c408ad9..98c78426c60 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/_index.md
@@ -1,6 +1,8 @@
---
title: Rancher v2.3.3
weight: 2
+aliases:
+ - /rancher/v2.x/en/security/rancher-2.3.x/rancher-v2.3.3/
---
### Self Assessment Guide
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/benchmark-2.3.3/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/benchmark-2.3.3/_index.md
index f389fb30c2b..ae53043ca3e 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/benchmark-2.3.3/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/benchmark-2.3.3/_index.md
@@ -3,6 +3,7 @@ title: CIS Benchmark Rancher Self-Assessment Guide - Rancher v2.3.3
weight: 206
aliases:
- /rancher/v2.0-v2.4/en/security/benchmark-2.3.3
+ - /rancher/v2.x/en/security/rancher-2.3.x/rancher-v2.3.3/benchmark-2.3.3/
---
This document is a companion to the Rancher v2.3.3 security hardening guide. The hardening guide provides prescriptive guidance for hardening a production installation of Rancher, and this benchmark guide is meant to help you evaluate the level of security of the hardened cluster against each control in the benchmark.
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/hardening-2.3.3/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/hardening-2.3.3/_index.md
index e0bbfa595ce..bf75ee6a04e 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/hardening-2.3.3/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.3/hardening-2.3.3/_index.md
@@ -3,6 +3,7 @@ title: Hardening Guide v2.3.3
weight: 101
aliases:
- /rancher/v2.0-v2.4/en/security/hardening-2.3.3
+ - /rancher/v2.x/en/security/rancher-2.3.x/rancher-v2.3.3/hardening-2.3.3/
---
This document provides prescriptive guidance for hardening a production installation of Rancher v2.3.3. It outlines the configurations and controls required to address Kubernetes benchmark controls from the Center for Information Security (CIS).
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/_index.md
index d6bbefc794c..e6b4582af91 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/_index.md
@@ -1,6 +1,8 @@
---
title: Rancher v2.3.5
weight: 1
+aliases:
+ - /rancher/v2.x/en/security/rancher-2.3.x/rancher-v2.3.5/
---
### Self Assessment Guide
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/benchmark-2.3.5/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/benchmark-2.3.5/_index.md
index 4165562c131..3fbb7f27f16 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/benchmark-2.3.5/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/benchmark-2.3.5/_index.md
@@ -3,6 +3,7 @@ title: CIS Benchmark Rancher Self-Assessment Guide - v2.3.5
weight: 205
aliases:
- /rancher/v2.0-v2.4/en/security/benchmark-2.3.5
+ - /rancher/v2.x/en/security/rancher-2.3.x/rancher-v2.3.5/benchmark-2.3.5/
---
### CIS Kubernetes Benchmark v1.5 - Rancher v2.3.5 with Kubernetes v1.15
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/hardening-2.3.5/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/hardening-2.3.5/_index.md
index 1ff85295fbe..7065ae7b971 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/hardening-2.3.5/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.3.x/rancher-v2.3.5/hardening-2.3.5/_index.md
@@ -3,6 +3,7 @@ title: Hardening Guide v2.3.5
weight: 100
aliases:
- /rancher/v2.0-v2.4/en/security/hardening-2.3.5
+ - /rancher/v2.x/en/security/rancher-2.3.x/rancher-v2.3.5/hardening-2.3.5/
---
This document provides prescriptive guidance for hardening a production installation of Rancher v2.3.5. It outlines the configurations and controls required to address Kubernetes benchmark controls from the Center for Information Security (CIS).
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.4/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.4/_index.md
index 67cda4137b8..137759fe75b 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.4/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.4/_index.md
@@ -1,6 +1,8 @@
---
title: Rancher v2.4
weight: 2
+aliases:
+ - /rancher/v2.x/en/security/rancher-2.4/
---
### Self Assessment Guide
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.4/benchmark-2.4/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.4/benchmark-2.4/_index.md
index 991ff28b743..f1e0767ab99 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.4/benchmark-2.4/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.4/benchmark-2.4/_index.md
@@ -3,6 +3,7 @@ title: CIS Benchmark Rancher Self-Assessment Guide - v2.4
weight: 204
aliases:
- /rancher/v2.0-v2.4/en/security/benchmark-2.4
+ - /rancher/v2.x/en/security/rancher-2.4/benchmark-2.4/
---
### CIS Kubernetes Benchmark v1.5 - Rancher v2.4 with Kubernetes v1.15
diff --git a/content/rancher/v2.0-v2.4/en/security/rancher-2.4/hardening-2.4/_index.md b/content/rancher/v2.0-v2.4/en/security/rancher-2.4/hardening-2.4/_index.md
index 71e4af9ed12..31f5017acab 100644
--- a/content/rancher/v2.0-v2.4/en/security/rancher-2.4/hardening-2.4/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/rancher-2.4/hardening-2.4/_index.md
@@ -3,6 +3,7 @@ title: Hardening Guide v2.4
weight: 99
aliases:
- /rancher/v2.0-v2.4/en/security/hardening-2.4
+ - /rancher/v2.x/en/security/rancher-2.4/hardening-2.4/
---
This document provides prescriptive guidance for hardening a production installation of Rancher v2.4. It outlines the configurations and controls required to address Kubernetes benchmark controls from the Center for Information Security (CIS).
diff --git a/content/rancher/v2.0-v2.4/en/security/security-scan/_index.md b/content/rancher/v2.0-v2.4/en/security/security-scan/_index.md
index 44e74c02e40..6cca088dcb8 100644
--- a/content/rancher/v2.0-v2.4/en/security/security-scan/_index.md
+++ b/content/rancher/v2.0-v2.4/en/security/security-scan/_index.md
@@ -1,6 +1,8 @@
---
title: Security Scans
weight: 299
+aliases:
+ - /rancher/v2.x/en/security/security-scan/
---
The documentation about CIS security scans has moved [here.]({{}}/rancher/v2.0-v2.4/en/cis-scans)
diff --git a/content/rancher/v2.0-v2.4/en/troubleshooting/dns/_index.md b/content/rancher/v2.0-v2.4/en/troubleshooting/dns/_index.md
index 48a98a37919..169b5d84104 100644
--- a/content/rancher/v2.0-v2.4/en/troubleshooting/dns/_index.md
+++ b/content/rancher/v2.0-v2.4/en/troubleshooting/dns/_index.md
@@ -158,7 +158,7 @@ kubectl run -i --restart=Never --rm test-${RANDOM} --image=ubuntu --overrides='{
Enabling query logging can be done by enabling the [log plugin](https://coredns.io/plugins/log/) in the Corefile configuration in the configmap `coredns`. You can do so by using `kubectl -n kube-system edit configmap coredns` or use the command below to replace the configuration in place:
```
-kubectl get configmap -n kube-system coredns -o json | kubectl get configmap -n kube-system coredns -o json | sed -e 's_loadbalance_log\\n loadbalance_g' | kubectl apply -f -
+kubectl get configmap -n kube-system coredns -o json | sed -e 's_loadbalance_log\\n loadbalance_g' | kubectl apply -f -
```
All queries will now be logged and can be checked using the command in [Check CoreDNS logging](#check-coredns-logging).
diff --git a/content/rancher/v2.0-v2.4/en/troubleshooting/networking/_index.md b/content/rancher/v2.0-v2.4/en/troubleshooting/networking/_index.md
index f1e30f8109a..99d67e8846c 100644
--- a/content/rancher/v2.0-v2.4/en/troubleshooting/networking/_index.md
+++ b/content/rancher/v2.0-v2.4/en/troubleshooting/networking/_index.md
@@ -16,6 +16,8 @@ The pod can be scheduled to any of the hosts you used for your cluster, but that
To test the overlay network, you can launch the following `DaemonSet` definition. This will run a `swiss-army-knife` container on every host (image was developed by Rancher engineers and can be found here: https://github.com/rancherlabs/swiss-army-knife), which we will use to run a `ping` test between containers on all hosts.
+> **Note:** This container [does not support ARM nodes](https://github.com/leodotcloud/swiss-army-knife/issues/18), such as a Raspberry Pi. This will be seen in the pod logs as `exec user process caused: exec format error`.
+
1. Save the following file as `overlaytest.yml`
```
diff --git a/content/rancher/v2.0-v2.4/en/v1.6-migration/_index.md b/content/rancher/v2.0-v2.4/en/v1.6-migration/_index.md
index f0375e50a4d..0d26be4f72c 100644
--- a/content/rancher/v2.0-v2.4/en/v1.6-migration/_index.md
+++ b/content/rancher/v2.0-v2.4/en/v1.6-migration/_index.md
@@ -1,6 +1,8 @@
---
title: Migrating from v1.6 to v2.x
weight: 28
+aliases:
+ - /rancher/v2.x/en/v1.6-migration/
---
Rancher v2.x has been rearchitected and rewritten with the goal of providing a complete management solution for Kubernetes and Docker. Due to these extensive changes, there is no direct upgrade path from v1.6 to v2.x, but rather a migration of your v1.6 services into v2.x as Kubernetes workloads. In v1.6, the most common orchestration used was Rancher's own engine called Cattle. The following guide explains and educates our Cattle users on running workloads in a Kubernetes environment.
diff --git a/content/rancher/v2.0-v2.4/en/v1.6-migration/discover-services/_index.md b/content/rancher/v2.0-v2.4/en/v1.6-migration/discover-services/_index.md
index f674af8f15a..426bf504021 100644
--- a/content/rancher/v2.0-v2.4/en/v1.6-migration/discover-services/_index.md
+++ b/content/rancher/v2.0-v2.4/en/v1.6-migration/discover-services/_index.md
@@ -1,6 +1,8 @@
---
title: "6. Service Discovery"
weight: 600
+aliases:
+ - /rancher/v2.x/en/v1.6-migration/discover-services/
---
Service discovery is one of the core functionalities of any container-based environment. Once you have packaged and launched your application, the next step is making it discoverable to other containers in your environment or the external world. This document will describe how to use the service discovery support provided by Rancher v2.x so that you can find them by name.
diff --git a/content/rancher/v2.0-v2.4/en/v1.6-migration/expose-services/_index.md b/content/rancher/v2.0-v2.4/en/v1.6-migration/expose-services/_index.md
index 028f71b7e4b..f2bdd089093 100644
--- a/content/rancher/v2.0-v2.4/en/v1.6-migration/expose-services/_index.md
+++ b/content/rancher/v2.0-v2.4/en/v1.6-migration/expose-services/_index.md
@@ -1,6 +1,8 @@
---
title: "3. Expose Your Services"
weight: 400
+aliases:
+ - /rancher/v2.x/en/v1.6-migration/expose-services/
---
In testing environments, you usually need to route external traffic to your cluster containers by using an unadvertised IP and port number, providing users access to their apps. You can accomplish this goal using port mapping, which exposes a workload (i.e., service) publicly over a specific port, provided you know your node IP address(es). You can either map a port using HostPorts (which exposes a service on a specified port on a single node) or NodePorts (which exposes a service on _all_ nodes on a single port).
diff --git a/content/rancher/v2.0-v2.4/en/v1.6-migration/get-started/_index.md b/content/rancher/v2.0-v2.4/en/v1.6-migration/get-started/_index.md
index 132b591c7d7..6a0e7714a95 100644
--- a/content/rancher/v2.0-v2.4/en/v1.6-migration/get-started/_index.md
+++ b/content/rancher/v2.0-v2.4/en/v1.6-migration/get-started/_index.md
@@ -1,6 +1,8 @@
---
title: "1. Get Started"
weight: 25
+aliases:
+ - /rancher/v2.x/en/v1.6-migration/get-started/
---
Get started with your migration to Rancher v2.x by installing Rancher and configuring your new Rancher environment.
diff --git a/content/rancher/v2.0-v2.4/en/v1.6-migration/kub-intro/_index.md b/content/rancher/v2.0-v2.4/en/v1.6-migration/kub-intro/_index.md
index f913d51b9b8..bf88c6a2b94 100644
--- a/content/rancher/v2.0-v2.4/en/v1.6-migration/kub-intro/_index.md
+++ b/content/rancher/v2.0-v2.4/en/v1.6-migration/kub-intro/_index.md
@@ -1,6 +1,8 @@
---
title: Kubernetes Introduction
weight: 1
+aliases:
+ - /rancher/v2.x/en/v1.6-migration/kub-intro/
---
Rancher v2.x is built on the [Kubernetes](https://kubernetes.io/docs/home/?path=users&persona=app-developer&level=foundational) container orchestrator. This shift in underlying technology for v2.x is a large departure from v1.6, which supported several popular container orchestrators. Since Rancher is now based entirely on Kubernetes, it's helpful to learn the Kubernetes basics.
diff --git a/content/rancher/v2.0-v2.4/en/v1.6-migration/load-balancing/_index.md b/content/rancher/v2.0-v2.4/en/v1.6-migration/load-balancing/_index.md
index 4b9c8482a2d..e740ca3d4a7 100644
--- a/content/rancher/v2.0-v2.4/en/v1.6-migration/load-balancing/_index.md
+++ b/content/rancher/v2.0-v2.4/en/v1.6-migration/load-balancing/_index.md
@@ -1,6 +1,8 @@
---
title: "7. Load Balancing"
weight: 700
+aliases:
+ - /rancher/v2.x/en/v1.6-migration/load-balancing/
---
If your applications are public-facing and consume significant traffic, you should place a load balancer in front of your cluster so that users can always access their apps without service interruption. Typically, you can fulfill a high volume of service requests by [horizontally scaling](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) your deployment, which spins up additional application containers as traffic ramps up. However, this technique requires routing that distributes traffic across your nodes efficiently. In cases where you need to accommodate public traffic that scales up and down, you'll need a load balancer.
diff --git a/content/rancher/v2.0-v2.4/en/v1.6-migration/monitor-apps/_index.md b/content/rancher/v2.0-v2.4/en/v1.6-migration/monitor-apps/_index.md
index 6a7308d5dc8..da5d465c829 100644
--- a/content/rancher/v2.0-v2.4/en/v1.6-migration/monitor-apps/_index.md
+++ b/content/rancher/v2.0-v2.4/en/v1.6-migration/monitor-apps/_index.md
@@ -1,6 +1,8 @@
---
title: "4. Configure Health Checks"
weight: 400
+aliases:
+ - /rancher/v2.x/en/v1.6-migration/monitor-apps/
---
Rancher v1.6 provided TCP and HTTP health checks on your nodes and services using its own health check microservice. These health checks monitored your containers to confirm they're operating as intended. If a container failed a health check, Rancher would destroy the unhealthy container and then replicates a healthy one to replace it.
diff --git a/content/rancher/v2.0-v2.4/en/v1.6-migration/run-migration-tool/_index.md b/content/rancher/v2.0-v2.4/en/v1.6-migration/run-migration-tool/_index.md
index 08922d054b8..c540b32b430 100644
--- a/content/rancher/v2.0-v2.4/en/v1.6-migration/run-migration-tool/_index.md
+++ b/content/rancher/v2.0-v2.4/en/v1.6-migration/run-migration-tool/_index.md
@@ -1,6 +1,8 @@
---
title: 2. Migrate Your Services
weight: 100
+aliases:
+ - /rancher/v2.x/en/v1.6-migration/run-migration-tool/
---
Although your services from v1.6 won't work in Rancher v2.x by default, that doesn't mean you have to start again from square one, manually rebuilding your applications in v2.x. To help with migration from v1.6 to v2.x, Rancher has developed a migration tool. The migration-tools CLI is a utility that helps you recreate your applications in Rancher v2.x. This tool exports your Rancher v1.6 services as Compose files and converts them to a Kubernetes manifest that Rancher v2.x can consume.
diff --git a/content/rancher/v2.0-v2.4/en/v1.6-migration/run-migration-tool/migration-tools-ref/_index.md b/content/rancher/v2.0-v2.4/en/v1.6-migration/run-migration-tool/migration-tools-ref/_index.md
index 56fc0a8174f..6f5a6f8dfbd 100644
--- a/content/rancher/v2.0-v2.4/en/v1.6-migration/run-migration-tool/migration-tools-ref/_index.md
+++ b/content/rancher/v2.0-v2.4/en/v1.6-migration/run-migration-tool/migration-tools-ref/_index.md
@@ -1,6 +1,8 @@
---
title: Migration Tools CLI Reference
weight: 100
+aliases:
+ - /rancher/v2.x/en/v1.6-migration/run-migration-tool/migration-tools-ref/
---
The migration-tools CLI includes multiple commands and options to assist your migration from Rancher v1.6 to Rancher v2.x.
diff --git a/content/rancher/v2.0-v2.4/en/v1.6-migration/schedule-workloads/_index.md b/content/rancher/v2.0-v2.4/en/v1.6-migration/schedule-workloads/_index.md
index af3b3dc51be..b993d1eec83 100644
--- a/content/rancher/v2.0-v2.4/en/v1.6-migration/schedule-workloads/_index.md
+++ b/content/rancher/v2.0-v2.4/en/v1.6-migration/schedule-workloads/_index.md
@@ -1,6 +1,8 @@
---
title: "5. Schedule Your Services"
weight: 500
+aliases:
+ - /rancher/v2.x/en/v1.6-migration/schedule-workloads/
---
In v1.6, objects called _services_ were used to schedule containers to your cluster hosts. Services included the Docker image for an application, along with configuration settings for a desired state.
diff --git a/content/rancher/v2.5/_index.md b/content/rancher/v2.5/_index.md
index 50324f5568b..89c7c0d8e09 100644
--- a/content/rancher/v2.5/_index.md
+++ b/content/rancher/v2.5/_index.md
@@ -1,5 +1,5 @@
---
-title: v2.5.x
-weight: 1
+title: Rancher 2.5.7-2.5.9
+weight: 2
showBreadcrumb: false
---
diff --git a/content/rancher/v2.5/en/_index.md b/content/rancher/v2.5/en/_index.md
index 90163fef59c..513fb4d9836 100644
--- a/content/rancher/v2.5/en/_index.md
+++ b/content/rancher/v2.5/en/_index.md
@@ -1,11 +1,11 @@
---
title: "Rancher 2.5"
-shortTitle: "Rancher 2.5 (Latest)"
+shortTitle: "Rancher 2.5"
description: "Rancher adds significant value on top of Kubernetes: managing hundreds of clusters from one interface, centralizing RBAC, enabling monitoring and alerting. Read more."
-metaTitle: "Rancher 2.x Docs: What is New?"
+metaTitle: "Rancher 2.5.7-2.5.9 Docs: What is New?"
metaDescription: "Rancher 2 adds significant value on top of Kubernetes: managing hundreds of clusters from one interface, centralizing RBAC, enabling monitoring and alerting. Read more."
insertOneSix: false
-weight: 1
+weight: 2
ctaBanner: 0
---
Rancher was originally built to work with multiple orchestrators, and it included its own orchestrator called Cattle. With the rise of Kubernetes in the marketplace, Rancher 2 exclusively deploys and manages Kubernetes clusters running anywhere, on any provider.
@@ -16,6 +16,6 @@ One Rancher server installation can manage thousands of Kubernetes clusters and
Rancher adds significant value on top of Kubernetes, first by centralizing authentication and role-based access control (RBAC) for all of the clusters, giving global admins the ability to control cluster access from one location.
-It then enables detailed monitoring and alerting for clusters and their resources, ships logs to external providers, and integrates directly with Helm via the Application Catalog. If you have an external CI/CD system, you can plug it into Rancher, but if you don't, Rancher even includes a pipeline engine to help you automatically deploy and upgrade workloads.
+It then enables detailed monitoring and alerting for clusters and their resources, ships logs to external providers, and integrates directly with Helm via the Application Catalog. If you have an external CI/CD system, you can plug it into Rancher, but if you don't, Rancher even includes [Fleet](http://fleet.rancher.io/) to help you automatically deploy and upgrade workloads.
-Rancher is a _complete_ container management platform for Kubernetes, giving you the tools to successfully run Kubernetes anywhere.
\ No newline at end of file
+Rancher is a _complete_ container management platform for Kubernetes, giving you the tools to successfully run Kubernetes anywhere.
diff --git a/content/rancher/v2.5/en/admin-settings/_index.md b/content/rancher/v2.5/en/admin-settings/_index.md
index be8eec446e3..0ff5e139bf1 100644
--- a/content/rancher/v2.5/en/admin-settings/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/_index.md
@@ -7,6 +7,7 @@ aliases:
- /rancher/v2.5/en/concepts/global-configuration/server-url/
- /rancher/v2.5/en/tasks/global-configuration/server-url/
- /rancher/v2.5/en/admin-settings/log-in/
+ - /rancher/v2.x/en/admin-settings/
---
After installation, the [system administrator]({{}}/rancher/v2.5/en/admin-settings/rbac/global-permissions/) should configure Rancher to configure authentication, authorization, security, default settings, security policies, drivers and global DNS entries.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/_index.md
index 53c03cedcf7..e52fb47a052 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/_index.md
@@ -2,8 +2,9 @@
title: Authentication
weight: 1115
aliases:
- - /rancher/v2.5/en/concepts/global-configuration/authentication/
- - /rancher/v2.5/en/tasks/global-configuration/authentication/
+ - /rancher/v2.5/en/concepts/global-configuration/authentication/
+ - /rancher/v2.5/en/tasks/global-configuration/authentication/
+ - /rancher/v2.x/en/admin-settings/authentication/
---
One of the key features that Rancher adds to Kubernetes is centralized user authentication. This feature allows your users to use one set of credentials to authenticate with any of your Kubernetes clusters.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/ad/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/ad/_index.md
index bffe3d786e4..0cce01d449d 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/ad/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/ad/_index.md
@@ -2,7 +2,8 @@
title: Configuring Active Directory (AD)
weight: 1112
aliases:
- - /rancher/v2.5/en/tasks/global-configuration/authentication/active-directory/
+ - /rancher/v2.5/en/tasks/global-configuration/authentication/active-directory/
+ - /rancher/v2.x/en/admin-settings/authentication/ad/
---
If your organization uses Microsoft Active Directory as central user repository, you can configure Rancher to communicate with an Active Directory server to authenticate users. This allows Rancher admins to control access to clusters and projects based on users and groups managed externally in the Active Directory, while allowing end-users to authenticate with their AD credentials when logging in to the Rancher UI.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/azure-ad/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/azure-ad/_index.md
index 6330a68f992..33ea20aa3e0 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/azure-ad/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/azure-ad/_index.md
@@ -2,7 +2,8 @@
title: Configuring Azure AD
weight: 1115
aliases:
- - /rancher/v2.5/en/tasks/global-configuration/authentication/azure-ad/
+ - /rancher/v2.5/en/tasks/global-configuration/authentication/azure-ad/
+ - /rancher/v2.x/en/admin-settings/authentication/azure-ad/
---
If you have an instance of Active Directory (AD) hosted in Azure, you can configure Rancher to allow your users to log in using their AD accounts. Configuration of Azure AD external authentication requires you to make configurations in both Azure and Rancher.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/freeipa/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/freeipa/_index.md
index 12c5404d535..791d3f5a6b7 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/freeipa/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/freeipa/_index.md
@@ -2,7 +2,8 @@
title: Configuring FreeIPA
weight: 1114
aliases:
- - /rancher/v2.5/en/tasks/global-configuration/authentication/freeipa/
+ - /rancher/v2.5/en/tasks/global-configuration/authentication/freeipa/
+ - /rancher/v2.x/en/admin-settings/authentication/freeipa/
---
If your organization uses FreeIPA for user authentication, you can configure Rancher to allow your users to login using their FreeIPA credentials.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/github/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/github/_index.md
index 5344cfa977e..4ea86b7b446 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/github/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/github/_index.md
@@ -2,7 +2,8 @@
title: Configuring GitHub
weight: 1116
aliases:
- - /rancher/v2.5/en/tasks/global-configuration/authentication/github/
+ - /rancher/v2.5/en/tasks/global-configuration/authentication/github/
+ - /rancher/v2.x/en/admin-settings/authentication/github/
---
In environments using GitHub, you can configure Rancher to allow sign on using GitHub credentials.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/google/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/google/_index.md
index 32c0324399d..9738dd3b673 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/google/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/google/_index.md
@@ -1,5 +1,8 @@
---
title: Configuring Google OAuth
+weight: 15
+aliases:
+ - /rancher/v2.x/en/admin-settings/authentication/google/
---
If your organization uses G Suite for user authentication, you can configure Rancher to allow your users to log in using their G Suite credentials.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/keycloak/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/keycloak/_index.md
index 2498376139a..95a37c00e2f 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/keycloak/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/keycloak/_index.md
@@ -2,6 +2,8 @@
title: Configuring Keycloak (SAML)
description: Create a Keycloak SAML client and configure Rancher to work with Keycloak. By the end your users will be able to sign into Rancher using their Keycloak logins
weight: 1200
+aliases:
+ - /rancher/v2.x/en/admin-settings/authentication/keycloak/
---
If your organization uses Keycloak Identity Provider (IdP) for user authentication, you can configure Rancher to allow your users to log in using their IdP credentials.
@@ -61,24 +63,7 @@ If your organization uses Keycloak Identity Provider (IdP) for user authenticati
1. Select **Keycloak**.
-1. Complete the **Configure Keycloak Account** form.
-
-
- | Field | Description |
- | ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
- | Display Name Field | The attribute that contains the display name of users.
Example: `givenName` |
- | User Name Field | The attribute that contains the user name/given name.
Example: `email` |
- | UID Field | An attribute that is unique to every user.
Example: `email` |
- | Groups Field | Make entries for managing group memberships.
Example: `member` |
- | Entity ID Field | The ID that needs to be configured as a client ID in the Keycloak client.
Default: `https://yourRancherHostURL/v1-saml/keycloak/saml/metadata` |
- | Rancher API Host | The URL for your Rancher Server. |
- | Private Key / Certificate | A key/certificate pair to create a secure shell between Rancher and your IdP. |
- | IDP-metadata | The `metadata.xml` file that you exported from your IdP server. |
-
- >**Tip:** You can generate a key/certificate pair using an openssl command. For example:
- >
- > openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout myservice.key -out myservice.cert
-
+1. Complete the **Configure Keycloak Account** form. For help with filling the form, see the [configuration reference](#configuration-reference).
1. After you complete the **Configure Keycloak Account** form, click **Authenticate with Keycloak**, which is at the bottom of the page.
@@ -90,13 +75,32 @@ If your organization uses Keycloak Identity Provider (IdP) for user authenticati
{{< saml_caveats >}}
+## Configuration Reference
+
+
+| Field | Description |
+| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Display Name Field | The attribute that contains the display name of users.
Example: `givenName` |
+| User Name Field | The attribute that contains the user name/given name.
Example: `email` |
+| UID Field | An attribute that is unique to every user.
Example: `email` |
+| Groups Field | Make entries for managing group memberships.
Example: `member` |
+| Entity ID Field | The ID that needs to be configured as a client ID in the Keycloak client.
Default: `https://yourRancherHostURL/v1-saml/keycloak/saml/metadata` |
+| Rancher API Host | The URL for your Rancher Server. |
+| Private Key / Certificate | A key/certificate pair to create a secure shell between Rancher and your IdP. |
+| IDP-metadata | The `metadata.xml` file that you exported from your IdP server. |
+
+>**Tip:** You can generate a key/certificate pair using an openssl command. For example:
+>
+> openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout myservice.key -out myservice.cert
+
+
## Annex: Troubleshooting
If you are experiencing issues while testing the connection to the Keycloak server, first double-check the configuration option of your SAML client. You may also inspect the Rancher logs to help pinpointing the problem cause. Debug logs may contain more detailed information about the error. Please refer to [How can I enable debug logging]({{}}/rancher/v2.5/en/faq/technical/#how-can-i-enable-debug-logging) in this documentation.
### You are not redirected to Keycloak
-When you click on **Authenticate with Keycloak**, your are not redirected to your IdP.
+When you click on **Authenticate with Keycloak**, you are not redirected to your IdP.
* Verify your Keycloak client configuration.
* Make sure `Force Post Binding` set to `OFF`.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/local/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/local/_index.md
index 56142b1435f..2aabd06d30b 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/local/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/local/_index.md
@@ -2,7 +2,8 @@
title: Local Authentication
weight: 1111
aliases:
- - /rancher/v2.5/en/tasks/global-configuration/authentication/local-authentication/
+ - /rancher/v2.5/en/tasks/global-configuration/authentication/local-authentication/
+ - /rancher/v2.x/en/admin-settings/authentication/local/
---
Local authentication is the default until you configure an external authentication provider. Local authentication is where Rancher stores the user information, i.e. names and passwords, of who can log in to Rancher. By default, the `admin` user that logs in to Rancher for the first time is a local user.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/_index.md
index 7ed0a373845..3ea4302552b 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/_index.md
@@ -1,6 +1,8 @@
---
title: Configuring Microsoft Active Directory Federation Service (SAML)
weight: 1205
+aliases:
+ - /rancher/v2.x/en/admin-settings/authentication/microsoft-adfs/
---
If your organization uses Microsoft Active Directory Federation Services (AD FS) for user authentication, you can configure Rancher to allow your users to log in using their AD FS credentials.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/microsoft-adfs-setup/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/microsoft-adfs-setup/_index.md
index d442e6476e6..30e6877536c 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/microsoft-adfs-setup/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/microsoft-adfs-setup/_index.md
@@ -1,6 +1,8 @@
---
title: 1. Configuring Microsoft AD FS for Rancher
weight: 1205
+aliases:
+ - /rancher/v2.x/en/admin-settings/authentication/microsoft-adfs/microsoft-adfs-setup/
---
Before configuring Rancher to support AD FS users, you must add Rancher as a [relying party trust](https://docs.microsoft.com/en-us/windows-server/identity/ad-fs/technical-reference/understanding-key-ad-fs-concepts) in AD FS.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/rancher-adfs-setup/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/rancher-adfs-setup/_index.md
index 0f36d2631dd..0a7d1214121 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/rancher-adfs-setup/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/rancher-adfs-setup/_index.md
@@ -1,6 +1,8 @@
---
title: 2. Configuring Rancher for Microsoft AD FS
weight: 1205
+aliases:
+ - /rancher/v2.x/en/admin-settings/authentication/microsoft-adfs/rancher-adfs-setup/
---
After you complete [Configuring Microsoft AD FS for Rancher]({{}}/rancher/v2.5/en/admin-settings/authentication/microsoft-adfs/microsoft-adfs-setup/), enter your AD FS information into Rancher to allow AD FS users to authenticate with Rancher.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/okta/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/okta/_index.md
index b95792ce554..acb55aa3931 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/okta/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/okta/_index.md
@@ -1,6 +1,8 @@
---
title: Configuring Okta (SAML)
weight: 1210
+aliases:
+ - /rancher/v2.x/en/admin-settings/authentication/okta/
---
If your organization uses Okta Identity Provider (IdP) for user authentication, you can configure Rancher to allow your users to log in using their IdP credentials.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/openldap/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/openldap/_index.md
index 91894d204fb..0d8c49afe35 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/openldap/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/openldap/_index.md
@@ -2,7 +2,8 @@
title: Configuring OpenLDAP
weight: 1113
aliases:
- - /rancher/v2.5/en/tasks/global-configuration/authentication/openldap/
+ - /rancher/v2.5/en/tasks/global-configuration/authentication/openldap/
+ - /rancher/v2.x/en/admin-settings/authentication/openldap/
---
If your organization uses LDAP for user authentication, you can configure Rancher to communicate with an OpenLDAP server to authenticate users. This allows Rancher admins to control access to clusters and projects based on users and groups managed externally in the organisation's central user repository, while allowing end-users to authenticate with their LDAP credentials when logging in to the Rancher UI.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/openldap/openldap-config/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/openldap/openldap-config/_index.md
index 0162a9fe585..5a12e5f78c3 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/openldap/openldap-config/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/openldap/openldap-config/_index.md
@@ -1,6 +1,8 @@
---
title: OpenLDAP Configuration Reference
weight: 2
+aliases:
+ - /rancher/v2.x/en/admin-settings/authentication/openldap/openldap-config/
---
This section is intended to be used as a reference when setting up an OpenLDAP authentication provider in Rancher.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/ping-federate/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/ping-federate/_index.md
index 5d60f2f28cb..525717bb7b9 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/ping-federate/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/ping-federate/_index.md
@@ -1,6 +1,8 @@
---
title: Configuring PingIdentity (SAML)
weight: 1200
+aliases:
+ - /rancher/v2.x/en/admin-settings/authentication/ping-federate/
---
If your organization uses Ping Identity Provider (IdP) for user authentication, you can configure Rancher to allow your users to log in using their IdP credentials.
@@ -28,6 +30,8 @@ Note that these URLs will not return valid data until the authentication configu
1. **Groups Field**: Make entries for managing group memberships (example: `memberOf`).
+ 1. **Entity ID Field** (optional): The published, protocol-dependent, unique identifier of your partner. This ID defines your organization as the entity operating the server for SAML 2.0 transactions. This ID may have been obtained out-of-band or via a SAML metadata file.
+
1. **Rancher API Host**: Enter the URL for your Rancher Server.
1. **Private Key** and **Certificate**: This is a key-certificate pair to create a secure shell between Rancher and your IdP.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/shibboleth/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/shibboleth/_index.md
index fe00899aaf1..3d74de50549 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/shibboleth/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/shibboleth/_index.md
@@ -1,6 +1,8 @@
---
title: Configuring Shibboleth (SAML)
weight: 1210
+aliases:
+ - /rancher/v2.x/en/admin-settings/authentication/shibboleth/
---
If your organization uses Shibboleth Identity Provider (IdP) for user authentication, you can configure Rancher to allow your users to log in to Rancher using their Shibboleth credentials.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/shibboleth/about/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/shibboleth/about/_index.md
index fc8797e82ef..7d69442ec8a 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/shibboleth/about/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/shibboleth/about/_index.md
@@ -1,6 +1,8 @@
---
title: Group Permissions with Shibboleth and OpenLDAP
weight: 1
+aliases:
+ - /rancher/v2.x/en/admin-settings/authentication/shibboleth/about/
---
This page provides background information and context for Rancher users who intend to set up the Shibboleth authentication provider in Rancher.
diff --git a/content/rancher/v2.5/en/admin-settings/authentication/user-groups/_index.md b/content/rancher/v2.5/en/admin-settings/authentication/user-groups/_index.md
index 148047cc740..8f708809a2d 100644
--- a/content/rancher/v2.5/en/admin-settings/authentication/user-groups/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/authentication/user-groups/_index.md
@@ -1,6 +1,8 @@
---
title: Users and Groups
weight: 1
+aliases:
+ - /rancher/v2.x/en/admin-settings/authentication/user-groups/
---
Rancher relies on users and groups to determine who is allowed to log in to Rancher and which resources they can access. When you configure an external authentication provider, users from that provider will be able to log in to your Rancher server. When a user logs in, the authentication provider will supply your Rancher server with a list of groups to which the user belongs.
diff --git a/content/rancher/v2.5/en/admin-settings/config-private-registry/_index.md b/content/rancher/v2.5/en/admin-settings/config-private-registry/_index.md
index f7871051246..d9b05763201 100644
--- a/content/rancher/v2.5/en/admin-settings/config-private-registry/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/config-private-registry/_index.md
@@ -2,9 +2,10 @@
title: Configuring a Global Default Private Registry
weight: 400
aliases:
+ - /rancher/v2.x/en/admin-settings/config-private-registry/
---
-You might want to use a private Docker registry to share your custom base images within your organization. With a private registry, you can keep a private, consistent, and centralized source of truth for the Docker images that are used in your clusters.
+You might want to use a private container registry to share your custom base images within your organization. With a private registry, you can keep a private, consistent, and centralized source of truth for the container images that are used in your clusters.
There are two main ways to set up private registries in Rancher: by setting up the global default registry through the **Settings** tab in the global view, and by setting up a private registry in the advanced options in the cluster-level settings. The global default registry is intended to be used for air-gapped setups, for registries that do not require credentials. The cluster-level private registry is intended to be used in all setups in which the private registry requires credentials.
diff --git a/content/rancher/v2.5/en/admin-settings/drivers/_index.md b/content/rancher/v2.5/en/admin-settings/drivers/_index.md
index e86b4545322..471124f6340 100644
--- a/content/rancher/v2.5/en/admin-settings/drivers/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/drivers/_index.md
@@ -1,6 +1,8 @@
---
title: Provisioning Drivers
weight: 1140
+aliases:
+ - /rancher/v2.x/en/admin-settings/drivers/
---
Drivers in Rancher allow you to manage which providers can be used to deploy [hosted Kubernetes clusters]({{}}/rancher/v2.5/en/cluster-provisioning/hosted-kubernetes-clusters/) or [nodes in an infrastructure provider]({{}}/rancher/v2.5/en/cluster-provisioning/rke-clusters/node-pools/) to allow Rancher to deploy and manage Kubernetes.
diff --git a/content/rancher/v2.5/en/admin-settings/drivers/cluster-drivers/_index.md b/content/rancher/v2.5/en/admin-settings/drivers/cluster-drivers/_index.md
index 3cfba1c2784..b5ea85f5f9d 100644
--- a/content/rancher/v2.5/en/admin-settings/drivers/cluster-drivers/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/drivers/cluster-drivers/_index.md
@@ -1,6 +1,8 @@
---
title: Cluster Drivers
-weight: 1
+weight: 1
+aliases:
+ - /rancher/v2.x/en/admin-settings/drivers/cluster-drivers/
---
Cluster drivers are used to create clusters in a [hosted Kubernetes provider]({{}}/rancher/v2.5/en/cluster-provisioning/hosted-kubernetes-clusters/), such as Google GKE. The availability of which cluster driver to display when creating clusters is defined by the cluster driver's status. Only `active` cluster drivers will be displayed as an option for creating clusters. By default, Rancher is packaged with several existing cloud provider cluster drivers, but you can also add custom cluster drivers to Rancher.
diff --git a/content/rancher/v2.5/en/admin-settings/drivers/node-drivers/_index.md b/content/rancher/v2.5/en/admin-settings/drivers/node-drivers/_index.md
index 7161b4e14d1..52b2c1efd4e 100644
--- a/content/rancher/v2.5/en/admin-settings/drivers/node-drivers/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/drivers/node-drivers/_index.md
@@ -4,6 +4,7 @@ weight: 2
aliases:
- /rancher/v2.5/en/concepts/global-configuration/node-drivers/
- /rancher/v2.5/en/tasks/global-configuration/node-drivers/
+ - /rancher/v2.x/en/admin-settings/drivers/node-drivers/
---
Node drivers are used to provision hosts, which Rancher uses to launch and manage Kubernetes clusters. A node driver is the same as a [Docker Machine driver](https://docs.docker.com/machine/drivers/). The availability of which node driver to display when creating node templates is defined based on the node driver's status. Only `active` node drivers will be displayed as an option for creating node templates. By default, Rancher is packaged with many existing Docker Machine drivers, but you can also create custom node drivers to add to Rancher.
diff --git a/content/rancher/v2.5/en/admin-settings/k8s-metadata/_index.md b/content/rancher/v2.5/en/admin-settings/k8s-metadata/_index.md
index c6c5737eadd..f377c0e6269 100644
--- a/content/rancher/v2.5/en/admin-settings/k8s-metadata/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/k8s-metadata/_index.md
@@ -1,6 +1,8 @@
---
title: Upgrading Kubernetes without Upgrading Rancher
weight: 1120
+aliases:
+ - /rancher/v2.x/en/admin-settings/k8s-metadata/
---
The RKE metadata feature allows you to provision clusters with new versions of Kubernetes as soon as they are released, without upgrading Rancher. This feature is useful for taking advantage of patch versions of Kubernetes, for example, if you want to upgrade to Kubernetes v1.14.7 when your Rancher server originally supported v1.14.6.
diff --git a/content/rancher/v2.5/en/admin-settings/pod-security-policies/_index.md b/content/rancher/v2.5/en/admin-settings/pod-security-policies/_index.md
index 2c31ddb8cb3..16746c823b5 100644
--- a/content/rancher/v2.5/en/admin-settings/pod-security-policies/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/pod-security-policies/_index.md
@@ -5,6 +5,7 @@ aliases:
- /rancher/v2.5/en/concepts/global-configuration/pod-security-policies/
- /rancher/v2.5/en/tasks/global-configuration/pod-security-policies/
- /rancher/v2.5/en/tasks/clusters/adding-a-pod-security-policy/
+ - /rancher/v2.x/en/admin-settings/pod-security-policies/
---
_Pod Security Policies_ (or PSPs) are objects that control security-sensitive aspects of pod specification (like root privileges).
diff --git a/content/rancher/v2.5/en/admin-settings/rbac/_index.md b/content/rancher/v2.5/en/admin-settings/rbac/_index.md
index 31b40d250ac..5fd866fd8b9 100644
--- a/content/rancher/v2.5/en/admin-settings/rbac/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rbac/_index.md
@@ -2,7 +2,8 @@
title: Role-Based Access Control (RBAC)
weight: 1120
aliases:
- - /rancher/v2.5/en/concepts/global-configuration/users-permissions-roles/
+ - /rancher/v2.5/en/concepts/global-configuration/users-permissions-roles/
+ - /rancher/v2.x/en/admin-settings/rbac/
---
Within Rancher, each person authenticates as a _user_, which is a login that grants you access to Rancher. As mentioned in [Authentication]({{}}/rancher/v2.5/en/admin-settings/authentication/), users can either be local or external.
diff --git a/content/rancher/v2.5/en/admin-settings/rbac/cluster-project-roles/_index.md b/content/rancher/v2.5/en/admin-settings/rbac/cluster-project-roles/_index.md
index 10e2d21fcc8..4996f82ab54 100644
--- a/content/rancher/v2.5/en/admin-settings/rbac/cluster-project-roles/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rbac/cluster-project-roles/_index.md
@@ -1,6 +1,8 @@
---
title: Cluster and Project Roles
weight: 1127
+aliases:
+ - /rancher/v2.x/en/admin-settings/rbac/cluster-project-roles/
---
Cluster and project roles define user authorization inside a cluster or project. You can manage these roles from the **Global > Security > Roles** page.
@@ -84,6 +86,10 @@ _Project roles_ are roles that can be used to grant users access to a project. T
These users can manage project-scoped resources like namespaces and workloads, but cannot manage other project members.
+ >**Note:**
+ >
+ >By default, the Rancher role of `project-member` inherits from the `Kubernetes-edit` role, and the `project-owner` role inherits from the `Kubernetes-admin` role. As such, both `project-member` and `project-owner` roles will allow for namespace management, including the ability to create and delete namespaces.
+
- **Read Only:**
These users can view everything in the project but cannot create, update, or delete anything.
@@ -92,7 +98,6 @@ _Project roles_ are roles that can be used to grant users access to a project. T
>
>Users assigned the `Owner` or `Member` role for a project automatically inherit the `namespace creation` role. However, this role is a [Kubernetes ClusterRole](https://kubernetes.io/docs/reference/access-authn-authz/rbac/#role-and-clusterrole), meaning its scope extends to all projects in the cluster. Therefore, users explicitly assigned the `owner` or `member` role for a project can create namespaces in other projects they're assigned to, even with only the `Read Only` role assigned.
-
#### Custom Project Roles
Rancher lets you assign _custom project roles_ to a standard user instead of the typical `Owner`, `Member`, or `Read Only` roles. These roles can be either a built-in custom project role or one defined by a Rancher administrator. They are convenient for defining narrow or specialized access for a standard user within a project. See the table below for a list of built-in custom project roles.
diff --git a/content/rancher/v2.5/en/admin-settings/rbac/default-custom-roles/_index.md b/content/rancher/v2.5/en/admin-settings/rbac/default-custom-roles/_index.md
index 01764ad0ace..a2b2795e182 100644
--- a/content/rancher/v2.5/en/admin-settings/rbac/default-custom-roles/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rbac/default-custom-roles/_index.md
@@ -3,12 +3,15 @@ title: Custom Roles
weight: 1128
aliases:
- /rancher/v2.5/en/tasks/global-configuration/roles/
+ - /rancher/v2.x/en/admin-settings/rbac/default-custom-roles/
---
Within Rancher, _roles_ determine what actions a user can make within a cluster or project.
Note that _roles_ are different from _permissions_, which determine what clusters and projects you can access.
+> It is possible for a custom role to enable privilege escalation. For details, see [this section.](#privilege-escalation)
+
This section covers the following topics:
- [Prerequisites](#prerequisites)
@@ -16,15 +19,16 @@ This section covers the following topics:
- [Creating a custom global role](#creating-a-custom-global-role)
- [Deleting a custom global role](#deleting-a-custom-global-role)
- [Assigning a custom global role to a group](#assigning-a-custom-global-role-to-a-group)
+- [Privilege escalation](#privilege-escalation)
-## Prerequisites
+# Prerequisites
To complete the tasks on this page, one of the following permissions are required:
- [Administrator Global Permissions]({{}}/rancher/v2.5/en/admin-settings/rbac/global-permissions/).
- [Custom Global Permissions]({{}}/rancher/v2.5/en/admin-settings/rbac/global-permissions/#custom-global-permissions) with the [Manage Roles]({{}}/rancher/v2.5/en/admin-settings/rbac/global-permissions/) role assigned.
-## Creating A Custom Role for a Cluster or Project
+# Creating A Custom Role for a Cluster or Project
While Rancher comes out-of-the-box with a set of default user roles, you can also create default custom roles to provide users with very specific permissions within Rancher.
@@ -57,7 +61,7 @@ The steps to add custom roles differ depending on the version of Rancher.
1. Click **Create**.
-## Creating a Custom Global Role
+# Creating a Custom Global Role
### Creating a Custom Global Role that Copies Rules from an Existing Role
@@ -91,7 +95,7 @@ Custom global roles don't have to be based on existing roles. To create a custom
1. Click **Save.**
-## Deleting a Custom Global Role
+# Deleting a Custom Global Role
When deleting a custom global role, all global role bindings with this custom role are deleted.
@@ -105,7 +109,7 @@ To delete a custom global role,
2. On the **Global** tab, go to the custom global role that should be deleted and click **⋮ (…) > Delete.**
3. Click **Delete.**
-## Assigning a Custom Global Role to a Group
+# Assigning a Custom Global Role to a Group
If you have a group of individuals that need the same level of access in Rancher, it can save time to create a custom global role. When the role is assigned to a group, the users in the group have the appropriate level of access the first time they sign into Rancher.
@@ -129,3 +133,9 @@ To assign a custom global role to a group, follow these steps:
1. Click **Create.**
**Result:** The custom global role will take effect when the users in the group log into Rancher.
+
+# Privilege Escalation
+
+The `Configure Catalogs` custom permission is powerful and should be used with caution. When an admin assigns the `Configure Catalogs` permission to a standard user, it could result in privilege escalation in which the user could give themselves admin access to Rancher provisioned clusters. Anyone with this permission should be considered equivalent to an admin.
+
+The `Manager Users` role grants the ability to create, update, and delete _any_ user. This presents the risk of privilege escalation as even non-admin users with this role will be able to create, update, and delete admin users. Admins should take caution when assigning this role.
diff --git a/content/rancher/v2.5/en/admin-settings/rbac/global-permissions/_index.md b/content/rancher/v2.5/en/admin-settings/rbac/global-permissions/_index.md
index 360bebf8ea5..eef72464cfa 100644
--- a/content/rancher/v2.5/en/admin-settings/rbac/global-permissions/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rbac/global-permissions/_index.md
@@ -1,6 +1,8 @@
---
title: Global Permissions
weight: 1126
+aliases:
+ - /rancher/v2.x/en/admin-settings/rbac/global-permissions/
---
_Permissions_ are individual access rights that you can assign when selecting a custom permission for a user.
@@ -46,7 +48,7 @@ CATTLE_RESTRICTED_DEFAULT_ADMIN=true
The permissions for the `restricted-admin` role differ based on the Rancher version.
{{% tabs %}}
-{{% tab "v2.5.6" %}}
+{{% tab "v2.5.7+" %}}
The `restricted-admin` permissions are as follows:
@@ -55,7 +57,7 @@ The `restricted-admin` permissions are as follows:
- Can create other restricted admins.
{{% /tab %}}
-{{% tab "v2.5.0-v2.5.5" %}}
+{{% tab "v2.5.0-v2.5.6" %}}
The `restricted-admin` permissions are as follows:
diff --git a/content/rancher/v2.5/en/admin-settings/rbac/locked-roles/_index.md b/content/rancher/v2.5/en/admin-settings/rbac/locked-roles/_index.md
index 8dead228672..85e3f586624 100644
--- a/content/rancher/v2.5/en/admin-settings/rbac/locked-roles/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rbac/locked-roles/_index.md
@@ -1,6 +1,8 @@
---
title: Locked Roles
weight: 1129
+aliases:
+ - /rancher/v2.x/en/admin-settings/rbac/locked-roles/
---
You can set roles to a status of `locked`. Locking roles prevent them from being assigned users in the future.
diff --git a/content/rancher/v2.5/en/admin-settings/rke-templates/_index.md b/content/rancher/v2.5/en/admin-settings/rke-templates/_index.md
index db5cd9e8c10..7459bcbf9a9 100644
--- a/content/rancher/v2.5/en/admin-settings/rke-templates/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rke-templates/_index.md
@@ -1,6 +1,8 @@
---
title: RKE Templates
weight: 7010
+aliases:
+ - /rancher/v2.x/en/admin-settings/rke-templates/
---
RKE templates are designed to allow DevOps and security teams to standardize and simplify the creation of Kubernetes clusters.
diff --git a/content/rancher/v2.5/en/admin-settings/rke-templates/applying-templates/_index.md b/content/rancher/v2.5/en/admin-settings/rke-templates/applying-templates/_index.md
index d51a8238a85..5a1bd480209 100644
--- a/content/rancher/v2.5/en/admin-settings/rke-templates/applying-templates/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rke-templates/applying-templates/_index.md
@@ -1,6 +1,8 @@
---
title: Applying Templates
weight: 50
+aliases:
+ - /rancher/v2.x/en/admin-settings/rke-templates/applying-templates/
---
You can create a cluster from an RKE template that you created, or from a template that has been [shared with you.]({{}}/rancher/v2.5/en/admin-settings/rke-templates/template-access-and-sharing)
diff --git a/content/rancher/v2.5/en/admin-settings/rke-templates/creating-and-revising/_index.md b/content/rancher/v2.5/en/admin-settings/rke-templates/creating-and-revising/_index.md
index 533b4e1fdb8..d3966cab1c7 100644
--- a/content/rancher/v2.5/en/admin-settings/rke-templates/creating-and-revising/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rke-templates/creating-and-revising/_index.md
@@ -1,6 +1,8 @@
---
title: Creating and Revising Templates
weight: 32
+aliases:
+ - /rancher/v2.x/en/admin-settings/rke-templates/creating-and-revising/
---
This section describes how to manage RKE templates and revisions. You an create, share, update, and delete templates from the **Global** view under **Tools > RKE Templates.**
diff --git a/content/rancher/v2.5/en/admin-settings/rke-templates/creator-permissions/_index.md b/content/rancher/v2.5/en/admin-settings/rke-templates/creator-permissions/_index.md
index 3c5104a09f3..d5f3ea341c8 100644
--- a/content/rancher/v2.5/en/admin-settings/rke-templates/creator-permissions/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rke-templates/creator-permissions/_index.md
@@ -1,6 +1,8 @@
---
title: Template Creator Permissions
weight: 10
+aliases:
+ - /rancher/v2.x/en/admin-settings/rke-templates/creator-permissions/
---
Administrators have the permission to create RKE templates, and only administrators can give that permission to other users.
diff --git a/content/rancher/v2.5/en/admin-settings/rke-templates/enforcement/_index.md b/content/rancher/v2.5/en/admin-settings/rke-templates/enforcement/_index.md
index 4e632411060..99828c0eff9 100644
--- a/content/rancher/v2.5/en/admin-settings/rke-templates/enforcement/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rke-templates/enforcement/_index.md
@@ -1,6 +1,8 @@
---
title: Template Enforcement
weight: 32
+aliases:
+ - /rancher/v2.x/en/admin-settings/rke-templates/enforcement/
---
This section describes how template administrators can enforce templates in Rancher, restricting the ability of users to create clusters without a template.
diff --git a/content/rancher/v2.5/en/admin-settings/rke-templates/example-scenarios/_index.md b/content/rancher/v2.5/en/admin-settings/rke-templates/example-scenarios/_index.md
index 50a2ea8bdad..5bb86bdda47 100644
--- a/content/rancher/v2.5/en/admin-settings/rke-templates/example-scenarios/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rke-templates/example-scenarios/_index.md
@@ -1,6 +1,8 @@
---
title: Example Scenarios
weight: 5
+aliases:
+ - /rancher/v2.x/en/admin-settings/rke-templates/example-scenarios/
---
These example scenarios describe how an organization could use templates to standardize cluster creation.
diff --git a/content/rancher/v2.5/en/admin-settings/rke-templates/example-yaml/_index.md b/content/rancher/v2.5/en/admin-settings/rke-templates/example-yaml/_index.md
index 3c85e86d616..ff9f76e0b6c 100644
--- a/content/rancher/v2.5/en/admin-settings/rke-templates/example-yaml/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rke-templates/example-yaml/_index.md
@@ -1,6 +1,8 @@
---
title: Example YAML
weight: 60
+aliases:
+ - /rancher/v2.x/en/admin-settings/rke-templates/example-yaml/
---
Below is an example RKE template configuration file for reference.
diff --git a/content/rancher/v2.5/en/admin-settings/rke-templates/overrides/_index.md b/content/rancher/v2.5/en/admin-settings/rke-templates/overrides/_index.md
index 76cf9ce04ae..333396989e4 100644
--- a/content/rancher/v2.5/en/admin-settings/rke-templates/overrides/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rke-templates/overrides/_index.md
@@ -1,6 +1,8 @@
---
title: Overriding Template Settings
weight: 33
+aliases:
+ - /rancher/v2.x/en/admin-settings/rke-templates/overrides/
---
When a user creates an RKE template, each setting in the template has a switch in the Rancher UI that indicates if users can override the setting. This switch marks those settings as **Allow User Override.**
diff --git a/content/rancher/v2.5/en/admin-settings/rke-templates/rke-templates-and-hardware/_index.md b/content/rancher/v2.5/en/admin-settings/rke-templates/rke-templates-and-hardware/_index.md
index edc049ab6bd..2d165472962 100644
--- a/content/rancher/v2.5/en/admin-settings/rke-templates/rke-templates-and-hardware/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rke-templates/rke-templates-and-hardware/_index.md
@@ -1,6 +1,8 @@
---
title: RKE Templates and Infrastructure
weight: 90
+aliases:
+ - /rancher/v2.x/en/admin-settings/rke-templates/rke-templates-and-hardware/
---
In Rancher, RKE templates are used to provision Kubernetes and define Rancher settings, while node templates are used to provision nodes.
diff --git a/content/rancher/v2.5/en/admin-settings/rke-templates/template-access-and-sharing/_index.md b/content/rancher/v2.5/en/admin-settings/rke-templates/template-access-and-sharing/_index.md
index 8a552a35ae5..ab995b0fa33 100644
--- a/content/rancher/v2.5/en/admin-settings/rke-templates/template-access-and-sharing/_index.md
+++ b/content/rancher/v2.5/en/admin-settings/rke-templates/template-access-and-sharing/_index.md
@@ -1,6 +1,8 @@
---
title: Access and Sharing
weight: 31
+aliases:
+ - /rancher/v2.x/en/admin-settings/rke-templates/template-access-and-sharing/
---
If you are an RKE template owner, you can share it with users or groups of users, who can then use the template to create clusters.
diff --git a/content/rancher/v2.5/en/api/_index.md b/content/rancher/v2.5/en/api/_index.md
index 75b7acf2bfe..a36f5f9fea2 100644
--- a/content/rancher/v2.5/en/api/_index.md
+++ b/content/rancher/v2.5/en/api/_index.md
@@ -1,6 +1,8 @@
---
title: API
weight: 24
+aliases:
+ - /rancher/v2.x/en/api/
---
## How to use the API
@@ -50,3 +52,17 @@ Most collections can be sorted on the server-side by common fields using HTTP qu
## Pagination
API responses are paginated with a limit of 100 resources per page by default. This can be changed with the `limit` query parameter, up to a maximum of 1000, e.g. `/v3/pods?limit=1000`. The `pagination` map in collection responses tells you whether or not you have the full result set and has a link to the next page if you do not.
+
+## Capturing Rancher API Calls
+
+You can use browser developer tools to capture how the Rancher API is called. For example, you could follow these steps to use the Chrome developer tools to get the API call for provisioning an RKE cluster:
+
+1. In the Rancher UI, go to **Cluster Management** and click **Create.**
+1. Click one of the cluster types. This example uses Digital Ocean.
+1. Fill out the form with a cluster name and node template, but don't click **Create**.
+1. You will need to open the developer tools before the cluster creation to see the API call being recorded. To open the tools, right-click on the Rancher UI and click **Inspect.**
+1. In the developer tools, click the **Network** tab.
+1. On the **Network** tab, make sure **Fetch/XHR** is selected.
+1. In the Rancher UI, click **Create**. In the developer tools, you should see a new network request with the name `cluster?_replace=true`.
+1. Right-click `cluster?_replace=true` and click **Copy > Copy as cURL.**
+1. Paste the result into any text editor. You will be able to see the POST request, including the URL it was sent to, all of the headers, and the full body of the request. This command can be used to create a cluster from the command line. Note: The request should be stored in a safe place because it contains credentials.
\ No newline at end of file
diff --git a/content/rancher/v2.5/en/api/api-tokens/_index.md b/content/rancher/v2.5/en/api/api-tokens/_index.md
index a0f19b8cd78..1625c301071 100644
--- a/content/rancher/v2.5/en/api/api-tokens/_index.md
+++ b/content/rancher/v2.5/en/api/api-tokens/_index.md
@@ -3,6 +3,7 @@ title: API Tokens
weight: 1
aliases:
- /rancher/v2.5/en/cluster-admin/api/api-tokens/
+ - /rancher/v2.x/en/api/api-tokens/
---
By default, some cluster-level API tokens are generated with infinite time-to-live (`ttl=0`). In other words, API tokens with `ttl=0` never expire unless you invalidate them. Tokens are not invalidated by changing a password.
diff --git a/content/rancher/v2.5/en/backups/_index.md b/content/rancher/v2.5/en/backups/_index.md
index 4b64fec0272..01b07a0db84 100644
--- a/content/rancher/v2.5/en/backups/_index.md
+++ b/content/rancher/v2.5/en/backups/_index.md
@@ -3,14 +3,17 @@ title: Backups and Disaster Recovery
weight: 5
aliases:
- /rancher/v2.5/en/backups/v2.5
+ - /rancher/v2.x/en/backups/v2.5/
---
In this section, you'll learn how to create backups of Rancher, how to restore Rancher from backup, and how to migrate Rancher to a new Kubernetes cluster.
-As of Rancher v2.5, the `rancher-backup` operator is used to backup and restore Rancher. The `rancher-backup` Helm chart is [here.](https://github.com/rancher/charts/tree/main/charts/rancher-backup)
+As of Rancher v2.5, the `rancher-backup` operator is used to backup and restore Rancher. The `rancher-backup` Helm chart is [here.](https://github.com/rancher/charts/tree/release-v2.5/charts/rancher-backup)
The backup-restore operator needs to be installed in the local cluster, and only backs up the Rancher app. The backup and restore operations are performed only in the local Kubernetes cluster.
+> When restoring a backup into a new Rancher setup, the version of the new setup should be the same as the one where the backup is made.
+
- [Changes in Rancher v2.5](#changes-in-rancher-v2-5)
- [Backup and Restore for Rancher v2.5 installed with Docker](#backup-and-restore-for-rancher-v2-5-installed-with-docker)
- [How Backups and Restores Work](#how-backups-and-restores-work)
@@ -60,6 +63,8 @@ The Backup and Restore custom resources can be created in the Rancher UI, or by
The `rancher-backup` operator can be installed from the Rancher UI, or with the Helm CLI. In both cases, the `rancher-backup` Helm chart is installed on the Kubernetes cluster running the Rancher server. It is a cluster-admin only feature and available only for the **local** cluster. (*If you do not see `rancher-backup` in the Rancher UI, you may have selected the wrong cluster.*)
+>**NOTE:** There are two known issues in Fleet that occur after performing a restoration using the backup-restore-operator: Fleet agents are inoperable and clientSecretName and helmSecretName are not included in Fleet gitrepos. Refer [here]({{}}rancher/v2.5/en/deploy-across-clusters/fleet/#troubleshooting) for workarounds.
+
### Installing rancher-backup with the Rancher UI
1. In the Rancher UI's Cluster Manager, choose the cluster named **local**
diff --git a/content/rancher/v2.5/en/backups/back-up-rancher/_index.md b/content/rancher/v2.5/en/backups/back-up-rancher/_index.md
index dee7c261fd1..47f57c96e26 100644
--- a/content/rancher/v2.5/en/backups/back-up-rancher/_index.md
+++ b/content/rancher/v2.5/en/backups/back-up-rancher/_index.md
@@ -3,12 +3,18 @@ title: Backing up Rancher
weight: 1
aliases:
- /rancher/v2.5/en/backups/v2.5/back-up-rancher
+ - /rancher/v2.x/en/backups/
+ - /rancher/v2.x/en/backups/v2.5/back-up-rancher/
---
-In this section, you'll learn how to back up Rancher running on any Kubernetes cluster. To backup Rancher installed with Docker, refer the instructions for [single node backups]({{}}/rancher/v2.5/en/backups/v2.5/docker-installs/docker-backups)
+In this section, you'll learn how to back up Rancher running on any Kubernetes cluster. To backup Rancher installed with Docker, refer to the instructions for [single node backups]({{}}/rancher/v2.5/en/backups/v2.5/docker-installs/docker-backups).
The backup-restore operator needs to be installed in the local cluster, and only backs up the Rancher app. The backup and restore operations are performed only in the local Kubernetes cluster.
+Note that the rancher-backup operator version 1.x.x is for Rancher v2.5.x.
+
+> When restoring a backup into a new Rancher setup, the version of the new setup should be the same as the one where the backup is made. The Kubernetes version should also be considered when restoring a backup, since the supported apiVersion in the cluster and in the backup file could be different.
+
### Prerequisites
Rancher version must be v2.5.0 and up
@@ -24,6 +30,8 @@ Backups are created as .tar.gz files. These files can be pushed to S3 or Minio,
1. Click **Rancher Backups.**
1. Configure the default storage location. For help, refer to the [storage configuration section.](../configuration/storage-config)
+>**NOTE:** There are two known issues in Fleet that occur after performing a restoration using the backup-restore-operator: Fleet agents are inoperable and clientSecretName and helmSecretName are not included in Fleet gitrepos. Refer [here]({{}}/rancher/v2.5/en/deploy-across-clusters/fleet/#troubleshooting) for workarounds.
+
### 2. Perform a Backup
To perform a backup, a custom resource of type Backup must be created.
diff --git a/content/rancher/v2.5/en/backups/configuration/_index.md b/content/rancher/v2.5/en/backups/configuration/_index.md
index 52236ff1d7c..a7922993beb 100644
--- a/content/rancher/v2.5/en/backups/configuration/_index.md
+++ b/content/rancher/v2.5/en/backups/configuration/_index.md
@@ -4,6 +4,7 @@ shortTitle: Configuration
weight: 4
aliases:
- /rancher/v2.5/en/backups/v2.5/configuration
+ - /rancher/v2.x/en/backups/v2.5/configuration/
---
- [Backup configuration](./backup-config)
diff --git a/content/rancher/v2.5/en/backups/configuration/backup-config/_index.md b/content/rancher/v2.5/en/backups/configuration/backup-config/_index.md
index 5ad25999879..b162250b9eb 100644
--- a/content/rancher/v2.5/en/backups/configuration/backup-config/_index.md
+++ b/content/rancher/v2.5/en/backups/configuration/backup-config/_index.md
@@ -4,6 +4,7 @@ shortTitle: Backup
weight: 1
aliases:
- /rancher/v2.5/en/backups/v2.5/configuration/backup-config
+ - /rancher/v2.x/en/backups/v2.5/configuration/backup-config/
---
The Backup Create page lets you configure a schedule, enable encryption and specify the storage location for your backups.
@@ -88,7 +89,7 @@ The S3 storage location contains the following configuration fields:
1. **Credential Secret** (optional): If you need to use the AWS Access keys Secret keys to access s3 bucket, create a secret with your credentials with keys and the directives `accessKey` and `secretKey`. It can be in any namespace. An example secret is [here.](#example-credentialsecret) This directive is unnecessary if the nodes running your operator are in EC2 and set up with IAM permissions that allow them to access S3, as described in [this section.](#iam-permissions-for-ec2-nodes-to-access-s3) The Credential Secret dropdown lists the secrets in all namespaces.
1. **Bucket Name**: The name of the S3 bucket where backup files will be stored.
1. **Region** (optional): The AWS [region](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/) where the S3 bucket is located. This field isn't needed for configuring MinIO.
-1. **Folder** (optional): The name of the folder in the S3 bucket where backup files will be stored.
+1. **Folder** (optional): The name of the folder in the S3 bucket where backup files will be stored. Nested folders (e.g., `rancher/cluster1`) are not supported.
1. **Endpoint**: The [endpoint](https://docs.aws.amazon.com/general/latest/gr/s3.html) that is used to access S3 in the region of your bucket.
1. **Endpoint CA** (optional): This should be the Base64 encoded CA cert. For an example, refer to the [example S3 compatible configuration.](#example-s3-storage-configuration)
1. **Skip TLS Verifications** (optional): Set to true if you are not using TLS.
@@ -99,7 +100,7 @@ The S3 storage location contains the following configuration fields:
| `credentialSecretName` | If you need to use the AWS Access keys Secret keys to access s3 bucket, create a secret with your credentials with keys and the directives `accessKey` and `secretKey`. It can be in any namespace as long as you provide that namespace in `credentialSecretNamespace`. An example secret is [here.](#example-credentialsecret) This directive is unnecessary if the nodes running your operator are in EC2 and set up with IAM permissions that allow them to access S3, as described in [this section.](#iam-permissions-for-ec2-nodes-to-access-s3) | |
| `credentialSecretNamespace` | The namespace of the secret containing the credentials to access S3. This directive is unnecessary if the nodes running your operator are in EC2 and set up with IAM permissions that allow them to access S3, as described in [this section.](#iam-permissions-for-ec2-nodes-to-access-s3) | |
| `bucketName` | The name of the S3 bucket where backup files will be stored. | ✓ |
-| `folder` | The name of the folder in the S3 bucket where backup files will be stored. | |
+| `folder` | The name of the folder in the S3 bucket where backup files will be stored. Nested folders (e.g., `rancher/cluster1`) are not supported. | |
| `region` | The AWS [region](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/) where the S3 bucket is located. | ✓ |
| `endpoint` | The [endpoint](https://docs.aws.amazon.com/general/latest/gr/s3.html) that is used to access S3 in the region of your bucket. | ✓ |
| `endpointCA` | This should be the Base64 encoded CA cert. For an example, refer to the [example S3 compatible configuration.](#example-s3-storage-configuration) | |
@@ -123,7 +124,7 @@ s3:
s3:
credentialSecretName: minio-creds
bucketName: rancherbackups
- endpoint: minio.35.202.130.254.xip.io
+ endpoint: minio.35.202.130.254.sslip.io
endpointCA: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURHakNDQWdLZ0F3SUJBZ0lKQUtpWFZpNEpBb0J5TUEwR0NTcUdTSWIzRFFFQkN3VUFNQkl4RURBT0JnTlYKQkFNTUIzUmxjM1F0WTJFd0hoY05NakF3T0RNd01UZ3lOVFE1V2hjTk1qQXhNREk1TVRneU5UUTVXakFTTVJBdwpEZ1lEVlFRRERBZDBaWE4wTFdOaE1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBCjA4dnV3Q2Y0SEhtR2Q2azVNTmozRW5NOG00T2RpS3czSGszd1NlOUlXQkwyVzY5WDZxenBhN2I2M3U2L05mMnkKSnZWNDVqeXplRFB6bFJycjlpbEpWaVZ1NFNqWlFjdG9jWmFCaVNsL0xDbEFDdkFaUlYvKzN0TFVTZSs1ZDY0QQpWcUhDQlZObU5xM3E3aVY0TE1aSVpRc3N6K0FxaU1Sd0pOMVVKQTZ6V0tUc2Yzc3ByQ0J2dWxJWmZsVXVETVAyCnRCTCt6cXZEc0pDdWlhNEEvU2JNT29tVmM2WnNtTGkwMjdub3dGRld3MnRpSkM5d0xMRE14NnJoVHQ4a3VvVHYKQXJpUjB4WktiRU45L1Uzb011eUVKbHZyck9YS2ZuUDUwbk8ycGNaQnZCb3pUTStYZnRvQ1d5UnhKUmI5cFNTRApKQjlmUEFtLzNZcFpMMGRKY2sxR1h3SURBUUFCbzNNd2NUQWRCZ05WSFE0RUZnUVU5NHU4WXlMdmE2MTJnT1pyCm44QnlFQ2NucVFjd1FnWURWUjBqQkRzd09ZQVU5NHU4WXlMdmE2MTJnT1pybjhCeUVDY25xUWVoRnFRVU1CSXgKRURBT0JnTlZCQU1NQjNSbGMzUXRZMkdDQ1FDb2wxWXVDUUtBY2pBTUJnTlZIUk1FQlRBREFRSC9NQTBHQ1NxRwpTSWIzRFFFQkN3VUFBNElCQVFER1JRZ1RtdzdVNXRQRHA5Q2psOXlLRW9Vd2pYWWM2UlAwdm1GSHpubXJ3dUVLCjFrTkVJNzhBTUw1MEpuS29CY0ljVDNEeGQ3TGdIbTNCRE5mVVh2anArNnZqaXhJYXR2UWhsSFNVaWIyZjJsSTkKVEMxNzVyNCtROFkzelc1RlFXSDdLK08vY3pJTGh5ei93aHRDUlFkQ29lS1dXZkFiby8wd0VSejZzNkhkVFJzNwpHcWlGNWZtWGp6S0lOcTBjMHRyZ0xtalNKd1hwSnU0ZnNGOEcyZUh4b2pOKzdJQ1FuSkg5cGRIRVpUQUtOL2ppCnIvem04RlZtd1kvdTBndEZneWVQY1ZWbXBqRm03Y0ZOSkc4Y2ZYd0QzcEFwVjhVOGNocTZGeFBHTkVvWFZnclMKY1VRMklaU0RJd1FFY3FvSzFKSGdCUWw2RXBaUVpWMW1DRklrdFBwSQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t
```
### Example credentialSecret
@@ -135,8 +136,8 @@ metadata:
name: creds
type: Opaque
data:
- accessKey:
- secretKey:
+ accessKey:
+ secretKey:
```
### IAM Permissions for EC2 Nodes to Access S3
@@ -145,7 +146,7 @@ There are two ways to set up the `rancher-backup` operator to use S3 as the back
One way is to configure the `credentialSecretName` in the Backup custom resource, which refers to AWS credentials that have access to S3.
-If the cluster nodes are in Amazon EC2, the S3 access can also be set up by assigning IAM permissions to the EC2 nodes so that they can access S3.
+If the cluster nodes are in Amazon EC2, the S3 access can also be set up by assigning IAM permissions to the EC2 nodes so that they can access S3.
To allow a node to access S3, follow the instructions in the [AWS documentation](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-instance-access-s3-bucket/) to create an IAM role for EC2. When you add a custom policy to the role, add the following permissions, and replace the `Resource` with your bucket name:
@@ -178,8 +179,8 @@ To allow a node to access S3, follow the instructions in the [AWS documentation]
}
```
-After the role is created, and you have attached the corresponding instance profile to your EC2 instance(s), the `credentialSecretName` directive can be left empty in the Backup custom resource.
+After the role is created, and you have attached the corresponding instance profile to your EC2 instance(s), the `credentialSecretName` directive can be left empty in the Backup custom resource.
# Examples
-For example Backup custom resources, refer to [this page.](../../examples/#backup)
\ No newline at end of file
+For example Backup custom resources, refer to [this page.](../../examples/#backup)
diff --git a/content/rancher/v2.5/en/backups/configuration/restore-config/_index.md b/content/rancher/v2.5/en/backups/configuration/restore-config/_index.md
index b6b62f90166..aa837a810a1 100644
--- a/content/rancher/v2.5/en/backups/configuration/restore-config/_index.md
+++ b/content/rancher/v2.5/en/backups/configuration/restore-config/_index.md
@@ -4,6 +4,7 @@ shortTitle: Restore
weight: 2
aliases:
- /rancher/v2.5/en/backups/v2.5/configuration/restore-config
+ - /rancher/v2.x/en/backups/v2.5/configuration/restore-config/
---
The Restore Create page lets you provide details of the backup to restore from
diff --git a/content/rancher/v2.5/en/backups/configuration/storage-config/_index.md b/content/rancher/v2.5/en/backups/configuration/storage-config/_index.md
index 8acb97c56cf..5e8a6e2ce2b 100644
--- a/content/rancher/v2.5/en/backups/configuration/storage-config/_index.md
+++ b/content/rancher/v2.5/en/backups/configuration/storage-config/_index.md
@@ -4,6 +4,7 @@ shortTitle: Storage
weight: 3
aliases:
- /rancher/v2.5/en/backups/v2.5/configuration/storage-config
+ - /rancher/v2.x/en/backups/v2.5/configuration/storage-config/
---
Configure a storage location where all backups are saved by default. You will have the option to override this with each backup, but will be limited to using an S3-compatible object store.
diff --git a/content/rancher/v2.5/en/backups/docker-installs/_index.md b/content/rancher/v2.5/en/backups/docker-installs/_index.md
index b6e88a8f855..2d6c0761223 100644
--- a/content/rancher/v2.5/en/backups/docker-installs/_index.md
+++ b/content/rancher/v2.5/en/backups/docker-installs/_index.md
@@ -5,6 +5,7 @@ weight: 10
aliases:
- /rancher/v2.5/en/installation/backups-and-restoration/single-node-backup-and-restoration/
- /rancher/v2.5/en/backups/v2.5/docker-installs
+ - /rancher/v2.x/en/backups/v2.5/docker-installs/
---
- [Backups](./docker-backups)
diff --git a/content/rancher/v2.5/en/backups/docker-installs/docker-backups/_index.md b/content/rancher/v2.5/en/backups/docker-installs/docker-backups/_index.md
index 507b7168b2c..8ceabd8db84 100644
--- a/content/rancher/v2.5/en/backups/docker-installs/docker-backups/_index.md
+++ b/content/rancher/v2.5/en/backups/docker-installs/docker-backups/_index.md
@@ -8,6 +8,7 @@ aliases:
- /rancher/v2.5/en/backups/backups/single-node-backups/
- /rancher/v2.5/en/backups/legacy/backup/single-node-backups/
- /rancher/v2.5/en/backups/v2.5/docker-installs/docker-backups/
+ - /rancher/v2.x/en/backups/v2.5/docker-installs/docker-backups/
---
diff --git a/content/rancher/v2.5/en/backups/docker-installs/docker-restores/_index.md b/content/rancher/v2.5/en/backups/docker-installs/docker-restores/_index.md
index cca3af9c994..fd4ddac530c 100644
--- a/content/rancher/v2.5/en/backups/docker-installs/docker-restores/_index.md
+++ b/content/rancher/v2.5/en/backups/docker-installs/docker-restores/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.5/en/installation/after-installation/single-node-backup-and-restoration/
- /rancher/v2.5/en/backups/restorations/single-node-restoration
- /rancher/v2.5/en/backups/v2.5/docker-installs/docker-restores
+ - /rancher/v2.x/en/backups/v2.5/docker-installs/docker-restores/
---
If you encounter a disaster scenario, you can restore your Rancher Server to your most recent backup.
@@ -39,7 +40,7 @@ You can obtain `` and `` by loggi
## Restoring Backups
-Using a [backup]({{}}/rancher/v2.5/en/backups/backups/single-node-backups/) that you created earlier, restore Rancher to its last known healthy state.
+Using a [backup]({{}}/rancher/v2.5/en/backups/docker-installs/docker-backups/) that you created earlier, restore Rancher to its last known healthy state.
1. Using a remote Terminal connection, log into the node running your Rancher Server.
@@ -48,9 +49,9 @@ Using a [backup]({{}}/rancher/v2.5/en/backups/backups/single-node-backu
```
docker stop
```
-1. Move the backup tarball that you created during completion of [Creating Backups—Docker Installs]({{}}/rancher/v2.5/en/backups/backups/single-node-backups/) onto your Rancher Server. Change to the directory that you moved it to. Enter `dir` to confirm that it's there.
+1. Move the backup tarball that you created during completion of [Creating Backups—Docker Installs]({{}}/rancher/v2.5/en/backups/docker-installs/docker-backups/) onto your Rancher Server. Change to the directory that you moved it to. Enter `dir` to confirm that it's there.
- If you followed the naming convention we suggested in [Creating Backups—Docker Installs]({{}}/rancher/v2.5/en/backups/backups/single-node-backups/), it will have a name similar to `rancher-data-backup--.tar.gz`.
+ If you followed the naming convention we suggested in [Creating Backups—Docker Installs]({{}}/rancher/v2.5/en/backups/docker-installs/docker-backups/), it will have a name similar to `rancher-data-backup--.tar.gz`.
1. Enter the following command to delete your current state data and replace it with your backup data, replacing the placeholders. Don't forget to close the quotes.
diff --git a/content/rancher/v2.5/en/backups/examples/_index.md b/content/rancher/v2.5/en/backups/examples/_index.md
index 95a6a99002e..83496c18f99 100644
--- a/content/rancher/v2.5/en/backups/examples/_index.md
+++ b/content/rancher/v2.5/en/backups/examples/_index.md
@@ -3,6 +3,7 @@ title: Examples
weight: 5
aliases:
- /rancher/v2.5/en/backups/v2.5/examples
+ - /rancher/v2.x/en/backups/v2.5/examples/
---
This section contains examples of Backup and Restore custom resources.
@@ -85,7 +86,7 @@ spec:
credentialSecretName: minio-creds
credentialSecretNamespace: default
bucketName: rancherbackups
- endpoint: minio.xip.io
+ endpoint: minio.sslip.io
endpointCA: LS0tLS1CRUdJTi3VUFNQkl5UUT.....pbEpWaVzNkRS0tLS0t
resourceSetName: rancher-resource-set
encryptionConfigSecretName: encryptionconfig
@@ -214,7 +215,7 @@ spec:
credentialSecretName: minio-creds
credentialSecretNamespace: default
bucketName: rancherbackups
- endpoint: minio.xip.io
+ endpoint: minio.sslip.io
endpointCA: LS0tLS1CRUdJTi3VUFNQkl5UUT.....pbEpWaVzNkRS0tLS0t
encryptionConfigSecretName: test-encryptionconfig
```
@@ -268,8 +269,8 @@ metadata:
name: creds
type: Opaque
data:
- accessKey:
- secretKey:
+ accessKey:
+ secretKey:
```
# Example EncryptionConfiguration
@@ -298,6 +299,3 @@ resources:
- name: key1
secret: YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoxMjM0NTY=
```
-
-
-
diff --git a/content/rancher/v2.5/en/backups/migrating-rancher/_index.md b/content/rancher/v2.5/en/backups/migrating-rancher/_index.md
index 49e3e58d52a..e8084657e17 100644
--- a/content/rancher/v2.5/en/backups/migrating-rancher/_index.md
+++ b/content/rancher/v2.5/en/backups/migrating-rancher/_index.md
@@ -1,6 +1,8 @@
---
title: Migrating Rancher to a New Cluster
weight: 3
+aliases:
+ - /rancher/v2.x/en/backups/v2.5/migrating-rancher/
---
If you are migrating Rancher to a new Kubernetes cluster, you don't need to install Rancher on the new cluster first. If Rancher is restored to a new cluster with Rancher already installed, it can cause problems.
@@ -19,11 +21,12 @@ Rancher can be installed on any Kubernetes cluster, including hosted Kubernetes
- [K3s Kubernetes installation docs]({{}}/k3s/latest/en/installation/)
### 1. Install the rancher-backup Helm chart
+Install version 1.x.x of the rancher-backup chart.
```
helm repo add rancher-charts https://charts.rancher.io
helm repo update
-helm install rancher-backup-crd rancher-charts/rancher-backup-crd -n cattle-resources-system --create-namespace
-helm install rancher-backup rancher-charts/rancher-backup -n cattle-resources-system
+helm install rancher-backup-crd rancher-charts/rancher-backup-crd -n cattle-resources-system --create-namespace --version $CHART_VERSION
+helm install rancher-backup rancher-charts/rancher-backup -n cattle-resources-system --version $CHART_VERSION
```
### 2. Restore from backup using a Restore custom resource
@@ -37,8 +40,8 @@ metadata:
name: s3-creds
type: Opaque
stringData:
- accessKey:
- secretKey:
+ accessKey:
+ secretKey:
```
This secret can be created in any namespace, with the above example it will get created in the default namespace
@@ -67,20 +70,19 @@ spec:
endpoint: s3.us-west-2.amazonaws.com
```
-> **Important:** The field `encryptionConfigSecretName` must be set only if your backup was created with encryption enabled. Provide the name of the Secret containing the encryption config file. If you only have the encryption config file, but don't have a secret created with it in this cluster, use the following steps to create the secret:
-1. The encryption configuration file must be named `encryption-provider-config.yaml`, and the `--from-file` flag must be used to create this secret. So save your `EncryptionConfiguration` in a file called `encryption-provider-config.yaml` and run this command:
+>**Important:** The field `encryptionConfigSecretName` must be set only if your backup was created with encryption enabled. Provide the name of the Secret containing the encryption config file. If you only have the encryption config file, but don't have a secret created with it in this cluster, use the following steps to create the secret:
-```
-kubectl create secret generic encryptionconfig \
- --from-file=./encryption-provider-config.yaml \
- -n cattle-resources-system
-```
-
-Then apply the resource:
-
-```
-kubectl apply -f migrationResource.yaml
-```
+1. The encryption configuration file must be named `encryption-provider-config.yaml`, and the `--from-file` flag must be used to create this secret. So save your `EncryptionConfiguration` in a file called `encryption-provider-config.yaml` and run this command:
+ ```
+ kubectl create secret generic encryptionconfig \
+ --from-file=./encryption-provider-config.yaml \
+ -n cattle-resources-system
+ ```
+
+1. Then apply the resource:
+ ```
+ kubectl apply -f migrationResource.yaml
+ ```
### 3. Install cert-manager
diff --git a/content/rancher/v2.5/en/backups/restoring-rancher/_index.md b/content/rancher/v2.5/en/backups/restoring-rancher/_index.md
index 64830e652aa..d6ab3d801e1 100644
--- a/content/rancher/v2.5/en/backups/restoring-rancher/_index.md
+++ b/content/rancher/v2.5/en/backups/restoring-rancher/_index.md
@@ -4,6 +4,7 @@ weight: 2
aliases:
- /rancher/v2.x/en/installation/backups/restores
- /rancher/v2.x/en/backups/restoring-rancher
+ - /rancher/v2.x/en/backups/v2.5/restoring-rancher/
---
A restore is performed by creating a Restore custom resource.
@@ -12,6 +13,7 @@ A restore is performed by creating a Restore custom resource.
>
> * Follow the instructions from this page for restoring rancher on the same cluster where it was backed up from. In order to migrate rancher to a new cluster, follow the steps to [migrate rancher.]({{}}/rancher/v2.5/en/backups/migrating-rancher)
> * While restoring rancher on the same setup, the operator will scale down the rancher deployment when restore starts, and it will scale back up the deployment once restore completes. So Rancher will be unavailable during the restore.
+> * When restoring a backup into a new Rancher setup, the version of the new setup should be the same as the one where the backup is made.
### Create the Restore Custom Resource
@@ -54,8 +56,17 @@ To check how the restore is progressing, you can check the logs of the operator.
```
kubectl logs -n cattle-resources-system -l app.kubernetes.io/name=rancher-backup -f
-
+```
### Cleanup
-If you created the restore resource with kubectl, remove the resource to prevent a naming conflict with future restores.
\ No newline at end of file
+If you created the restore resource with kubectl, remove the resource to prevent a naming conflict with future restores.
+
+### Known Issues
+In some cases, after restoring the backup, Rancher logs will show errors similar to the following:
+```
+2021/10/05 21:30:45 [ERROR] error syncing 'c-89d82/m-4067aa68dd78': handler rke-worker-upgrader: clusters.management.cattle.io "c-89d82" not found, requeuing
+```
+This happens because one of the resources that was just restored has finalizers but the related resources have been deleted so the handler cannot find it.
+
+To eliminate the errors, we need to find and delete the resource that causes the error. See more information [here](https://github.com/rancher/rancher/issues/35050#issuecomment-937968556)
diff --git a/content/rancher/v2.5/en/best-practices/_index.md b/content/rancher/v2.5/en/best-practices/_index.md
index 7be71efebed..77a1ec66e89 100644
--- a/content/rancher/v2.5/en/best-practices/_index.md
+++ b/content/rancher/v2.5/en/best-practices/_index.md
@@ -3,6 +3,8 @@ title: Best Practices Guide
weight: 4
aliases:
- /rancher/v2.5/en/best-practices/v2.5
+ - /rancher/v2.x/en/best-practices/
+ - /rancher/v2.x/en/best-practices/v2.5/
---
The purpose of this section is to consolidate best practices for Rancher implementations. This also includes recommendations for related technologies, such as Kubernetes, Docker, containers, and more. The objective is to improve the outcome of a Rancher implementation using the operational experience of Rancher and its customers.
diff --git a/content/rancher/v2.5/en/best-practices/rancher-managed/_index.md b/content/rancher/v2.5/en/best-practices/rancher-managed/_index.md
index 7bcc920d4fc..58c57134e0c 100644
--- a/content/rancher/v2.5/en/best-practices/rancher-managed/_index.md
+++ b/content/rancher/v2.5/en/best-practices/rancher-managed/_index.md
@@ -4,6 +4,7 @@ shortTitle: Rancher Managed Clusters
weight: 2
aliases:
- /rancher/v2.5/en/best-practices/v2.5/rancher-managed
+ - /rancher/v2.x/en/best-practices/v2.5/rancher-managed/
---
### Logging
diff --git a/content/rancher/v2.5/en/best-practices/rancher-managed/containers/_index.md b/content/rancher/v2.5/en/best-practices/rancher-managed/containers/_index.md
index 3763c0b2576..8e104b8a43e 100644
--- a/content/rancher/v2.5/en/best-practices/rancher-managed/containers/_index.md
+++ b/content/rancher/v2.5/en/best-practices/rancher-managed/containers/_index.md
@@ -4,6 +4,7 @@ weight: 100
aliases:
- /rancher/v2.5/en/best-practices/containers
- /rancher/v2.5/en/best-practices/v2.5/rancher-managed/containers
+ - /rancher/v2.x/en/best-practices/v2.5/rancher-managed/containers/
---
Running well-built containers can greatly impact the overall performance and security of your environment.
diff --git a/content/rancher/v2.5/en/best-practices/rancher-managed/logging/_index.md b/content/rancher/v2.5/en/best-practices/rancher-managed/logging/_index.md
index 30a9a2a8f5a..1efc247af0f 100644
--- a/content/rancher/v2.5/en/best-practices/rancher-managed/logging/_index.md
+++ b/content/rancher/v2.5/en/best-practices/rancher-managed/logging/_index.md
@@ -3,6 +3,7 @@ title: Logging Best Practices
weight: 1
aliases:
- /rancher/v2.5/en/best-practices/v2.5/rancher-managed/logging
+ - /rancher/v2.x/en/best-practices/v2.5/rancher-managed/logging/
---
In this guide, we recommend best practices for cluster-level logging and application logging.
diff --git a/content/rancher/v2.5/en/best-practices/rancher-managed/managed-vsphere/_index.md b/content/rancher/v2.5/en/best-practices/rancher-managed/managed-vsphere/_index.md
index 12b794bacf7..5405e8d0f0a 100644
--- a/content/rancher/v2.5/en/best-practices/rancher-managed/managed-vsphere/_index.md
+++ b/content/rancher/v2.5/en/best-practices/rancher-managed/managed-vsphere/_index.md
@@ -3,6 +3,7 @@ title: Best Practices for Rancher Managed vSphere Clusters
shortTitle: Rancher Managed Clusters in vSphere
aliases:
- /rancher/v2.5/en/best-practices/v2.5/rancher-managed/managed-vsphere
+ - /rancher/v2.x/en/best-practices/v2.5/rancher-managed/managed-vsphere/
---
This guide outlines a reference architecture for provisioning downstream Rancher clusters in a vSphere environment, in addition to standard vSphere best practices as documented by VMware.
@@ -14,7 +15,7 @@ This guide outlines a reference architecture for provisioning downstream Rancher
Solution Overview
-
+
# 1. VM Considerations
diff --git a/content/rancher/v2.5/en/best-practices/rancher-managed/monitoring/_index.md b/content/rancher/v2.5/en/best-practices/rancher-managed/monitoring/_index.md
index 24faff8755c..62bf2492175 100644
--- a/content/rancher/v2.5/en/best-practices/rancher-managed/monitoring/_index.md
+++ b/content/rancher/v2.5/en/best-practices/rancher-managed/monitoring/_index.md
@@ -3,6 +3,7 @@ title: Monitoring Best Practices
weight: 2
aliases:
- /rancher/v2.5/en/best-practices/v2.5/rancher-managed/monitoring
+ - /rancher/v2.x/en/best-practices/v2.5/rancher-managed/monitoring/
---
Configuring sensible monitoring and alerting rules is vital for running any production workloads securely and reliably. This is not different when using Kubernetes and Rancher. Fortunately the integrated monitoring and alerting functionality makes this whole process a lot easier.
@@ -97,7 +98,7 @@ Sometimes it is useful to monitor workloads from the outside. For this, you can
If you have a (micro)service architecture where multiple individual workloads within your cluster are communicating with each other, it is really important to have detailed metrics and traces about this traffic to understand how all these workloads are communicating with each other and where a problem or bottleneck may be.
-Of course you can monitor all this internal traffic in all your workloads and expose these metrics to Prometheus. But this can quickly become quite work intensive. Service Meshes like Istio, which can be installed with [a click](https://rancher.com/docs/rancher/v2.5/en/cluster-admin/tools/istio/) in Rancher, can do this automatically and provide rich telemetry about the traffic between all services.
+Of course you can monitor all this internal traffic in all your workloads and expose these metrics to Prometheus. But this can quickly become quite work intensive. Service Meshes like Istio, which can be installed with [a click]({{}}/rancher/v2.5/en/istio/) in Rancher, can do this automatically and provide rich telemetry about the traffic between all services.
# Real User Monitoring
@@ -107,7 +108,7 @@ Monitoring the availability and performance of all your internal workloads is vi
In addition to monitoring workloads to detect performance, availability or scalability problems, the cluster and the workloads running into it should also be monitored for potential security problems. A good starting point is to frequently run and alert on [CIS Scans]({{}}/rancher/v2.5/en/cis-scans/v2.5/) which check if the cluster is configured according to security best practices.
-For the workloads, you can have a look at Kubernetes and Container security solutions like [Falko](https://falco.org/), [Aqua Kubernetes Security](https://www.aquasec.com/solutions/kubernetes-container-security/), [SysDig](https://sysdig.com/).
+For the workloads, you can have a look at Kubernetes and Container security solutions like [Falco](https://falco.org/), [Aqua Kubernetes Security](https://www.aquasec.com/solutions/kubernetes-container-security/), [SysDig](https://sysdig.com/).
# Setting up Alerts
@@ -119,4 +120,4 @@ When setting up alerts, configure them for all the workloads that are critical t
If an alert starts firing, but there is nothing you can do about it at the moment, it's also fine to silence the alert for a certain amount of time, so that you can look at it later.
-You can find more information on how to set up alerts and notification channels in the [Rancher Documentation]({{}}/rancher/v2.5/en/monitoring-alerting/v2.5).
\ No newline at end of file
+You can find more information on how to set up alerts and notification channels in the [Rancher Documentation]({{}}/rancher/v2.5/en/monitoring-alerting).
diff --git a/content/rancher/v2.5/en/best-practices/rancher-server/_index.md b/content/rancher/v2.5/en/best-practices/rancher-server/_index.md
index 2967207d26c..32606b0dbe6 100644
--- a/content/rancher/v2.5/en/best-practices/rancher-server/_index.md
+++ b/content/rancher/v2.5/en/best-practices/rancher-server/_index.md
@@ -4,6 +4,7 @@ shortTitle: Rancher Server
weight: 1
aliases:
- /rancher/v2.5/en/best-practices/v2.5/rancher-server
+ - /rancher/v2.x/en/best-practices/v2.5/rancher-server/
---
This guide contains our recommendations for running the Rancher server, and is intended to be used in situations in which Rancher manages downstream Kubernetes clusters.
diff --git a/content/rancher/v2.5/en/best-practices/rancher-server/deployment-strategies/_index.md b/content/rancher/v2.5/en/best-practices/rancher-server/deployment-strategies/_index.md
index 15b895e94ea..c745f5dc14b 100644
--- a/content/rancher/v2.5/en/best-practices/rancher-server/deployment-strategies/_index.md
+++ b/content/rancher/v2.5/en/best-practices/rancher-server/deployment-strategies/_index.md
@@ -3,6 +3,7 @@ title: Rancher Deployment Strategy
weight: 100
aliases:
- /rancher/v2.5/en/best-practices/v2.5/rancher-server/deployment-strategies
+ - /rancher/v2.x/en/best-practices/v2.5/rancher-server/deployment-strategies/
---
There are two recommended deployment strategies for a Rancher server that manages downstream Kubernetes clusters. Each one has its own pros and cons. Read more about which one would fit best for your use case:
diff --git a/content/rancher/v2.5/en/best-practices/rancher-server/deployment-types/_index.md b/content/rancher/v2.5/en/best-practices/rancher-server/deployment-types/_index.md
index 7dc67404bdf..f32518a92f7 100644
--- a/content/rancher/v2.5/en/best-practices/rancher-server/deployment-types/_index.md
+++ b/content/rancher/v2.5/en/best-practices/rancher-server/deployment-types/_index.md
@@ -4,6 +4,7 @@ weight: 100
aliases:
- /rancher/v2.5/en/best-practices/deployment-types
- /rancher/v2.5/en/best-practices/v2.5/rancher-server/deployment-types
+ - /rancher/v2.x/en/best-practices/v2.5/rancher-server/deployment-types/
---
This guide is geared toward use cases where Rancher is used to manage downstream Kubernetes clusters. The high-availability setup is intended to prevent losing access to downstream clusters if the Rancher server is not available.
@@ -36,5 +37,4 @@ However, metrics-driven capacity planning analysis should be the ultimate guidan
Using Rancher, you can monitor the state and processes of your cluster nodes, Kubernetes components, and software deployments through integration with Prometheus, a leading open-source monitoring solution, and Grafana, which lets you visualize the metrics from Prometheus.
-After you [enable monitoring]({{}}/rancher/v2.5/en/monitoring-alerting/legacy/monitoring/cluster-monitoring/) in the cluster, you can set up [a notification channel]({{}}/rancher/v2.5/en/cluster-admin/tools/notifiers/) and [cluster alerts]({{}}/rancher/v2.5/en/cluster-admin/tools/alerts/) to let you know if your cluster is approaching its capacity. You can also use the Prometheus and Grafana monitoring framework to establish a baseline for key metrics as you scale.
-
+After you [enable monitoring]({{}}/rancher/v2.5/en/monitoring-alerting) in the cluster, you can set up [a notification channel]({{}}/rancher/v2.5/en/monitoring-alerting/) and alerts to let you know if your cluster is approaching its capacity. You can also use the Prometheus and Grafana monitoring framework to establish a baseline for key metrics as you scale.
\ No newline at end of file
diff --git a/content/rancher/v2.5/en/best-practices/rancher-server/rancher-in-vsphere/_index.md b/content/rancher/v2.5/en/best-practices/rancher-server/rancher-in-vsphere/_index.md
index d4f9f64449f..d3db6045085 100644
--- a/content/rancher/v2.5/en/best-practices/rancher-server/rancher-in-vsphere/_index.md
+++ b/content/rancher/v2.5/en/best-practices/rancher-server/rancher-in-vsphere/_index.md
@@ -4,6 +4,7 @@ shortTitle: On-Premises Rancher in vSphere
weight: 3
aliases:
- /rancher/v2.5/en/best-practices/v2.5/rancher-server/rancher-in-vsphere
+ - /rancher/v2.x/en/best-practices/v2.5/rancher-server/rancher-in-vsphere/
---
This guide outlines a reference architecture for installing Rancher on an RKE Kubernetes cluster in a vSphere environment, in addition to standard vSphere best practices as documented by VMware.
@@ -52,7 +53,7 @@ https://rancher.com/docs/rancher/v2.5/en/installation/requirements/
### Leverage VM Templates to Construct the Environment
-To facilitate consistency across the deployed Virtual Machines across the environment, consider the use of "Golden Images" in the form of VM templates. Packer can be used to accomplish this, adding greater customisation options.
+To facilitate the consistency of Virtual Machines deployed across the environment, consider the use of "Golden Images" in the form of VM templates. Packer can be used to accomplish this, adding greater customization options.
### Leverage DRS Anti-Affinity Rules (Where Possible) to Separate Rancher Cluster Nodes Across ESXi Hosts
diff --git a/content/rancher/v2.5/en/cis-scans/_index.md b/content/rancher/v2.5/en/cis-scans/_index.md
index d54e85e2b91..6f72660c12c 100644
--- a/content/rancher/v2.5/en/cis-scans/_index.md
+++ b/content/rancher/v2.5/en/cis-scans/_index.md
@@ -3,6 +3,8 @@ title: CIS Scans
weight: 17
aliases:
- /rancher/v2.5/en/cis-scans/v2.5
+ - /rancher/v2.x/en/cis-scans/
+ - /rancher/v2.x/en/cis-scans/v2.5/
---
Rancher can run a security scan to check whether Kubernetes is deployed according to security best practices as defined in the CIS Kubernetes Benchmark.
@@ -106,7 +108,7 @@ From Rancher v2.5.4, the scan uses the CIS Benchmark v1.6 by default. In Rancher
The Benchmark version is included in the generated report.
-The Benchmark provides recommendations of two types: Scored and Not Scored. Recommendations marked as Not Scored in the Benchmark are not included in the generated report.
+The Benchmark provides recommendations of two types: Automated and Manual. Recommendations marked as Manual in the Benchmark are not included in the generated report.
Some tests are designated as "Not Applicable." These tests will not be run on any CIS scan because of the way that Rancher provisions RKE clusters. For information on how test results can be audited, and why some tests are designated to be not applicable, refer to Rancher's self-assessment guide for the corresponding Kubernetes version.
@@ -294,9 +296,9 @@ Alerts can be configured to be sent out for a scan that runs on a schedule.
> **Prerequisite:**
>
-> Before enabling alerts for `rancher-cis-benchmark`, make sure to install the `rancher-monitoring` application and configure the Receivers and Routes. For more information, see [this section.]({{}}/rancher/v2.5/en/monitoring-alerting/v2.5/configuration/alertmanager/)
+> Before enabling alerts for `rancher-cis-benchmark`, make sure to install the `rancher-monitoring` application and configure the Receivers and Routes. For more information, see [this section.]({{}}/rancher/v2.5/en/monitoring-alerting/configuration/alertmanager/)
>
-> While configuring the routes for `rancher-cis-benchmark` alerts, you can specify the matching using the key-value pair `job: rancher-cis-scan`. An example route configuration is [here.]({{}}/rancher/v2.5/en/monitoring-alerting/v2.5/configuration/alertmanager/#example-route-config-for-cis-scan-alerts)
+> While configuring the routes for `rancher-cis-benchmark` alerts, you can specify the matching using the key-value pair `job: rancher-cis-scan`. An example route configuration is [here.]({{}}/rancher/v2.5/en/monitoring-alerting/configuration/alertmanager/#example-route-config-for-cis-scan-alerts)
While installing or upgrading the `rancher-cis-benchmark` application, set the following flag to `true` in the `values.yaml`:
@@ -321,9 +323,9 @@ The `rancher-cis-benchmark` application supports two types of alerts:
> **Prerequisite:**
>
-> Before enabling alerts for `rancher-cis-benchmark`, make sure to install the `rancher-monitoring` application and configure the Receivers and Routes. For more information, see [this section.]({{}}/rancher/v2.5/en/monitoring-alerting/v2.5/configuration/alertmanager/)
+> Before enabling alerts for `rancher-cis-benchmark`, make sure to install the `rancher-monitoring` application and configure the Receivers and Routes. For more information, see [this section.]({{}}/rancher/v2.5/en/monitoring-alerting/configuration/alertmanager/)
>
-> While configuring the routes for `rancher-cis-benchmark` alerts, you can specify the matching using the key-value pair `job: rancher-cis-scan`. An example route configuration is [here.]({{}}/rancher/v2.5/en/monitoring-alerting/v2.5/configuration/alertmanager/#example-route-config-for-cis-scan-alerts)
+> While configuring the routes for `rancher-cis-benchmark` alerts, you can specify the matching using the key-value pair `job: rancher-cis-scan`. An example route configuration is [here.]({{}}/rancher/v2.5/en/monitoring-alerting/configuration/alertmanager/#example-route-config-for-cis-scan-alerts)
To configure alerts for a scan that runs on a schedule,
diff --git a/content/rancher/v2.5/en/cis-scans/configuration/_index.md b/content/rancher/v2.5/en/cis-scans/configuration/_index.md
index 38e4eaed6ef..e69ffd0928a 100644
--- a/content/rancher/v2.5/en/cis-scans/configuration/_index.md
+++ b/content/rancher/v2.5/en/cis-scans/configuration/_index.md
@@ -3,6 +3,7 @@ title: Configuration
weight: 3
aliases:
- /rancher/v2.5/en/cis-scans/v2.5/configuration
+ - /rancher/v2.x/en/cis-scans/v2.5/configuration/
---
This configuration reference is intended to help you manage the custom resources created by the `rancher-cis-benchmark` application. These resources are used for performing CIS scans on a cluster, skipping tests, setting the test profile that will be used during a scan, and other customization.
diff --git a/content/rancher/v2.5/en/cis-scans/custom-benchmark/_index.md b/content/rancher/v2.5/en/cis-scans/custom-benchmark/_index.md
index 5b4627ea42a..993ba956891 100644
--- a/content/rancher/v2.5/en/cis-scans/custom-benchmark/_index.md
+++ b/content/rancher/v2.5/en/cis-scans/custom-benchmark/_index.md
@@ -3,6 +3,7 @@ title: Creating a Custom Benchmark Version for Running a Cluster Scan
weight: 4
aliases:
- /rancher/v2.5/en/cis-scans/v2.5/custom-benchmark
+ - /rancher/v2.x/en/cis-scans/v2.5/custom-benchmark/
---
_Available as of v2.5.4_
diff --git a/content/rancher/v2.5/en/cis-scans/rbac/_index.md b/content/rancher/v2.5/en/cis-scans/rbac/_index.md
index 66cff4f39cc..1f389469cb0 100644
--- a/content/rancher/v2.5/en/cis-scans/rbac/_index.md
+++ b/content/rancher/v2.5/en/cis-scans/rbac/_index.md
@@ -5,6 +5,7 @@ weight: 3
aliases:
- /rancher/v2.5/en/cis-scans/rbac
- /rancher/v2.5/en/cis-scans/v2.5/rbac
+ - /rancher/v2.x/en/cis-scans/v2.5/rbac/
---
This section describes the permissions required to use the rancher-cis-benchmark App.
diff --git a/content/rancher/v2.5/en/cis-scans/skipped-tests/_index.md b/content/rancher/v2.5/en/cis-scans/skipped-tests/_index.md
index f997b814e9d..3312a9c3940 100644
--- a/content/rancher/v2.5/en/cis-scans/skipped-tests/_index.md
+++ b/content/rancher/v2.5/en/cis-scans/skipped-tests/_index.md
@@ -4,6 +4,7 @@ weight: 3
aliases:
- /rancher/v2.5/en/cis-scans/skipped-tests
- /rancher/v2.5/en/cis-scans/v2.5/skipped-tests
+ - /rancher/v2.x/en/cis-scans/v2.5/skipped-tests/
---
This section lists the tests that are skipped in the permissive test profile for RKE.
@@ -16,42 +17,42 @@ This section lists the tests that are skipped in the permissive test profile for
| Number | Description | Reason for Skipping |
| ---------- | ------------- | --------- |
-| 1.1.12 | Ensure that the etcd data directory ownership is set to etcd:etcd (Scored) | A system service account is required for etcd data directory ownership. Refer to Rancher's hardening guide for more details on how to configure this ownership. |
-| 1.2.6 | Ensure that the --kubelet-certificate-authority argument is set as appropriate (Scored) | When generating serving certificates, functionality could break in conjunction with hostname overrides which are required for certain cloud providers. |
-| 1.2.16 | Ensure that the admission control plugin PodSecurityPolicy is set (Scored) | Enabling Pod Security Policy can cause applications to unexpectedly fail. |
-| 1.2.33 | Ensure that the --encryption-provider-config argument is set as appropriate (Not Scored) | Enabling encryption changes how data can be recovered as data is encrypted. |
-| 1.2.34 | Ensure that encryption providers are appropriately configured (Not Scored) | Enabling encryption changes how data can be recovered as data is encrypted. |
-| 4.2.6 | Ensure that the --protect-kernel-defaults argument is set to true (Scored) | System level configurations are required before provisioning the cluster in order for this argument to be set to true. |
-| 4.2.10 | Ensure that the--tls-cert-file and --tls-private-key-file arguments are set as appropriate (Scored) | When generating serving certificates, functionality could break in conjunction with hostname overrides which are required for certain cloud providers. |
-| 5.1.5 | Ensure that default service accounts are not actively used. (Scored) | Kubernetes provides default service accounts to be used. |
-| 5.2.2 | Minimize the admission of containers wishing to share the host process ID namespace (Scored) | Enabling Pod Security Policy can cause applications to unexpectedly fail. |
-| 5.2.3 | Minimize the admission of containers wishing to share the host IPC namespace (Scored) | Enabling Pod Security Policy can cause applications to unexpectedly fail. |
-| 5.2.4 | Minimize the admission of containers wishing to share the host network namespace (Scored) | Enabling Pod Security Policy can cause applications to unexpectedly fail. |
-| 5.2.5 | Minimize the admission of containers with allowPrivilegeEscalation (Scored) | Enabling Pod Security Policy can cause applications to unexpectedly fail. |
-| 5.3.2 | Ensure that all Namespaces have Network Policies defined (Scored) | Enabling Network Policies can prevent certain applications from communicating with each other. |
-| 5.6.4 | The default namespace should not be used (Scored) | Kubernetes provides a default namespace. |
+| 1.1.12 | Ensure that the etcd data directory ownership is set to etcd:etcd (Automated) | A system service account is required for etcd data directory ownership. Refer to Rancher's hardening guide for more details on how to configure this ownership. |
+| 1.2.6 | Ensure that the --kubelet-certificate-authority argument is set as appropriate (Automated) | When generating serving certificates, functionality could break in conjunction with hostname overrides which are required for certain cloud providers. |
+| 1.2.16 | Ensure that the admission control plugin PodSecurityPolicy is set (Automated) | Enabling Pod Security Policy can cause applications to unexpectedly fail. |
+| 1.2.33 | Ensure that the --encryption-provider-config argument is set as appropriate (Manual) | Enabling encryption changes how data can be recovered as data is encrypted. |
+| 1.2.34 | Ensure that encryption providers are appropriately configured (Manual) | Enabling encryption changes how data can be recovered as data is encrypted. |
+| 4.2.6 | Ensure that the --protect-kernel-defaults argument is set to true (Automated) | System level configurations are required before provisioning the cluster in order for this argument to be set to true. |
+| 4.2.10 | Ensure that the--tls-cert-file and --tls-private-key-file arguments are set as appropriate (Automated) | When generating serving certificates, functionality could break in conjunction with hostname overrides which are required for certain cloud providers. |
+| 5.1.5 | Ensure that default service accounts are not actively used. (Automated) | Kubernetes provides default service accounts to be used. |
+| 5.2.2 | Minimize the admission of containers wishing to share the host process ID namespace (Automated) | Enabling Pod Security Policy can cause applications to unexpectedly fail. |
+| 5.2.3 | Minimize the admission of containers wishing to share the host IPC namespace (Automated) | Enabling Pod Security Policy can cause applications to unexpectedly fail. |
+| 5.2.4 | Minimize the admission of containers wishing to share the host network namespace (Automated) | Enabling Pod Security Policy can cause applications to unexpectedly fail. |
+| 5.2.5 | Minimize the admission of containers with allowPrivilegeEscalation (Automated) | Enabling Pod Security Policy can cause applications to unexpectedly fail. |
+| 5.3.2 | Ensure that all Namespaces have Network Policies defined (Automated) | Enabling Network Policies can prevent certain applications from communicating with each other. |
+| 5.6.4 | The default namespace should not be used (Automated) | Kubernetes provides a default namespace. |
### CIS Benchmark v1.5 Not Applicable Tests
| Number | Description | Reason for being not applicable |
| ---------- | ------------- | --------- |
-| 1.1.1 | Ensure that the API server pod specification file permissions are set to 644 or more restrictive (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for kube-apiserver. All configuration is passed in as arguments at container run time. |
-| 1.1.2 | Ensure that the API server pod specification file ownership is set to root:root (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for kube-apiserver. All configuration is passed in as arguments at container run time. |
-| 1.1.3 | Ensure that the controller manager pod specification file permissions are set to 644 or more restrictive (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for controller-manager. All configuration is passed in as arguments at container run time. |
-| 1.1.4 | Ensure that the controller manager pod specification file ownership is set to root:root (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for controller-manager. All configuration is passed in as arguments at container run time. |
-| 1.1.5 | Ensure that the scheduler pod specification file permissions are set to 644 or more restrictive (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for scheduler. All configuration is passed in as arguments at container run time. |
-| 1.1.6 | Ensure that the scheduler pod specification file ownership is set to root:root (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for scheduler. All configuration is passed in as arguments at container run time. |
-| 1.1.7 | Ensure that the etcd pod specification file permissions are set to 644 or more restrictive (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for etcd. All configuration is passed in as arguments at container run time. |
-| 1.1.8 | Ensure that the etcd pod specification file ownership is set to root:root (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for etcd. All configuration is passed in as arguments at container run time. |
-| 1.1.13 | Ensure that the admin.conf file permissions are set to 644 or more restrictive (Scored) | Clusters provisioned by RKE does not store the kubernetes default kubeconfig credentials file on the nodes. |
-| 1.1.14 | Ensure that the admin.conf file ownership is set to root:root (Scored) | Clusters provisioned by RKE does not store the kubernetes default kubeconfig credentials file on the nodes. |
-| 1.1.15 | Ensure that the scheduler.conf file permissions are set to 644 or more restrictive (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for scheduler. All configuration is passed in as arguments at container run time. |
-| 1.1.16 | Ensure that the scheduler.conf file ownership is set to root:root (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for scheduler. All configuration is passed in as arguments at container run time. |
-| 1.1.17 | Ensure that the controller-manager.conf file permissions are set to 644 or more restrictive (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for controller-manager. All configuration is passed in as arguments at container run time. |
-| 1.1.18 | Ensure that the controller-manager.conf file ownership is set to root:root (Scored) | Clusters provisioned by RKE doesn't require or maintain a configuration file for controller-manager. All configuration is passed in as arguments at container run time. |
-| 1.3.6 | Ensure that the RotateKubeletServerCertificate argument is set to true (Scored) | Clusters provisioned by RKE handles certificate rotation directly through RKE. |
-| 4.1.1 | Ensure that the kubelet service file permissions are set to 644 or more restrictive (Scored) | Clusters provisioned by RKE doesn’t require or maintain a configuration file for the kubelet service. All configuration is passed in as arguments at container run time. |
-| 4.1.2 | Ensure that the kubelet service file ownership is set to root:root (Scored) | Clusters provisioned by RKE doesn’t require or maintain a configuration file for the kubelet service. All configuration is passed in as arguments at container run time. |
-| 4.1.9 | Ensure that the kubelet configuration file has permissions set to 644 or more restrictive (Scored) | Clusters provisioned by RKE doesn’t require or maintain a configuration file for the kubelet. All configuration is passed in as arguments at container run time. |
-| 4.1.10 | Ensure that the kubelet configuration file ownership is set to root:root (Scored) | Clusters provisioned by RKE doesn’t require or maintain a configuration file for the kubelet. All configuration is passed in as arguments at container run time. |
-| 4.2.12 | Ensure that the RotateKubeletServerCertificate argument is set to true (Scored) | Clusters provisioned by RKE handles certificate rotation directly through RKE. |
\ No newline at end of file
+| 1.1.1 | Ensure that the API server pod specification file permissions are set to 644 or more restrictive (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for kube-apiserver. All configuration is passed in as arguments at container run time. |
+| 1.1.2 | Ensure that the API server pod specification file ownership is set to root:root (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for kube-apiserver. All configuration is passed in as arguments at container run time. |
+| 1.1.3 | Ensure that the controller manager pod specification file permissions are set to 644 or more restrictive (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for controller-manager. All configuration is passed in as arguments at container run time. |
+| 1.1.4 | Ensure that the controller manager pod specification file ownership is set to root:root (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for controller-manager. All configuration is passed in as arguments at container run time. |
+| 1.1.5 | Ensure that the scheduler pod specification file permissions are set to 644 or more restrictive (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for scheduler. All configuration is passed in as arguments at container run time. |
+| 1.1.6 | Ensure that the scheduler pod specification file ownership is set to root:root (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for scheduler. All configuration is passed in as arguments at container run time. |
+| 1.1.7 | Ensure that the etcd pod specification file permissions are set to 644 or more restrictive (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for etcd. All configuration is passed in as arguments at container run time. |
+| 1.1.8 | Ensure that the etcd pod specification file ownership is set to root:root (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for etcd. All configuration is passed in as arguments at container run time. |
+| 1.1.13 | Ensure that the admin.conf file permissions are set to 644 or more restrictive (Automated) | Clusters provisioned by RKE does not store the kubernetes default kubeconfig credentials file on the nodes. |
+| 1.1.14 | Ensure that the admin.conf file ownership is set to root:root (Automated) | Clusters provisioned by RKE does not store the kubernetes default kubeconfig credentials file on the nodes. |
+| 1.1.15 | Ensure that the scheduler.conf file permissions are set to 644 or more restrictive (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for scheduler. All configuration is passed in as arguments at container run time. |
+| 1.1.16 | Ensure that the scheduler.conf file ownership is set to root:root (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for scheduler. All configuration is passed in as arguments at container run time. |
+| 1.1.17 | Ensure that the controller-manager.conf file permissions are set to 644 or more restrictive (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for controller-manager. All configuration is passed in as arguments at container run time. |
+| 1.1.18 | Ensure that the controller-manager.conf file ownership is set to root:root (Automated) | Clusters provisioned by RKE doesn't require or maintain a configuration file for controller-manager. All configuration is passed in as arguments at container run time. |
+| 1.3.6 | Ensure that the RotateKubeletServerCertificate argument is set to true (Automated) | Clusters provisioned by RKE handles certificate rotation directly through RKE. |
+| 4.1.1 | Ensure that the kubelet service file permissions are set to 644 or more restrictive (Automated) | Clusters provisioned by RKE doesn’t require or maintain a configuration file for the kubelet service. All configuration is passed in as arguments at container run time. |
+| 4.1.2 | Ensure that the kubelet service file ownership is set to root:root (Automated) | Clusters provisioned by RKE doesn’t require or maintain a configuration file for the kubelet service. All configuration is passed in as arguments at container run time. |
+| 4.1.9 | Ensure that the kubelet configuration file has permissions set to 644 or more restrictive (Automated) | Clusters provisioned by RKE doesn’t require or maintain a configuration file for the kubelet. All configuration is passed in as arguments at container run time. |
+| 4.1.10 | Ensure that the kubelet configuration file ownership is set to root:root (Automated) | Clusters provisioned by RKE doesn’t require or maintain a configuration file for the kubelet. All configuration is passed in as arguments at container run time. |
+| 4.2.12 | Ensure that the RotateKubeletServerCertificate argument is set to true (Automated) | Clusters provisioned by RKE handles certificate rotation directly through RKE. |
\ No newline at end of file
diff --git a/content/rancher/v2.5/en/cli/_index.md b/content/rancher/v2.5/en/cli/_index.md
index 7c1f5b96006..0413cdde5ed 100644
--- a/content/rancher/v2.5/en/cli/_index.md
+++ b/content/rancher/v2.5/en/cli/_index.md
@@ -33,7 +33,7 @@ If Rancher Server uses a self-signed certificate, Rancher CLI prompts you to con
### Project Selection
-Before you can perform any commands, you must select a Rancher project to perform those commands against. To select a [project]({{}}/rancher/v2.5/en/k8s-in-rancher/projects-and-namespaces/) to work on, use the command `./rancher context switch`. When you enter this command, a list of available projects displays. Enter a number to choose your project.
+Before you can perform any commands, you must select a Rancher project to perform those commands against. To select a [project]({{}}/rancher/v2.5/en/cluster-admin/projects-and-namespaces/) to work on, use the command `./rancher context switch`. When you enter this command, a list of available projects displays. Enter a number to choose your project.
**Example: `./rancher context switch` Output**
```
@@ -62,13 +62,13 @@ The following commands are available for use in Rancher CLI.
| `apps, [app]` | Performs operations on catalog applications (i.e. individual [Helm charts](https://docs.helm.sh/developing_charts/) or Rancher charts. |
| `catalog` | Performs operations on [catalogs]({{}}/rancher/v2.5/en/catalog/). |
| `clusters, [cluster]` | Performs operations on your [clusters]({{}}/rancher/v2.5/en/cluster-provisioning/). |
-| `context` | Switches between Rancher [projects]({{}}/rancher/v2.5/en/k8s-in-rancher/projects-and-namespaces/). For an example, see [Project Selection](#project-selection). |
-| `inspect [OPTIONS] [RESOURCEID RESOURCENAME]` | Displays details about [Kubernetes resources](https://kubernetes.io/docs/reference/kubectl/cheatsheet/#resource-types) or Rancher resources (i.e.: [projects]({{}}/rancher/v2.5/en/k8s-in-rancher/projects-and-namespaces/) and [workloads]({{}}/rancher/v2.5/en/k8s-in-rancher/workloads/)). Specify resources by name or ID. |
+| `context` | Switches between Rancher [projects]({{}}/rancher/v2.5/en/cluster-admin/projects-and-namespaces/). For an example, see [Project Selection](#project-selection). |
+| `inspect [OPTIONS] [RESOURCEID RESOURCENAME]` | Displays details about [Kubernetes resources](https://kubernetes.io/docs/reference/kubectl/cheatsheet/#resource-types) or Rancher resources (i.e.: [projects]({{}}/rancher/v2.5/en/cluster-admin/projects-and-namespaces/) and [workloads]({{}}/rancher/v2.5/en/k8s-in-rancher/workloads/)). Specify resources by name or ID. |
| `kubectl` |Runs [kubectl commands](https://kubernetes.io/docs/reference/kubectl/overview/#operations). |
| `login, [l]` | Logs into a Rancher Server. For an example, see [CLI Authentication](#cli-authentication). |
| `namespaces, [namespace]` |Performs operations on namespaces. |
| `nodes, [node]` |Performs operations on nodes. |
-| `projects, [project]` | Performs operations on [projects]({{}}/rancher/v2.5/en/k8s-in-rancher/projects-and-namespaces/). |
+| `projects, [project]` | Performs operations on [projects]({{}}/rancher/v2.5/en/cluster-admin/projects-and-namespaces/). |
| `ps` | Displays [workloads]({{}}/rancher/v2.5/en/k8s-in-rancher/workloads) in a project. |
| `settings, [setting]` | Shows the current settings for your Rancher Server. |
| `ssh` | Connects to one of your cluster nodes using the SSH protocol. |
diff --git a/content/rancher/v2.5/en/cluster-admin/_index.md b/content/rancher/v2.5/en/cluster-admin/_index.md
index 9b2c0d73d25..26a02781cbb 100644
--- a/content/rancher/v2.5/en/cluster-admin/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/_index.md
@@ -1,6 +1,8 @@
---
title: Cluster Administration
weight: 8
+aliases:
+ - /rancher/v2.x/en/cluster-admin/
---
After you provision a cluster in Rancher, you can begin using powerful Kubernetes features to deploy and scale your containerized applications in development, testing, or production environments.
@@ -36,4 +38,3 @@ Rancher contains a variety of tools that aren't included in Kubernetes to assist
- Istio Service Mesh
- OPA Gatekeeper
-For more information, see [Tools]({{}}/rancher/v2.5/en/cluster-admin/tools/)
diff --git a/content/rancher/v2.5/en/cluster-admin/backing-up-etcd/_index.md b/content/rancher/v2.5/en/cluster-admin/backing-up-etcd/_index.md
index 6494178871f..0f6be35af56 100644
--- a/content/rancher/v2.5/en/cluster-admin/backing-up-etcd/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/backing-up-etcd/_index.md
@@ -1,6 +1,8 @@
---
title: Backing up a Cluster
weight: 2045
+aliases:
+ - /rancher/v2.x/en/cluster-admin/backing-up-etcd/
---
In the Rancher UI, etcd backup and recovery for [Rancher launched Kubernetes clusters]({{}}/rancher/v2.5/en/cluster-provisioning/rke-clusters/) can be easily performed.
diff --git a/content/rancher/v2.5/en/cluster-admin/certificate-rotation/_index.md b/content/rancher/v2.5/en/cluster-admin/certificate-rotation/_index.md
index 30ed0bde851..37aa93ed56f 100644
--- a/content/rancher/v2.5/en/cluster-admin/certificate-rotation/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/certificate-rotation/_index.md
@@ -1,6 +1,8 @@
---
title: Certificate Rotation
weight: 2040
+aliases:
+ - /rancher/v2.x/en/cluster-admin/certificate-rotation/
---
> **Warning:** Rotating Kubernetes certificates may result in your cluster being temporarily unavailable as components are restarted. For production environments, it's recommended to perform this action during a maintenance window.
@@ -10,7 +12,8 @@ By default, Kubernetes clusters require certificates and Rancher launched Kubern
Certificates can be rotated for the following services:
- etcd
-- kubelet
+- kubelet (node certificate)
+- kubelet (serving certificate, if [enabled]({{}}/rke/latest/en/config-options/services/#kubelet-options))
- kube-apiserver
- kube-proxy
- kube-scheduler
diff --git a/content/rancher/v2.5/en/cluster-admin/cleaning-cluster-nodes/_index.md b/content/rancher/v2.5/en/cluster-admin/cleaning-cluster-nodes/_index.md
index 59f8087da31..00f10553515 100644
--- a/content/rancher/v2.5/en/cluster-admin/cleaning-cluster-nodes/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/cleaning-cluster-nodes/_index.md
@@ -4,6 +4,7 @@ description: Learn about cluster cleanup when removing nodes from your Rancher-l
weight: 2055
aliases:
- /rancher/v2.5/en/faq/cleaning-cluster-nodes/
+ - /rancher/v2.x/en/cluster-admin/cleaning-cluster-nodes/
---
This section describes how to disconnect a node from a Rancher-launched Kubernetes cluster and remove all of the Kubernetes components from the node. This process allows you to use the node for other purposes.
diff --git a/content/rancher/v2.5/en/cluster-admin/cloning-clusters/_index.md b/content/rancher/v2.5/en/cluster-admin/cloning-clusters/_index.md
index ea1257aa10a..78853f23b72 100644
--- a/content/rancher/v2.5/en/cluster-admin/cloning-clusters/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/cloning-clusters/_index.md
@@ -3,6 +3,7 @@ title: Cloning Clusters
weight: 2035
aliases:
- /rancher/v2.5/en/cluster-provisioning/cloning-clusters/
+ - /rancher/v2.x/en/cluster-admin/cloning-clusters/
---
If you have a cluster in Rancher that you want to use as a template for creating similar clusters, you can use Rancher CLI to clone the cluster's configuration, edit it, and then use it to quickly launch the cloned cluster.
diff --git a/content/rancher/v2.5/en/cluster-admin/cluster-access/_index.md b/content/rancher/v2.5/en/cluster-admin/cluster-access/_index.md
index 8d882c39148..5b39cd7712f 100644
--- a/content/rancher/v2.5/en/cluster-admin/cluster-access/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/cluster-access/_index.md
@@ -1,6 +1,8 @@
---
title: Cluster Access
weight: 1
+aliases:
+ - /rancher/v2.x/en/cluster-admin/cluster-access/
---
This section is about what tools can be used to access clusters managed by Rancher.
@@ -20,8 +22,8 @@ Rancher provides an intuitive user interface for interacting with your clusters.
You can use the Kubernetes command-line tool, [kubectl](https://kubernetes.io/docs/reference/kubectl/overview/), to manage your clusters. You have two options for using kubectl:
-- **Rancher kubectl shell:** Interact with your clusters by launching a kubectl shell available in the Rancher UI. This option requires no configuration actions on your part. For more information, see [Accessing Clusters with kubectl Shell]({{}}/rancher/v2.5/en/k8s-in-rancher/kubectl/).
-- **Terminal remote connection:** You can also interact with your clusters by installing [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) on your local desktop and then copying the cluster's kubeconfig file to your local `~/.kube/config` directory. For more information, see [Accessing Clusters with kubectl and a kubeconfig File](./kubectl/).
+- **Rancher kubectl shell:** Interact with your clusters by launching a kubectl shell available in the Rancher UI. This option requires no configuration actions on your part. For more information, see [Accessing Clusters with kubectl Shell]({{}}/rancher/v2.5/en/cluster-admin/cluster-access/kubectl/).
+- **Terminal remote connection:** You can also interact with your clusters by installing [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) on your local desktop and then copying the cluster's kubeconfig file to your local `~/.kube/config` directory. For more information, see [Accessing Clusters with kubectl and a kubeconfig File]({{}}/rancher/v2.5/en/cluster-admin/cluster-access/kubectl/).
### Rancher CLI
diff --git a/content/rancher/v2.5/en/cluster-admin/cluster-access/ace/_index.md b/content/rancher/v2.5/en/cluster-admin/cluster-access/ace/_index.md
index 784b69c574e..d463b7c0490 100644
--- a/content/rancher/v2.5/en/cluster-admin/cluster-access/ace/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/cluster-access/ace/_index.md
@@ -1,6 +1,8 @@
---
title: How the Authorized Cluster Endpoint Works
weight: 2015
+aliases:
+ - /rancher/v2.x/en/cluster-admin/cluster-access/ace/
---
This section describes how the kubectl CLI, the kubeconfig file, and the authorized cluster endpoint work together to allow you to access a downstream Kubernetes cluster directly, without authenticating through the Rancher server. It is intended to provide background information and context to the instructions for [how to set up kubectl to directly access a cluster.](../kubectl/#authenticating-directly-with-a-downstream-cluster)
diff --git a/content/rancher/v2.5/en/cluster-admin/cluster-access/cluster-members/_index.md b/content/rancher/v2.5/en/cluster-admin/cluster-access/cluster-members/_index.md
index 9c4bf05aea6..202c7c773b6 100644
--- a/content/rancher/v2.5/en/cluster-admin/cluster-access/cluster-members/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/cluster-access/cluster-members/_index.md
@@ -6,11 +6,12 @@ aliases:
- /rancher/v2.5/en/k8s-in-rancher/cluster-members/
- /rancher/v2.5/en/cluster-admin/cluster-members
- /rancher/v2.5/en/cluster-provisioning/cluster-members/
+ - /rancher/v2.x/en/cluster-admin/cluster-access/cluster-members/
---
If you want to provide a user with access and permissions to _all_ projects, nodes, and resources within a cluster, assign the user a cluster membership.
->**Tip:** Want to provide a user with access to a _specific_ project within a cluster? See [Adding Project Members]({{}}/rancher/v2.5/en/k8s-in-rancher/projects-and-namespaces/project-members/) instead.
+>**Tip:** Want to provide a user with access to a _specific_ project within a cluster? See [Adding Project Members]({{}}/rancher/v2.5/en/admin-settings/rbac/cluster-project-roles/) instead.
There are two contexts where you can add cluster members:
diff --git a/content/rancher/v2.5/en/cluster-admin/cluster-access/kubectl/_index.md b/content/rancher/v2.5/en/cluster-admin/cluster-access/kubectl/_index.md
index d4a2e08f1ec..5b78038e540 100644
--- a/content/rancher/v2.5/en/cluster-admin/cluster-access/kubectl/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/cluster-access/kubectl/_index.md
@@ -8,6 +8,7 @@ aliases:
- /rancher/v2.5/en/concepts/clusters/kubeconfig-files/
- /rancher/v2.5/en/k8s-in-rancher/kubeconfig/
- /rancher/2.x/en/cluster-admin/kubeconfig
+ - /rancher/v2.x/en/cluster-admin/cluster-access/kubectl/
---
This section describes how to manipulate your downstream Kubernetes cluster with kubectl from the Rancher UI or from your workstation.
diff --git a/content/rancher/v2.5/en/cluster-admin/cluster-autoscaler/_index.md b/content/rancher/v2.5/en/cluster-admin/cluster-autoscaler/_index.md
index 4c5cc1dc623..77a6f820137 100644
--- a/content/rancher/v2.5/en/cluster-admin/cluster-autoscaler/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/cluster-autoscaler/_index.md
@@ -1,6 +1,8 @@
---
title: Cluster Autoscaler
weight: 1
+aliases:
+ - /rancher/v2.x/en/cluster-admin/cluster-autoscaler/
---
In this section, you'll learn how to install and use the [Kubernetes cluster-autoscaler](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/) on Rancher custom clusters using AWS EC2 Auto Scaling Groups.
diff --git a/content/rancher/v2.5/en/cluster-admin/cluster-autoscaler/amazon/_index.md b/content/rancher/v2.5/en/cluster-admin/cluster-autoscaler/amazon/_index.md
index 86eb6e4e3e4..940ea548823 100644
--- a/content/rancher/v2.5/en/cluster-admin/cluster-autoscaler/amazon/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/cluster-autoscaler/amazon/_index.md
@@ -1,6 +1,8 @@
---
title: Cluster Autoscaler with AWS EC2 Auto Scaling Groups
weight: 1
+aliases:
+ - /rancher/v2.x/en/cluster-admin/cluster-autoscaler/amazon/
---
This guide will show you how to install and use [Kubernetes cluster-autoscaler](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/) on Rancher custom clusters using AWS EC2 Auto Scaling Groups.
diff --git a/content/rancher/v2.5/en/cluster-admin/editing-clusters/_index.md b/content/rancher/v2.5/en/cluster-admin/editing-clusters/_index.md
index 68996a69b8c..e98acf0367d 100644
--- a/content/rancher/v2.5/en/cluster-admin/editing-clusters/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/editing-clusters/_index.md
@@ -3,6 +3,7 @@ title: Cluster Configuration
weight: 2025
aliases:
- /rancher/v2.5/en/k8s-in-rancher/editing-clusters
+ - /rancher/v2.x/en/cluster-admin/editing-clusters/
---
After you provision a Kubernetes cluster using Rancher, you can still edit options and settings for the cluster.
diff --git a/content/rancher/v2.5/en/cluster-admin/editing-clusters/eks-config-reference/_index.md b/content/rancher/v2.5/en/cluster-admin/editing-clusters/eks-config-reference/_index.md
index 9fa6ea0ce89..0ea3ab8ad80 100644
--- a/content/rancher/v2.5/en/cluster-admin/editing-clusters/eks-config-reference/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/editing-clusters/eks-config-reference/_index.md
@@ -16,7 +16,7 @@ Complete each drop-down and field using the information obtained for your IAM po
| Setting | Description |
| ---------- | -------------------------------------------------------------------------------------------------------------------- |
| Region | From the drop-down choose the geographical region in which to build your cluster. |
-| Cloud Credentials | Select the cloud credentials that you created for your IAM policy. For more information on creating cloud credentials in Rancher, refer to [this page.]({{}}/rancher/v2.x/en/user-settings/cloud-credentials/) |
+| Cloud Credentials | Select the cloud credentials that you created for your IAM policy. For more information on creating cloud credentials in Rancher, refer to [this page.]({{}}/rancher/v2.5/en/user-settings/cloud-credentials/) |
### Service Role
@@ -148,7 +148,7 @@ The following settings are also configurable. All of these except for the "Node
| Desired ASG Size | The desired number of instances. |
| Maximum ASG Size | The maximum number of instances. This setting won't take effect until the [Cluster Autoscaler](https://docs.aws.amazon.com/eks/latest/userguide/cluster-autoscaler.html) is installed. |
| Minimum ASG Size | The minimum number of instances. This setting won't take effect until the [Cluster Autoscaler](https://docs.aws.amazon.com/eks/latest/userguide/cluster-autoscaler.html) is installed. |
-| Labels | Kubernetes labels applied to the nodes in the managed node group. |
+| Labels | Kubernetes labels applied to the nodes in the managed node group. Note: Invalid labels can prevent upgrades or can prevent Rancher from starting. For details on label syntax requirements, see the [Kubernetes documentation.](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set) |
| Tags | These are tags for the managed node group and do not propagate to any of the associated resources. |
@@ -186,7 +186,7 @@ Complete each drop-down and field using the information obtained for your IAM po
| Setting | Description |
| ---------- | -------------------------------------------------------------------------------------------------------------------- |
| Region | From the drop-down choose the geographical region in which to build your cluster. |
-| Cloud Credentials | Select the cloud credentials that you created for your IAM policy. For more information on creating cloud credentials in Rancher, refer to [this page.]({{}}/rancher/v2.x/en/user-settings/cloud-credentials/) |
+| Cloud Credentials | Select the cloud credentials that you created for your IAM policy. For more information on creating cloud credentials in Rancher, refer to [this page.]({{}}/rancher/v2.5/en/user-settings/cloud-credentials/) |
### Service Role
diff --git a/content/rancher/v2.5/en/cluster-admin/editing-clusters/gke-config-reference/_index.md b/content/rancher/v2.5/en/cluster-admin/editing-clusters/gke-config-reference/_index.md
index 1cfdcc31a3b..67b0c603600 100644
--- a/content/rancher/v2.5/en/cluster-admin/editing-clusters/gke-config-reference/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/editing-clusters/gke-config-reference/_index.md
@@ -5,7 +5,7 @@ weight: 3
---
{{% tabs %}}
-{{% tab "v2.5.8" %}}
+{{% tab "Rancher v2.5.8+" %}}
# Changes in v2.5.8
@@ -34,70 +34,102 @@ weight: 3
### Kubernetes Version
+_Mutable: yes_
+
For more information on GKE Kubernetes versions, refer to [these docs.](https://cloud.google.com/kubernetes-engine/versioning)
### Container Address Range
+_Mutable: no_
+
The IP address range for pods in the cluster. Must be a valid CIDR range, e.g. 10.42.0.0/16. If not specified, a random range is automatically chosen from 10.0.0.0/8 and will exclude ranges already allocated to VMs, other clusters, or routes. Automatically chosen ranges may conflict with reserved IP addresses, dynamic routes, or routes within VPCs peering with the cluster.
### Network
+_Mutable: no_
+
The Compute Engine Network that the cluster connects to. Routes and firewalls will be created using this network. If using [Shared VPCs](https://cloud.google.com/vpc/docs/shared-vpc), the VPC networks that are shared to your project will appear here. will be available to select in this field. For more information, refer to [this page](https://cloud.google.com/vpc/docs/vpc#vpc_networks_and_subnets).
### Node Subnet / Subnet
+_Mutable: no_
+
The Compute Engine subnetwork that the cluster connects to. This subnetwork must belong to the network specified in the **Network** field. Select an existing subnetwork, or select "Auto Create Subnetwork" to have one automatically created. If not using an existing network, **Subnetwork Name** is required to generate one. If using [Shared VPCs](https://cloud.google.com/vpc/docs/shared-vpc), the VPC subnets that are shared to your project will appear here. If using a Shared VPC network, you cannot select "Auto Create Subnetwork". For more information, refer to [this page.](https://cloud.google.com/vpc/docs/vpc#vpc_networks_and_subnets)
### Subnetwork Name
+_Mutable: no_
+
Automatically create a subnetwork with the provided name. Required if "Auto Create Subnetwork" is selected for **Node Subnet** or **Subnet**. For more information on subnetworks, refer to [this page.](https://cloud.google.com/vpc/docs/vpc#vpc_networks_and_subnets)
### Ip Aliases
+_Mutable: no_
+
Enable [alias IPs](https://cloud.google.com/vpc/docs/alias-ip). This enables VPC-native traffic routing. Required if using [Shared VPCs](https://cloud.google.com/vpc/docs/shared-vpc).
### Network Policy
+_Mutable: yes_
+
Enable network policy enforcement on the cluster. A network policy defines the level of communication that can occur between pods and services in the cluster. For more information, refer to [this page.](https://cloud.google.com/kubernetes-engine/docs/how-to/network-policy)
### Node Ipv4 CIDR Block
+_Mutable: no_
+
The IP address range of the instance IPs in this cluster. Can be set if "Auto Create Subnetwork" is selected for **Node Subnet** or **Subnet**. Must be a valid CIDR range, e.g. 10.96.0.0/14. For more information on how to determine the IP address range, refer to [this page.](https://cloud.google.com/kubernetes-engine/docs/concepts/alias-ips#cluster_sizing)
### Cluster Secondary Range Name
+_Mutable: no_
+
The name of an existing secondary range for Pod IP addresses. If selected, **Cluster Pod Address Range** will automatically be populated. Required if using a Shared VPC network.
### Cluster Pod Address Range
+_Mutable: no_
+
The IP address range assigned to pods in the cluster. Must be a valid CIDR range, e.g. 10.96.0.0/11. If not provided, will be created automatically. Must be provided if using a Shared VPC network. For more information on how to determine the IP address range for your pods, refer to [this section.](https://cloud.google.com/kubernetes-engine/docs/concepts/alias-ips#cluster_sizing_secondary_range_pods)
### Services Secondary Range Name
+_Mutable: no_
+
The name of an existing secondary range for service IP addresses. If selected, **Service Address Range** will be automatically populated. Required if using a Shared VPC network.
### Service Address Range
+_Mutable: no_
+
The address range assigned to the services in the cluster. Must be a valid CIDR range, e.g. 10.94.0.0/18. If not provided, will be created automatically. Must be provided if using a Shared VPC network. For more information on how to determine the IP address range for your services, refer to [this section.](https://cloud.google.com/kubernetes-engine/docs/concepts/alias-ips#cluster_sizing_secondary_range_svcs)
### Private Cluster
-> Warning: private clusters require additional planning and configuration outside of Rancher. Refer to the [private cluster guide]({{< baseurl >}}/rancher/v2.5/en/cluster-provisioning/hosted-kubernetes-clusters/gke/private-clusters/).
+_Mutable: no_
+
+> Warning: private clusters require additional planning and configuration outside of Rancher. Refer to the [private cluster guide]({{}}/rancher/v2.5/en/cluster-admin/editing-clusters/gke-config-reference/private-clusters/).
Assign nodes only internal IP addresses. Private cluster nodes cannot access the public internet unless additional networking steps are taken in GCP.
### Enable Private Endpoint
-> Warning: private clusters require additional planning and configuration outside of Rancher. Refer to the [private cluster guide]({{< baseurl >}}/rancher/v2.5/en/cluster-provisioning/hosted-kubernetes-clusters/gke/#private-clusters).
+> Warning: private clusters require additional planning and configuration outside of Rancher. Refer to the [private cluster guide]({{}}/rancher/v2.5/en/cluster-admin/editing-clusters/gke-config-reference/private-clusters/).
+
+_Mutable: no_
Locks down external access to the control plane endpoint. Only available if **Private Cluster** is also selected. If selected, and if Rancher does not have direct access to the Virtual Private Cloud network the cluster is running in, Rancher will provide a registration command to run on the cluster to enable Rancher to connect to it.
### Master IPV4 CIDR Block
+_Mutable: no_
+
The IP range for the control plane VPC.
### Master Authorized Network
+_Mutable: yes_
+
Enable control plane authorized networks to block untrusted non-GCP source IPs from accessing the Kubernetes master through HTTPS. If selected, additional authorized networks may be added. If the cluster is created with a public endpoint, this option is useful for locking down access to the public endpoint to only certain networks, such as the network where your Rancher service is running. If the cluster only has a private endpoint, this setting is required.
# Additional Options
@@ -108,31 +140,45 @@ Additional Kubernetes cluster components. For more information, refer to [this p
#### Horizontal Pod Autoscaling
+_Mutable: yes_
+
The Horizontal Pod Autoscaler changes the shape of your Kubernetes workload by automatically increasing or decreasing the number of Pods in response to the workload's CPU or memory consumption, or in response to custom metrics reported from within Kubernetes or external metrics from sources outside of your cluster. For more information, see [this page.](https://cloud.google.com/kubernetes-engine/docs/concepts/horizontalpodautoscaler)
#### HTTP (L7) Load Balancing
+_Mutable: yes_
+
HTTP (L7) Load Balancing distributes HTTP and HTTPS traffic to backends hosted on GKE. For more information, refer to [this page.](https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer)
#### Network Policy Config (master only)
+_Mutable: yes_
+
Configuration for NetworkPolicy. This only tracks whether the addon is enabled or not on the master, it does not track whether network policy is enabled for the nodes.
### Cluster Features (Alpha Features)
+_Mutable: no_
+
Turns on all Kubernetes alpha API groups and features for the cluster. When enabled, the cluster cannot be upgraded and will be deleted automatically after 30 days. Alpha clusters are not recommended for production use as they are not covered by the GKE SLA. For more information, refer to [this page.](https://cloud.google.com/kubernetes-engine/docs/concepts/alpha-clusters)
### Logging Service
+_Mutable: yes_
+
The logging service the cluster uses to write logs. Use either [Cloud Logging](https://cloud.google.com/logging) or no logging service in which case no logs are exported from the cluster.
### Monitoring Service
+_Mutable: yes_
+
The monitoring service the cluster uses to write metrics. Use either [Cloud Monitoring](https://cloud.google.com/monitoring) or monitoring service in which case no metrics are exported from the cluster.
### Maintenance Window
+_Mutable: yes_
+
Set the start time for a 4 hour maintenance window. The time is specified in the UTC time zone using the HH:MM format. For more information, refer to [this page.](https://cloud.google.com/kubernetes-engine/docs/concepts/maintenance-windows-and-exclusions)
# Node Pools
@@ -141,10 +187,14 @@ In this section, enter details describing the configuration of each node in the
### Kubernetes Version
+_Mutable: yes_
+
The Kubernetes version for each node in the node pool. For more information on GKE Kubernetes versions, refer to [these docs.](https://cloud.google.com/kubernetes-engine/versioning)
### Image Type
+_Mutable: yes_
+
The node operating system image. For more information for the node image options that GKE offers for each OS, refer to [this page.](https://cloud.google.com/kubernetes-engine/docs/concepts/node-images#available_node_images)
> Note: the default option is "Container-Optimized OS with Docker". The read-only filesystem on GCP's Container-Optimized OS is not compatible with the [legacy logging]({{}}/rancher/v2.0-v2.4/en/cluster-admin/tools/logging) implementation in Rancher. If you need to use the legacy logging feature, select "Ubuntu with Docker" or "Ubuntu with Containerd". The [logging feature as of v2.5]({{}}/rancher/v2.5/en/logging) is compatible with the Container-Optimized OS image.
@@ -153,28 +203,41 @@ The node operating system image. For more information for the node image options
### Machine Type
+_Mutable: no_
+
The virtualized hardware resources available to node instances. For more information on Google Cloud machine types, refer to [this page.](https://cloud.google.com/compute/docs/machine-types#machine_types)
### Root Disk Type
+_Mutable: no_
+
Standard persistent disks are backed by standard hard disk drives (HDD), while SSD persistent disks are backed by solid state drives (SSD). For more information, refer to [this section.](https://cloud.google.com/compute/docs/disks)
### Local SSD Disks
+_Mutable: no_
+
Configure each node's local SSD disk storage in GB. Local SSDs are physically attached to the server that hosts your VM instance. Local SSDs have higher throughput and lower latency than standard persistent disks or SSD persistent disks. The data that you store on a local SSD persists only until the instance is stopped or deleted. For more information, see [this section.](https://cloud.google.com/compute/docs/disks#localssds)
### Preemptible nodes (beta)
+_Mutable: no_
+
Preemptible nodes, also called preemptible VMs, are Compute Engine VM instances that last a maximum of 24 hours in general, and provide no availability guarantees. For more information, see [this page.](https://cloud.google.com/kubernetes-engine/docs/how-to/preemptible-vms)
### Taints
+_Mutable: no_
+
When you apply a taint to a node, only Pods that tolerate the taint are allowed to run on the node. In a GKE cluster, you can apply a taint to a node pool, which applies the taint to all nodes in the pool.
### Node Labels
+_Mutable: no_
+
You can apply labels to the node pool, which applies the labels to all nodes in the pool.
+Invalid labels can prevent upgrades or can prevent Rancher from starting. For details on label syntax requirements, see the [Kubernetes documentation.](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set)
# Group Details
@@ -182,30 +245,44 @@ In this section, enter details describing the node pool.
### Name
+_Mutable: no_
+
Enter a name for the node pool.
### Initial Node Count
+_Mutable: yes_
+
Integer for the starting number of nodes in the node pool.
### Max Pod Per Node
+_Mutable: no_
+
GKE has a hard limit of 110 Pods per node. For more information on the Kubernetes limits, see [this section.](https://cloud.google.com/kubernetes-engine/docs/best-practices/scalability#dimension_limits)
### Autoscaling
+_Mutable: yes_
+
Node pool autoscaling dynamically creates or deletes nodes based on the demands of your workload. For more information, see [this page.](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-autoscaler)
### Auto Repair
+_Mutable: yes_
+
GKE's node auto-repair feature helps you keep the nodes in your cluster in a healthy, running state. When enabled, GKE makes periodic checks on the health state of each node in your cluster. If a node fails consecutive health checks over an extended time period, GKE initiates a repair process for that node. For more information, see the section on [auto-repairing nodes.](https://cloud.google.com/kubernetes-engine/docs/how-to/node-auto-repair)
### Auto Upgrade
+_Mutable: yes_
+
When enabled, the auto-upgrade feature keeps the nodes in your cluster up-to-date with the cluster control plane (master) version when your control plane is [updated on your behalf.](https://cloud.google.com/kubernetes-engine/upgrades#automatic_cp_upgrades) For more information about auto-upgrading nodes, see [this page.](https://cloud.google.com/kubernetes-engine/docs/how-to/node-auto-upgrades)
### Access Scopes
+_Mutable: no_
+
Access scopes are the legacy method of specifying permissions for your nodes.
- **Allow default access:** The default access for new clusters is the [Compute Engine default service account.](https://cloud.google.com/compute/docs/access/service-accounts?hl=en_US#default_service_account)
@@ -233,6 +310,8 @@ The shorter the refresh window, the less likely any race conditions will occur,
Add Kubernetes [labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/) or [annotations](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/) to the cluster.
+Invalid labels can prevent upgrades or can prevent Rancher from starting. For details on label syntax requirements, see the [Kubernetes documentation.](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set)
+
# Kubernetes Options
### Location Type
@@ -353,6 +432,8 @@ When you apply a taint to a node, only Pods that tolerate the taint are allowed
### Node Labels
You can apply labels to the node pool, which applies the labels to all nodes in the pool.
+Invalid labels can prevent upgrades or can prevent Rancher from starting. For details on label syntax requirements, see the [Kubernetes documentation.](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set)
+
## Security Options
### Service Account
diff --git a/content/rancher/v2.5/en/cluster-admin/editing-clusters/gke-config-reference/private-clusters/_index.md b/content/rancher/v2.5/en/cluster-admin/editing-clusters/gke-config-reference/private-clusters/_index.md
index d66fdb087bd..9de7dbf3c1d 100644
--- a/content/rancher/v2.5/en/cluster-admin/editing-clusters/gke-config-reference/private-clusters/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/editing-clusters/gke-config-reference/private-clusters/_index.md
@@ -25,7 +25,7 @@ If restricting outgoing internet access is not a concern for your organization,
>**Note**
>This scenario is not officially supported, but is described for cases in which using the Cloud NAT service is not sufficient.
-If restricting both incoming and outgoing traffic to nodes is a requirement, follow the air-gapped installation instructions to set up a private container image [registry](https://rancher.com/docs/rancher/v2.x/en/installation/other-installation-methods/air-gap/) on the VPC where the cluster is going to be, allowing the cluster nodes to access and download the images they need to run the cluster agent. If the control plane endpoint is also private, Rancher will need [direct access](#direct-access) to it.
+If restricting both incoming and outgoing traffic to nodes is a requirement, follow the air-gapped installation instructions to set up a private container image [registry](https://rancher.com/docs/rancher/v2.5/en/installation/other-installation-methods/air-gap/) on the VPC where the cluster is going to be, allowing the cluster nodes to access and download the images they need to run the cluster agent. If the control plane endpoint is also private, Rancher will need [direct access](#direct-access) to it.
### Private Control Plane Endpoint
diff --git a/content/rancher/v2.5/en/cluster-admin/nodes/_index.md b/content/rancher/v2.5/en/cluster-admin/nodes/_index.md
index ca88ce4ab49..af48e6fa950 100644
--- a/content/rancher/v2.5/en/cluster-admin/nodes/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/nodes/_index.md
@@ -1,6 +1,8 @@
---
title: Nodes and Node Pools
weight: 2030
+aliases:
+ - /rancher/v2.x/en/cluster-admin/nodes/
---
After you launch a Kubernetes cluster in Rancher, you can manage individual nodes from the cluster's **Node** tab. Depending on the [option used]({{}}/rancher/v2.5/en/cluster-provisioning/) to provision the cluster, there are different node options available.
@@ -40,11 +42,11 @@ The following table lists which node options are available for each type of clus
| [Download Keys](#ssh-into-a-node-hosted-by-an-infrastructure-provider) | ✓ | | | | | Download SSH key in order to SSH into the node. |
| [Node Scaling](#scaling-nodes) | ✓ | | | ✓ | | Scale the number of nodes in the node pool up or down. |
-[1]: {{}}/rancher/v2.x/en/cluster-provisioning/rke-clusters/node-pools/
-[2]: {{}}/rancher/v2.x/en/cluster-provisioning/rke-clusters/custom-nodes/
-[3]: {{}}/rancher/v2.x/en/cluster-provisioning/hosted-kubernetes-clusters/
-[4]: {{}}/rancher/v2.x/en/cluster-provisioning/registered-clusters/
-[5]: {{}}/rancher/v2.x/en/cluster-provisioning/registered-clusters/
+[1]: {{}}/rancher/v2.5/en/cluster-provisioning/rke-clusters/node-pools/
+[2]: {{}}/rancher/v2.5/en/cluster-provisioning/rke-clusters/custom-nodes/
+[3]: {{}}/rancher/v2.5/en/cluster-provisioning/hosted-kubernetes-clusters/
+[4]: {{}}/rancher/v2.5/en/cluster-provisioning/registered-clusters/
+[5]: {{}}/rancher/v2.5/en/cluster-provisioning/registered-clusters/
\* Delete option accessible via View API
@@ -175,19 +177,6 @@ You can label nodes to be ignored by using a setting in the Rancher UI, or by us
> **Note:** There is an [open issue](https://github.com/rancher/rancher/issues/24172) in which nodes labeled to be ignored can get stuck in an updating state.
-### Labeling Nodes to be Ignored with the Rancher UI
-
-To add a node that is ignored by Rancher,
-
-1. From the **Global** view, click the **Settings** tab.
-1. Go to the `ignore-node-name` setting and click **⋮ > Edit.**
-1. Enter a name that Rancher will use to ignore nodes. All nodes with this name will be ignored.
-1. Click **Save.**
-
-**Result:** Rancher will not wait to register nodes with this name. In the UI, the node will displayed with a grayed-out status. The node is still part of the cluster and can be listed with `kubectl`.
-
-If the setting is changed afterward, the ignored nodes will continue to be hidden.
-
### Labeling Nodes to be Ignored with kubectl
To add a node that will be ignored by Rancher, use `kubectl` to create a node that has the following label:
@@ -202,4 +191,4 @@ If the label is added before the node is added to the cluster, the node will not
If the label is added after the node is added to a Rancher cluster, the node will not be removed from the UI.
-If you delete the node from the Rancher server using the Rancher UI or API, the node will not be removed from the cluster if the `nodeName` is listed in the Rancher settings under `ignore-node-name`.
+If you delete the node from the Rancher server using the Rancher UI or API, the node will not be removed from the cluster if the `nodeName` is listed in the Rancher settings in the Rancher API under `v3/settings/ignore-node-name`.
\ No newline at end of file
diff --git a/content/rancher/v2.5/en/cluster-admin/pod-security-policy/_index.md b/content/rancher/v2.5/en/cluster-admin/pod-security-policy/_index.md
index d902a84955c..3614a7b6e9a 100644
--- a/content/rancher/v2.5/en/cluster-admin/pod-security-policy/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/pod-security-policy/_index.md
@@ -1,6 +1,8 @@
---
title: Adding a Pod Security Policy
weight: 80
+aliases:
+ - /rancher/v2.x/en/cluster-admin/pod-security-policy/
---
> **Prerequisite:** The options below are available only for clusters that are [launched using RKE.]({{}}/rancher/v2.5/en/cluster-provisioning/rke-clusters/)
diff --git a/content/rancher/v2.5/en/cluster-admin/projects-and-namespaces/_index.md b/content/rancher/v2.5/en/cluster-admin/projects-and-namespaces/_index.md
index b495d62f208..493331bc93c 100644
--- a/content/rancher/v2.5/en/cluster-admin/projects-and-namespaces/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/projects-and-namespaces/_index.md
@@ -6,7 +6,8 @@ aliases:
- /rancher/v2.5/en/concepts/projects/
- /rancher/v2.5/en/tasks/projects/
- /rancher/v2.5/en/tasks/projects/create-project/
- - /rancher/v2.5/en/tasks/projects/create-project/
+ - /rancher/v2.5/en/tasks/projects/create-project/
+ - /rancher/v2.x/en/cluster-admin/projects-and-namespaces/
---
A namespace is a Kubernetes concept that allows a virtual cluster within a cluster, which is useful for dividing the cluster into separate "virtual clusters" that each have their own access control and resource quotas.
@@ -42,7 +43,7 @@ You can assign the following resources directly to namespaces:
- [Workloads]({{}}/rancher/v2.5/en/k8s-in-rancher/workloads/)
- [Load Balancers/Ingress]({{}}/rancher/v2.5/en/k8s-in-rancher/load-balancers-and-ingress/)
- [Service Discovery Records]({{}}/rancher/v2.5/en/k8s-in-rancher/service-discovery/)
-- [Persistent Volume Claims]({{}}/rancher/v2.5/en/k8s-in-rancher/volumes-and-storage/persistent-volume-claims/)
+- [Persistent Volume Claims]({{}}/rancher/v2.5/en/cluster-admin/volumes-and-storage/)
- [Certificates]({{}}/rancher/v2.5/en/k8s-in-rancher/certificates/)
- [ConfigMaps]({{}}/rancher/v2.5/en/k8s-in-rancher/configmaps/)
- [Registries]({{}}/rancher/v2.5/en/k8s-in-rancher/registries/)
@@ -75,7 +76,7 @@ In the base version of Kubernetes, features like role-based access rights or clu
You can use projects to perform actions such as:
-- Assign users to a group of namespaces (i.e., [project membership]({{}}/rancher/v2.5/en/k8s-in-rancher/projects-and-namespaces/project-members)).
+- Assign users to a group of namespaces (i.e., [project membership]({{}}/rancher/v2.5/en/cluster-admin/projects-and-namespaces/project-members)).
- Assign users specific roles in a project. A role can be owner, member, read-only, or [custom]({{}}/rancher/v2.5/en/admin-settings/rbac/default-custom-roles/).
- Assign resources to the project.
- Assign Pod Security Policies.
@@ -155,6 +156,9 @@ By default, your user is added as the project `Owner`.
>**Notes on Permissions:**
>
>- Users assigned the `Owner` or `Member` role for a project automatically inherit the `namespace creation` role. However, this role is a [Kubernetes ClusterRole](https://kubernetes.io/docs/reference/access-authn-authz/rbac/#role-and-clusterrole), meaning its scope extends to all projects in the cluster. Therefore, users explicitly assigned the `Owner` or `Member` role for a project can create namespaces in other projects they're assigned to, even with only the `Read Only` role assigned.
+>
+>- By default, the Rancher role of `project-member` inherits from the `Kubernetes-edit` role, and the `project-owner` role inherits from the `Kubernetes-admin` role. As such, both `project-member` and `project-owner` roles will allow for namespace management, including the ability to create and delete namespaces.
+>
>- Choose `Custom` to create a custom role on the fly: [Custom Project Roles]({{}}/rancher/v2.5/en/admin-settings/rbac/cluster-project-roles/#custom-project-roles).
To add members:
@@ -165,12 +169,12 @@ To add members:
### 4. Optional: Add Resource Quotas
-Resource quotas limit the resources that a project (and its namespaces) can consume. For more information, see [Resource Quotas]({{}}/rancher/v2.5/en/k8s-in-rancher/projects-and-namespaces/resource-quotas).
+Resource quotas limit the resources that a project (and its namespaces) can consume. For more information, see [Resource Quotas]({{}}/rancher/v2.5/en/cluster-admin/projects-and-namespaces/resource-quotas).
To add a resource quota,
1. Click **Add Quota**.
-1. Select a Resource Type. For more information, see [Resource Quotas.]({{}}/rancher/v2.5/en/k8s-in-rancher/projects-and-namespaces/resource-quotas/).
+1. Select a Resource Type. For more information, see [Resource Quotas.]({{}}/rancher/v2.5/en/cluster-admin/projects-and-namespaces/resource-quotas/).
1. Enter values for the **Project Limit** and the **Namespace Default Limit**.
1. **Optional:** Specify **Container Default Resource Limit**, which will be applied to every container started in the project. The parameter is recommended if you have CPU or Memory limits set by the Resource Quota. It can be overridden on per an individual namespace or a container level. For more information, see [Container Default Resource Limit]({{}}/rancher/v2.5/en/project-admin/resource-quotas/)
1. Click **Create**.
diff --git a/content/rancher/v2.5/en/cluster-admin/restoring-etcd/_index.md b/content/rancher/v2.5/en/cluster-admin/restoring-etcd/_index.md
index 03560c17b5f..9cc546c05a9 100644
--- a/content/rancher/v2.5/en/cluster-admin/restoring-etcd/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/restoring-etcd/_index.md
@@ -1,6 +1,8 @@
---
title: Restoring a Cluster from Backup
weight: 2050
+aliases:
+ - /rancher/v2.x/en/cluster-admin/restoring-etcd/
---
etcd backup and recovery for [Rancher launched Kubernetes clusters]({{}}/rancher/v2.5/en/cluster-provisioning/rke-clusters/) can be easily performed. Snapshots of the etcd database are taken and saved either locally onto the etcd nodes or to a S3 compatible target. The advantages of configuring S3 is that if all etcd nodes are lost, your snapshot is saved remotely and can be used to restore the cluster.
diff --git a/content/rancher/v2.5/en/cluster-admin/tools/_index.md b/content/rancher/v2.5/en/cluster-admin/tools/_index.md
index 7438d3b9439..39835e7e070 100644
--- a/content/rancher/v2.5/en/cluster-admin/tools/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/tools/_index.md
@@ -3,6 +3,7 @@ title: Tools for Logging, Monitoring, and Visibility
weight: 2033
aliases:
- /rancher/v2.5/en/tools/notifiers-and-alerts/
+ - /rancher/v2.x/en/cluster-admin/tools/
---
Rancher contains a variety of tools that aren't included in Kubernetes to assist in your DevOps operations. Rancher can integrate with external services to help your clusters run more efficiently. Tools are divided into following categories:
diff --git a/content/rancher/v2.5/en/cluster-admin/upgrading-kubernetes/_index.md b/content/rancher/v2.5/en/cluster-admin/upgrading-kubernetes/_index.md
index 3c89e2a612d..8bc7af3ef14 100644
--- a/content/rancher/v2.5/en/cluster-admin/upgrading-kubernetes/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/upgrading-kubernetes/_index.md
@@ -1,6 +1,8 @@
---
title: Upgrading and Rolling Back Kubernetes
weight: 70
+aliases:
+ - /rancher/v2.x/en/cluster-admin/upgrading-kubernetes/
---
Following an upgrade to the latest version of Rancher, downstream Kubernetes clusters can be upgraded to use the latest supported version of Kubernetes.
@@ -24,7 +26,7 @@ This section covers the following topics:
# Tested Kubernetes Versions
-Before a new version of Rancher is released, it's tested with the latest minor versions of Kubernetes to ensure compatibility. For example, Rancher v2.3.0 is was tested with Kubernetes v1.15.4, v1.14.7, and v1.13.11. For details on which versions of Kubernetes were tested on each Rancher version, refer to the [support maintenance terms.](https://rancher.com/support-maintenance-terms/all-supported-versions/rancher-v2.3.0/)
+Before a new version of Rancher is released, it's tested with the latest minor versions of Kubernetes to ensure compatibility. For details on which versions of Kubernetes were tested on each Rancher version, refer to the [support maintenance terms.](https://rancher.com/support-maintenance-terms/all-supported-versions/rancher-v2.5.9/)
# How Upgrades Work
diff --git a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/_index.md b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/_index.md
index ad6328fbaac..18273041b14 100644
--- a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/_index.md
@@ -5,6 +5,7 @@ weight: 2031
aliases:
- /rancher/v2.5/en/tasks/clusters/adding-storage/
- /rancher/v2.5/en/cluster-admin/volumes-and-storage/persistent-volume-claims/
+ - /rancher/v2.x/en/cluster-admin/volumes-and-storage/
---
When deploying an application that needs to retain data, you'll need to create persistent storage. Persistent storage allows you to store application data external from the pod running your application. This storage practice allows you to maintain application data, even if the application's pod fails.
diff --git a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/attaching-existing-storage/_index.md b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/attaching-existing-storage/_index.md
index 4d1ebf61624..619c89baec9 100644
--- a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/attaching-existing-storage/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/attaching-existing-storage/_index.md
@@ -3,6 +3,7 @@ title: Setting up Existing Storage
weight: 1
aliases:
- /rancher/v2.5/en/k8s-in-rancher/volumes-and-storage/persistent-volume-claims/
+ - /rancher/v2.x/en/cluster-admin/volumes-and-storage/attaching-existing-storage/
---
This section describes how to set up existing persistent storage for workloads in Rancher.
diff --git a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/ceph/_index.md b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/ceph/_index.md
index fbc7451b5d2..43d9327a6a7 100644
--- a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/ceph/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/ceph/_index.md
@@ -1,6 +1,8 @@
---
title: Using an External Ceph Driver
weight: 10
+aliases:
+ - /rancher/v2.x/en/cluster-admin/volumes-and-storage/ceph/
---
These instructions are about using the external Ceph driver in an RKE2 cluster. If you are using RKE, additional steps are required. For details, refer to [this section.](#using-the-ceph-driver-with-rke)
diff --git a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/_index.md b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/_index.md
index 339efbf1244..5227586f10f 100644
--- a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/_index.md
@@ -4,6 +4,7 @@ weight: 3053
aliases:
- /rancher/v2.5/en/tasks/clusters/adding-storage/provisioning-storage/
- /rancher/v2.5/en/k8s-in-rancher/volumes-and-storage/examples/
+ - /rancher/v2.x/en/cluster-admin/volumes-and-storage/examples/
---
Rancher supports persistent storage with a variety of volume plugins. However, before you use any of these plugins to bind persistent storage to your workloads, you have to configure the storage itself, whether its a cloud-based solution from a service-provider or an on-prem solution that you manage yourself.
diff --git a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/ebs/_index.md b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/ebs/_index.md
index 22ecb6d7258..3a33a7369e8 100644
--- a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/ebs/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/ebs/_index.md
@@ -1,6 +1,8 @@
---
title: Creating Persistent Storage in Amazon's EBS
weight: 3053
+aliases:
+ - /rancher/v2.x/en/cluster-admin/volumes-and-storage/examples/ebs/
---
This section describes how to set up Amazon's Elastic Block Store in EC2.
diff --git a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/nfs/_index.md b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/nfs/_index.md
index 608b5f56979..395c2b516bd 100644
--- a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/nfs/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/nfs/_index.md
@@ -3,6 +3,7 @@ title: NFS Storage
weight: 3054
aliases:
- /rancher/v2.5/en/tasks/clusters/adding-storage/provisioning-storage/nfs/
+ - /rancher/v2.x/en/cluster-admin/volumes-and-storage/examples/nfs/
---
Before you can use the NFS storage volume plug-in with Rancher deployments, you need to provision an NFS server.
diff --git a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/vsphere/_index.md b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/vsphere/_index.md
index cf7375dc2ad..8893877c3f7 100644
--- a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/vsphere/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/examples/vsphere/_index.md
@@ -3,9 +3,10 @@ title: vSphere Storage
weight: 3055
aliases:
- /rancher/v2.5/en/tasks/clusters/adding-storage/provisioning-storage/vsphere/
+ - /rancher/v2.x/en/cluster-admin/volumes-and-storage/examples/vsphere/
---
-To provide stateful workloads with vSphere storage, we recommend creating a vSphereVolume StorageClass. This practice dynamically provisions vSphere storage when workloads request volumes through a [persistent volume claim]({{}}/rancher/v2.5/en/k8s-in-rancher/volumes-and-storage/persistent-volume-claims/).
+To provide stateful workloads with vSphere storage, we recommend creating a vSphereVolume StorageClass. This practice dynamically provisions vSphere storage when workloads request volumes through a persistent volume claim.
In order to dynamically provision storage in vSphere, the vSphere provider must be [enabled.]({{}}/rancher/v2.5/en/cluster-provisioning/rke-clusters/cloud-providers/vsphere)
diff --git a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/glusterfs-volumes/_index.md b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/glusterfs-volumes/_index.md
index da7b3889dcc..81249a85c91 100644
--- a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/glusterfs-volumes/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/glusterfs-volumes/_index.md
@@ -1,6 +1,8 @@
---
title: GlusterFS Volumes
weight: 5000
+aliases:
+ - /rancher/v2.x/en/cluster-admin/volumes-and-storage/glusterfs-volumes/
---
> This section only applies to [RKE clusters.]({{}}/rancher/v2.5/en/cluster-provisioning/rke-clusters/)
diff --git a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/how-storage-works/_index.md b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/how-storage-works/_index.md
index 64b19969863..11279b1b890 100644
--- a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/how-storage-works/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/how-storage-works/_index.md
@@ -3,6 +3,7 @@ title: How Persistent Storage Works
weight: 1
aliases:
- /rancher/v2.5/en/tasks/workloads/add-persistent-volume-claim
+ - /rancher/v2.x/en/cluster-admin/volumes-and-storage/how-storage-works/
---
A persistent volume (PV) is a piece of storage in the Kubernetes cluster, while a persistent volume claim (PVC) is a request for storage.
diff --git a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/iscsi-volumes/_index.md b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/iscsi-volumes/_index.md
index 154ac03dd04..1a30d52540d 100644
--- a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/iscsi-volumes/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/iscsi-volumes/_index.md
@@ -1,6 +1,8 @@
---
title: iSCSI Volumes
weight: 6000
+aliases:
+ - /rancher/v2.x/en/cluster-admin/volumes-and-storage/iscsi-volumes/
---
In [Rancher Launched Kubernetes clusters]({{}}/rancher/v2.5/en/cluster-provisioning/rke-clusters/) that store data on iSCSI volumes, you may experience an issue where kubelets fail to automatically connect with iSCSI volumes. This failure is likely due to an incompatibility issue involving the iSCSI initiator tool. You can resolve this issue by installing the iSCSI initiator tool on each of your cluster nodes.
diff --git a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/provisioning-new-storage/_index.md b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/provisioning-new-storage/_index.md
index 54370f020b2..5edb8a7d77b 100644
--- a/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/provisioning-new-storage/_index.md
+++ b/content/rancher/v2.5/en/cluster-admin/volumes-and-storage/provisioning-new-storage/_index.md
@@ -1,6 +1,8 @@
---
title: Dynamically Provisioning New Storage in Rancher
weight: 2
+aliases:
+ - /rancher/v2.x/en/cluster-admin/volumes-and-storage/provisioning-new-storage/
---
This section describes how to provision new persistent storage for workloads in Rancher.
diff --git a/content/rancher/v2.5/en/cluster-provisioning/_index.md b/content/rancher/v2.5/en/cluster-provisioning/_index.md
index 3be9c2d0505..8fe1bc1c856 100644
--- a/content/rancher/v2.5/en/cluster-provisioning/_index.md
+++ b/content/rancher/v2.5/en/cluster-provisioning/_index.md
@@ -6,6 +6,7 @@ aliases:
- /rancher/v2.5/en/concepts/clusters/
- /rancher/v2.5/en/concepts/clusters/cluster-providers/
- /rancher/v2.5/en/tasks/clusters/
+ - /rancher/v2.x/en/cluster-provisioning/
---
Rancher simplifies the creation of clusters by allowing you to create them through the Rancher UI rather than more complex alternatives. Rancher provides multiple options for launching a cluster. Use the option that best fits your use case.
@@ -24,7 +25,6 @@ This section covers the following topics:
- [Launching Kubernetes and Provisioning Nodes in an Infrastructure Provider](#launching-kubernetes-and-provisioning-nodes-in-an-infrastructure-provider)
- [Launching Kubernetes on Existing Custom Nodes](#launching-kubernetes-on-existing-custom-nodes)
- [Registering Existing Clusters](#registering-existing-clusters)
-- [Importing Existing Clusters](#importing-existing-clusters)
diff --git a/content/rancher/v2.5/en/cluster-provisioning/cluster-capabilities-table/index.md b/content/rancher/v2.5/en/cluster-provisioning/cluster-capabilities-table/index.md
index 5dd2664c8b7..16ee4674be7 100644
--- a/content/rancher/v2.5/en/cluster-provisioning/cluster-capabilities-table/index.md
+++ b/content/rancher/v2.5/en/cluster-provisioning/cluster-capabilities-table/index.md
@@ -3,57 +3,61 @@ headless: true
---
{{% tabs %}}
-{{% tab "Rancher v2.5.8" %}}
+{{% tab "Rancher v2.5.8+" %}}
-| Action | Rancher Launched Kubernetes Clusters | EKS and GKE Clusters* | Other Hosted Kubernetes Clusters | Non-EKS or GKE Registered Clusters |
+| Action | Rancher Launched Kubernetes Clusters | EKS and GKE Clusters1 | Other Hosted Kubernetes Clusters | Non-EKS or GKE Registered Clusters |
| --- | --- | ---| ---|----|
| [Using kubectl and a kubeconfig file to Access a Cluster]({{}}/rancher/v2.5/en/cluster-admin/cluster-access/kubectl/) | ✓ | ✓ | ✓ | ✓ |
| [Managing Cluster Members]({{}}/rancher/v2.5/en/cluster-admin/cluster-access/cluster-members/) | ✓ | ✓ | ✓ | ✓ |
-| [Editing and Upgrading Clusters]({{}}/rancher/v2.5/en/cluster-admin/editing-clusters/) | ✓ | ✓ | ✓ | ** |
-| [Managing Nodes]({{}}/rancher/v2.5/en/cluster-admin/nodes) | ✓ | ✓ | ✓ | ✓ *** |
+| [Editing and Upgrading Clusters]({{}}/rancher/v2.5/en/cluster-admin/editing-clusters/) | ✓ | ✓ | ✓ | ✓2 |
+| [Managing Nodes]({{}}/rancher/v2.5/en/cluster-admin/nodes) | ✓ | ✓ | ✓ | ✓3 |
| [Managing Persistent Volumes and Storage Classes]({{}}/rancher/v2.5/en/cluster-admin/volumes-and-storage/) | ✓ | ✓ | ✓ | ✓ |
| [Managing Projects, Namespaces and Workloads]({{}}/rancher/v2.5/en/cluster-admin/projects-and-namespaces/) | ✓ | ✓ | ✓ | ✓ |
| [Using App Catalogs]({{}}/rancher/v2.5/en/catalog/) | ✓ | ✓ | ✓ | ✓ |
-| [Configuring Tools (Alerts, Notifiers, Logging, Monitoring, Istio)]({{}}/rancher/v2.5/en/cluster-admin/tools/) | ✓ | ✓ | ✓ | ✓ |
+| Configuring Tools (Alerts, Notifiers, Logging, Monitoring, Istio) | ✓ | ✓ | ✓ | ✓ |
| [Running Security Scans]({{}}/rancher/v2.5/en/security/security-scan/) | ✓ | ✓ | ✓ | ✓ |
-| [Cloning Clusters]({{}}/rancher/v2.5/en/cluster-admin/cloning-clusters/)| ✓ | ✓ |✓ | |
-| [Ability to rotate certificates]({{}}/rancher/v2.5/en/cluster-admin/certificate-rotation/) | ✓ | ✓ | | |
-| [Ability to back up your Kubernetes Clusters]({{}}/rancher/v2.5/en/cluster-admin/backing-up-etcd/) | ✓ | ✓ | | |
-| [Ability to recover and restore etcd]({{}}/rancher/v2.5/en/cluster-admin/restoring-etcd/) | ✓ | ✓ | | |
+| [Use existing configuration to create additional clusters]({{}}/rancher/v2.5/en/cluster-admin/cloning-clusters/)| ✓ | ✓ |✓ | |
+| [Ability to rotate certificates]({{}}/rancher/v2.5/en/cluster-admin/certificate-rotation/) | ✓ | ✓ | | |
+| Ability to [backup]({{}}/rancher/v2.5/en/cluster-admin/backing-up-etcd/) and [restore]({{}}/rancher/v2.5/en/cluster-admin/restoring-etcd/) Rancher-launched clusters | ✓ | ✓ | | ✓4 |
| [Cleaning Kubernetes components when clusters are no longer reachable from Rancher]({{}}/rancher/v2.5/en/cluster-admin/cleaning-cluster-nodes/) | ✓ | | | |
-| [Configuring Pod Security Policies]({{}}/rancher/v2.5/en/cluster-admin/pod-security-policy/) | ✓ | ✓ | ||
+| [Configuring Pod Security Policies]({{}}/rancher/v2.5/en/cluster-admin/pod-security-policy/) | ✓ | ✓ | | |
+| [Authorized Cluster Endpoint]({{}}/rancher/v2.5/en/cluster-provisioning/rke-clusters/options/#authorized-cluster-endpoint) | ✓ | | | |
-\* Registered GKE and EKS clusters have the same options available as GKE and EKS clusters created from the Rancher UI. The difference is that when a registered cluster is deleted from the Rancher UI, [it is not destroyed.]({{}}/rancher/v2.5/en/cluster-provisioning/registered-clusters/#additional-features-for-registered-eks-and-gke-clusters)
+1. Registered GKE and EKS clusters have the same options available as GKE and EKS clusters created from the Rancher UI. The difference is that when a registered cluster is deleted from the Rancher UI, [it is not destroyed.]({{}}/rancher/v2.5/en/cluster-provisioning/registered-clusters/#additional-features-for-registered-eks-and-gke-clusters)
-\* \* Cluster configuration options can't be edited for imported clusters, except for [K3s and RKE2 clusters.]({{}}/rancher/v2.5/en/cluster-provisioning/imported-clusters/)
+2. Cluster configuration options can't be edited for registered clusters, except for [K3s and RKE2 clusters.]({{}}/rancher/v2.5/en/cluster-provisioning/registered-clusters/)
-\* \* \* For registered cluster nodes, the Rancher UI exposes the ability to cordon drain, and edit the node.
+3. For registered cluster nodes, the Rancher UI exposes the ability to cordon, drain, and edit the node.
+
+4. For registered clusters using etcd as a control plane, snapshots must be taken manually outside of the Rancher UI to use for backup and recovery.
{{% /tab %}}
-{{% tab "Rancher v2.5.0-v2.5.7" %}}
+{{% tab "Rancher before v2.5.8" %}}
| Action | Rancher Launched Kubernetes Clusters | Hosted Kubernetes Clusters | Registered EKS Clusters | All Other Registered Clusters |
| --- | --- | ---| ---|----|
| [Using kubectl and a kubeconfig file to Access a Cluster]({{}}/rancher/v2.5/en/cluster-admin/cluster-access/kubectl/) | ✓ | ✓ | ✓ | ✓ |
| [Managing Cluster Members]({{}}/rancher/v2.5/en/cluster-admin/cluster-access/cluster-members/) | ✓ | ✓ | ✓ | ✓ |
-| [Editing and Upgrading Clusters]({{}}/rancher/v2.5/en/cluster-admin/editing-clusters/) | ✓ | ✓ | ✓ | * |
-| [Managing Nodes]({{}}/rancher/v2.5/en/cluster-admin/nodes) | ✓ | ✓ | ✓ | ✓ ** |
+| [Editing and Upgrading Clusters]({{}}/rancher/v2.5/en/cluster-admin/editing-clusters/) | ✓ | ✓ | ✓ | ✓1 |
+| [Managing Nodes]({{}}/rancher/v2.5/en/cluster-admin/nodes) | ✓ | ✓ | ✓ | ✓2 |
| [Managing Persistent Volumes and Storage Classes]({{}}/rancher/v2.5/en/cluster-admin/volumes-and-storage/) | ✓ | ✓ | ✓ | ✓ |
| [Managing Projects, Namespaces and Workloads]({{}}/rancher/v2.5/en/cluster-admin/projects-and-namespaces/) | ✓ | ✓ | ✓ | ✓ |
| [Using App Catalogs]({{}}/rancher/v2.5/en/catalog/) | ✓ | ✓ | ✓ | ✓ |
-| [Configuring Tools (Alerts, Notifiers, Logging, Monitoring, Istio)]({{}}/rancher/v2.5/en/cluster-admin/tools/) | ✓ | ✓ | ✓ | ✓ |
+| Configuring Tools (Alerts, Notifiers, Logging, Monitoring, Istio) | ✓ | ✓ | ✓ | ✓ |
| [Running Security Scans]({{}}/rancher/v2.5/en/security/security-scan/) | ✓ | ✓ | ✓ | ✓ |
-| [Cloning Clusters]({{}}/rancher/v2.5/en/cluster-admin/cloning-clusters/)| ✓ | ✓ |✓ | |
+| [Use existing configuration to create additional clusters]({{}}/rancher/v2.5/en/cluster-admin/cloning-clusters/)| ✓ | ✓ |✓ | |
| [Ability to rotate certificates]({{}}/rancher/v2.5/en/cluster-admin/certificate-rotation/) | ✓ | | ✓ | |
-| [Ability to back up your Kubernetes Clusters]({{}}/rancher/v2.5/en/cluster-admin/backing-up-etcd/) | ✓ | | ✓ | |
-| [Ability to recover and restore etcd]({{