Update ZH docs

This commit is contained in:
vickyhella
2023-06-15 18:12:44 +08:00
parent 74b007d3dc
commit 327d6775ba
203 changed files with 510 additions and 338 deletions
@@ -15,7 +15,7 @@ title: 卸载 Rancher
- **注册集群**:集群不受影响,你可以注册集群前的方法访问该集群。
- **托管的 Kubernetes 集群**:如果你在 Kubernetes 云提供商(例如 EKS、GKE 或 AKS)中创建集群,你可以继续使用提供商的云凭证来管理集群。
- **RKE 集群**:要访问 [RKE 集群](../pages-for-subheaders/launch-kubernetes-with-rancher.md),集群必须启用了[授权集群端点(authorized cluster endpoint,ACE)](../pages-for-subheaders/rancher-manager-architecture.md#4-授权集群端点),而且你必须从 Rancher UI 下载了集群的 kubeconfig 文件。RKE 集群默认启用授权集群端点。通过使用此端点,你可以直接使用 kubectl 访问你的集群,而不用通过 Rancher Server 的[认证代理](../pages-for-subheaders/rancher-manager-architecture.md#1-认证代理)进行通信。有关配置 kubectl 以使用授权集群端点的说明,请参阅[使用 kubectl 和 kubeconfig 文件直接访问集群](../how-to-guides/new-user-guides/manage-clusters/access-clusters/use-kubectl-and-kubeconfig.md#直接使用下游集群进行身份验证)。这些集群将使用删除 Rancher 时配置的身份验证快照。
- **RKE 集群**:要访问 [RKE 集群](../pages-for-subheaders/launch-kubernetes-with-rancher.md),集群必须启用了[授权集群端点(authorized cluster endpoint,ACE)](../reference-guides/rancher-manager-architecture/communicating-with-downstream-user-clusters.md#4-认证授权端点),而且你必须从 Rancher UI 下载了集群的 kubeconfig 文件。RKE 集群默认启用授权集群端点。通过使用此端点,你可以直接使用 kubectl 访问你的集群,而不用通过 Rancher Server 的[认证代理](../reference-guides/rancher-manager-architecture/communicating-with-downstream-user-clusters.md##1-认证代理)进行通信。有关配置 kubectl 以使用授权集群端点的说明,请参阅[使用 kubectl 和 kubeconfig 文件直接访问集群](../how-to-guides/new-user-guides/manage-clusters/access-clusters/use-kubectl-and-kubeconfig.md#直接使用下游集群进行身份验证)。这些集群将使用删除 Rancher 时配置的身份验证快照。
### 如果我不想再使用 Rancher 了该怎么做?
@@ -1,6 +1,7 @@
---
title: 回滚
---
## 使用 Rancher 2.6.4+ 进行回滚的其他步骤
Rancher v2.6.4 将 cluster-api 模块从 v0.4.4 升级到 v1.0.2。反过来,cluster-api 的 v1.0.2 版本将集群 API 的自定义资源定义 (CRD) 从 `cluster.x-k8s.io/v1alpha4` 升级到 `cluster.x-k8s.io/v1beta1`。当你尝试将 Rancher v2.6.4 回滚到以前版本的 Rancher v2.6.x 时,CRD 升级到 v1beta1 会导致回滚失败。这是因为使用旧 apiVersion (v1alpha4) 的 CRD 与 v1beta1 不兼容。
@@ -146,7 +146,7 @@ Error: validation failed: unable to recognize "": no matches for kind "Issuer" i
### nginx-ingress-controller Pod 显示 RESTARTS
此问题的最常见原因是 `canal` pod 未能建立覆盖网络。参见 [canal Pod 显示 READY `2/3`](#canal-pod-显示-ready-2/3) 进行排查。
此问题的最常见原因是 `canal` pod 未能建立覆盖网络。参见 [canal Pod 显示 READY `2/3`](#canal-pod-显示-ready-23) 进行排查。
### Failed to dial to /var/run/docker.sock: ssh: rejected: administratively prohibited (open failed)
@@ -1,6 +1,7 @@
---
title: 升级
---
本文介绍如何升级使用 Helm 安装在 Kubernetes 集群上的 Rancher Server。这些步骤也适用于使用 Helm 进行的离线安装。
有关使用 Docker 安装的 Rancher 的升级说明,请参见[本页。](../other-installation-methods/rancher-on-a-single-node-with-docker/upgrade-docker-installed-rancher.md)
@@ -127,7 +128,7 @@ hostname: rancher.my.org
:::
如果要将 cert-manager 从 v1.5 或更早的版本升级到最新版本,请参阅 [cert-manager upgrade docs](../resources/upgrade-cert-manager.md#选项-c:升级-1.5-及以下版本的-cert-manager) 了解如何在不卸载或重新安装 Rancher 的情况下升级 cert-manager。否则,请按照以下[ Rancher 升级步骤](#rancher-升级步骤)进行操作。
如果要将 cert-manager 从 v1.5 或更早的版本升级到最新版本,请参阅 [cert-manager upgrade docs](../resources/upgrade-cert-manager.md#选项-c:升级-15-及以下版本的-cert-manager) 了解如何在不卸载或重新安装 Rancher 的情况下升级 cert-manager。否则,请按照以下[ Rancher 升级步骤](#rancher-升级步骤)进行操作。
#### Rancher 升级步骤
@@ -1,5 +1,6 @@
---
title: Rancher Helm Chart 选项
keywords: [rancher helm chart, rancher helm 选项, rancher helm chart 选项, helm chart rancher, helm 选项 rancher, helm chart 选项 rancher]
---
本文提供了 Rancher Helm Chart 的配置参考。
@@ -8,7 +8,7 @@ Docker 有几个安装方法。一种方法是参见 [Docker 官方文档](https
另一种方式是使用 Rancher 的 Docker 安装脚本,该脚本可用于较新的 Docker 版本。
例如,你可执行以下命令,在 Ubuntu 上安装 Docker 20.10:
例如,此命令可用于在 SUSE Linux Enterprise 或 Ubuntu 等主要 Linux 发行版上安装 Docker 20.10:
```
curl https://releases.rancher.com/install-docker/20.10.sh | sh
@@ -311,7 +311,7 @@ SUSE Linux 可能有一个防火墙,默认情况下会阻止所有端口。要
sudo yast2
```
1. 导航到**安全和用户** > **防火墙** > **区域:公共** > **端口**。要在界面内导航,请参照[指示](https://doc.opensuse.org/documentation/leap/reference/html/book-reference/cha-yast-text.html#sec-yast-cli-navigate)。
1. 导航到**安全和用户** > **防火墙** > **区域:公共** > **端口**。要在界面内导航,请参照[说明](https://doc.opensuse.org/documentation/leap/reference/html/book-reference/cha-yast-text.html#sec-yast-cli-navigate)。
1. 要打开所需的端口,把它们输入到 **TCP 端口** 和 **UDP 端口** 字段。在这个例子中,端口 9796 和 10250 也被打开,用于监控。由此产生的字段应类似于以下内容:
```yaml
TCP Ports
@@ -64,9 +64,9 @@ configs:
### 3. 安装 K3s
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见[支持维护条款](https://rancher.com/support-maintenance-terms/)。
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix/all-supported-versions/)。
如需指定 K3s 版本,在运行 K3s 安装脚本时,使用 `INSTALL_K3S_VERSION` 环境变量。
如需指定 K3s(Kubernetes)版本,在运行 K3s 安装脚本时使用 `INSTALL_K3S_VERSION` 环境变量(例如 `INSTALL_K3S_VERSION="v1.24.10+k3s1"`)。
从 [Releases](https://github.com/k3s-io/k3s/releases) 页面获取 K3s 的二进制文件,该文件要匹配用于获取离线镜像的 tar 版本。
访问 [K3s 安装脚本](https://get.k3s.io)以获取 K3s 的安装脚本。
@@ -77,17 +77,16 @@ Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的
在每个 Server 上安装 K3s:
```
INSTALL_K3S_SKIP_DOWNLOAD=true ./install.sh
INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_VERSION=<VERSION> ./install.sh
```
在每个 Agent 上安装 K3s:
```
INSTALL_K3S_SKIP_DOWNLOAD=true K3S_URL=https://myserver:6443 K3S_TOKEN=mynodetoken ./install.sh
INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_VERSION=<VERSION> K3S_URL=https://<SERVER>:6443 K3S_TOKEN=<TOKEN> ./install.sh
```
请确保你将 `myserver` 替换为 Server 的 IP 或有效 DNS,并将 `mynodetoken` 替换为 Server 节点上的 node-token。
node-token 位于 Server 节点上的 `/var/lib/rancher/k3s/server/node-token`。
其中 `<SERVER>` 是 Server 的 IP 或有效 DNS,`<TOKEN>` 是可以在 `/var/lib/rancher/k3s/server/node-token` 中找到的 Server node-token。
:::note
@@ -22,7 +22,7 @@ title: 4. 安装 Rancher
1. 如果你还没有安装 `helm`,请在可访问互联网的工作站上进行本地安装。注意:参考 [Helm 版本要求](../../resources/helm-version-requirements.md)选择 Helm 版本来安装 Rancher。
2. 执行 `helm repo add` 命令,以添加包含安装 Rancher 的 Chart 的 Helm Chart 仓库。有关如何选择仓库,以及哪个仓库最适合你的用例,请参见[选择 Rancher 版本](../../installation-references/helm-chart-options.md#helm-chart-仓库)。
2. 执行 `helm repo add` 命令,以添加包含安装 Rancher 的 Chart 的 Helm Chart 仓库。有关如何选择仓库,以及哪个仓库最适合你的用例,请参见[选择 Rancher 版本](../../resources/choose-a-rancher-version.md)。
- Latest:建议用于试用最新功能
```
helm repo add rancher-latest https://releases.rancher.com/server-charts/latest
@@ -28,18 +28,22 @@ NO_PROXY=127.0.0.0/8,10.0.0.0/8,cattle-system.svc,172.16.0.0/12,192.168.0.0/16,.
EOF
```
然后运行 K3s 安装脚本创建一个新的 K3s 集群。确保你安装的 K3s 版本受 [Rancher 支持](https://www.suse.com/suse-rancher/support-matrix/all-supported-versions/)。
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix/all-supported-versions/)。
如需指定 K3s(Kubernetes)版本,在运行 K3s 安装脚本时使用 `INSTALL_K3S_VERSION` 环境变量(例如 `INSTALL_K3S_VERSION="v1.24.10+k3s1"`)。
在第一个节点上,创建一个新集群:
```
curl -sfL https://get.k3s.io | INSTALL_K3S_CHANNEL=v1.xx K3S_TOKEN=your_secret sh -s - server --cluster-init
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=<VERSION> K3S_TOKEN=<TOKEN> sh -s - server --cluster-init
```
然后加入其他节点:
```
curl -sfL https://get.k3s.io | INSTALL_K3S_CHANNEL=v1.xx K3S_TOKEN=your_secret sh -s - server --server https://<ip or hostname of server1>:6443
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=<VERSION> K3S_TOKEN=<TOKEN> sh -s - server --server https://<SERVER>:6443
```
其中 `<SERVER>` 是 Server 的 IP 或有效 DNS,`<TOKEN>` 是可以在 `/var/lib/rancher/k3s/server/node-token` 中找到的 Server node-token。
有关安装 K3s 的更多信息,请参阅 [K3s 安装文档](https://docs.k3s.io/installation)。
如需查看集群,请运行以下命令:
@@ -77,7 +81,7 @@ systemctl enable rke2-server.service
systemctl start rke2-server.service
```
有关安装 RKE2 的更多信息,请参阅 [RKE2 安装文档](https://docs.rke2.io)。
有关安装 RKE2 的更多信息,请参阅 [RKE2 文档](https://docs.rke2.io)。
如需查看集群,请运行以下命令:
@@ -1,6 +1,7 @@
---
title: 证书故障排除
---
### 如何确定我的证书格式是否为 PEM?
你可以通过以下特征识别 PEM 格式:
@@ -15,7 +15,7 @@ Rancher 使用 cert-manager 为 Rancher 高可用部署自动生成和续期 TLS
:::note 重要提示:
如果你要将 cert-manager 从早于 1.5 的版本升级到最新版本,请按照以下[选项 C](#选项-c:升级-1.5-及以下版本的-cert-manager) 中的步骤进行操作。请注意,你无需重新安装 Rancher 即可执行此升级。
如果你要将 cert-manager 从早于 1.5 的版本升级到最新版本,请按照以下[选项 C](#选项-c升级-15-及以下版本的-cert-manager) 中的步骤进行操作。请注意,你无需重新安装 Rancher 即可执行此升级。
:::
@@ -2,6 +2,7 @@
title: Rancher AWS 快速入门指南
description: 阅读此分步 Rancher AWS 指南,以快速部署带有单节点下游 Kubernetes 集群的 Rancher Server。
---
你可以参考以下步骤,在 AWS 的单节点 K3s Kubernetes 集群中快速部署 Rancher Server,并附加一个单节点下游 Kubernetes 集群。
:::caution
@@ -2,6 +2,7 @@
title: Rancher DigitalOcean 快速入门指南
description: 阅读此分步 Rancher DigitalOcean 指南,以快速部署带有单节点下游 Kubernetes 集群的 Rancher Server。
---
你可以参考以下步骤,在 DigitalOcean 的单节点 K3s Kubernetes 集群中快速部署 Rancher Server,并附加一个单节点下游 Kubernetes 集群。
:::caution
@@ -2,6 +2,7 @@
title: Rancher GCP 快速入门指南
description: 阅读此分步 Rancher GCP 指南,以快速部署带有单节点下游 Kubernetes 集群的 Rancher Server。
---
你可以参考以下步骤,在 GCP 的单节点 K3s Kubernetes 集群中快速部署 Rancher Server,并附加一个单节点下游 Kubernetes 集群。
:::caution
@@ -12,10 +12,11 @@ title: Helm CLI 快速入门
完整的安装要求在[这里](../../../pages-for-subheaders/installation-requirements.md)。
## 在 Linux 上安装 K3s
Rancher 需要安装在支持的 Kubernetes 版本上。如需指定 K3s 版本,在运行 K3s 安装脚本时使用 `INSTALL_K3S_VERSION` 环境变量(例如 `INSTALL_K3S_VERSION="v1.24.10+k3s1"`)。请参阅[支持维护条款](https://rancher.com/support-maintenance-terms/)。
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix/all-supported-versions/)。
如需指定 K3s(Kubernetes)版本,在运行 K3s 安装脚本时使用 `INSTALL_K3S_VERSION` 环境变量(例如 `INSTALL_K3S_VERSION="v1.24.10+k3s1"`)。
在 Linux 主机上运行以下命令来安装 K3s 集群:
@@ -2,6 +2,7 @@
title: Rancher Hetzner Cloud 快速入门指南
description: 阅读此分步 Rancher Hetzner Cloud 指南,以快速部署带有单节点下游 Kubernetes 集群的 Rancher Server。
---
你可以参考以下步骤,在 Hetzner Cloud 的单节点 K3s Kubernetes 集群中快速部署 Rancher Server,并附加一个单节点下游 Kubernetes 集群。
:::caution
@@ -2,6 +2,7 @@
title: Rancher Outscale 快速入门指南
description: 阅读此分步 Rancher Outscale 指南,以快速部署带有单节点下游 Kubernetes 集群的 Rancher Server。
---
你可以参考以下步骤,在 Outscale 的单节点 K3s Kubernetes 集群中快速部署 Rancher Server,并附加一个单节点下游 Kubernetes 集群。
:::note
@@ -1,6 +1,7 @@
---
title: Vagrant 快速入门
---
你可以参考以下步骤快速部署 Rancher Server,并附加一个单节点集群。
:::caution
@@ -12,6 +12,6 @@ title: 安装 Rancher CIS Benchmark
:::note
CIS Benchmark 4.0.0 及更高版本默认禁用 PSP。要在加固集群上安装 CIS Benchmark,在安装 Chart 之前将 values 中的 `golbal.psp.enabled` 设置为 `true`。
CIS Benchmark 4.0.0 及更高版本默认禁用 PSP。要在加固集群上安装 CIS Benchmark,在安装 Chart 之前将 values 中的 `global.psp.enabled` 设置为 `true`。
:::
:::
@@ -36,4 +36,5 @@ title: 设置容器默认资源限制
| CPU 限制 | 分配给容器的最大 CPU 量(以[毫核](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#meaning-of-cpu)为单位)。 |
| CPU 预留 | 保留给容器的最小 CPU 量(以毫核为单位)。 |
| 内存限制 | 分配给容器的最大内存量(以字节为单位)。 |
| 内存预留 | 保留给容器的最小内存量(以字节为单位)。 |
| 内存预留 | 保留给容器的最小内存量(以字节为单位)。 |
| NVIDIA GPU 限制/预留 | 分配给容器的 GPU 数量。GPU 的限制和预留始终相同。 |
@@ -36,4 +36,4 @@ title: 自定义 Grafana 仪表板
参考:
- [编辑面板的 Grafana 文档](https://grafana.com/docs/grafana/latest/panels-visualizations/configure-panel-options/#edit-a-panel)
- [向仪表板添加面板的 Grafana 文档](https://grafana.com/docs/grafana/latest/panels-visualizations/panel-editor-overview)
- [向仪表板添加面板的 Grafana 文档](https://grafana.com/docs/grafana/latest/panels-visualizations/panel-editor-overview)
@@ -228,7 +228,7 @@ Rancher 支持将 _自定义项目角色_ 分配给普通用户,而不是典
### 撤销集群成员资格
如果你撤销一个普通用户的集群成员资格,而且该用户已显式分配集群的集群 _和_ 项目的成员资格,该普通用户将[失去集群角色](#cluster-roles)但[保留项目角色](#project-roles)。换句话说,即使你已经撤销了用户访问集群和其中的节点的权限,但该普通用户仍然可以:
如果你撤销一个普通用户的集群成员资格,而且该用户已显式分配集群的集群 _和_ 项目的成员资格,该普通用户将[失去集群角色](#集群角色)但[保留项目角色](#项目角色)。换句话说,即使你已经撤销了用户访问集群和其中的节点的权限,但该普通用户仍然可以:
- 访问他们拥有成员资格的项目。
- 行使分配给他们的任何[单个项目角色](#项目角色参考)。
@@ -115,7 +115,7 @@ CATTLE_RESTRICTED_DEFAULT_ADMIN=true
你可以[更改默认权限来满足你的需要](#配置默认全局权限)。
你可以按照[步骤](#为单个用户配置全局权限)操作来将权限分配给单个用户。
权限可以[分配](#为单个用户配置全局权限)给单个用户。
如果外部身份验证提供程序支持组,你可以[同时为组中的每个成员分配角色](#为组配置全局权限)。
@@ -20,7 +20,7 @@ Rancher 必须是 2.5.0 或更高版本。
请参见[此处](migrate-rancher-to-new-cluster.md#2-使用-restore-自定义资源来还原备份)获取在 Rancher 2.6.3 中将现有备份文件恢复到 v1.22 集群的帮助。
### 1. 安装 `rancher backup` operator
### 1. 安装 Rancher Backup Operator
备份存储位置是 operator 级别的设置,所以需要在安装或升级 `rancher backup` 应用时进行配置。
@@ -55,7 +55,7 @@ git 仓库中的 Helm Chart 必须在 Chart 子目录中包含其依赖项。你
## 故障排除
---
* **已知问题**:Fleet git 仓库的 clientSecretName 和 helmSecretName 密文不包含在 [backup-restore-operator](../backup-restore-and-disaster-recovery/back-up-rancher.md#1-安装-`rancher-backup`-operator) 创建的备份或恢复中。如果我们有了永久的解决方案,我们将通知社区。
* **已知问题**:Fleet git 仓库的 clientSecretName 和 helmSecretName 密文不包含在 [backup-restore-operator](../backup-restore-and-disaster-recovery/back-up-rancher.md#1-安装rancher-backup-operator) 创建的备份或恢复中。如果我们有了永久的解决方案,我们将通知社区。
* **临时解决方法:** <br/>
默认情况下,用户定义的密文不会在 Fleet 中备份。如果执行灾难恢复或将 Rancher 迁移到新集群,则需要重新创建密文。要修改 resourceSet 以包含需要备份的其他资源,请参阅[此文档](https://github.com/rancher/backup-restore-operator#user-flow)。
@@ -20,7 +20,10 @@ title: 为 Rancher 设置高可用 K3s Kubernetes 集群
以下说明假设你已参见[此章节](../infrastructure-setup/ha-k3s-kubernetes-cluster.md)配置好两个节点,一个负载均衡器,一个 DNS 记录和一个外部 MySQL 数据库。
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见[支持维护条款](https://rancher.com/support-maintenance-terms/)。如需指定 K3s 版本,请在运行 K3s 安装脚本时,使用 `INSTALL_K3S_VERSION` 环境变量。
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见 [Rancher 支持矩阵](https://rancher.com/support-maintenance-terms/)。
如需指定 K3s(Kubernetes)版本,在运行 K3s 安装脚本时使用 `INSTALL_K3S_VERSION` 环境变量(例如 `INSTALL_K3S_VERSION="v1.24.10+k3s1"`)。
## 安装 Kubernetes
### 1. 安装 Kubernetes 并设置 K3s Server
@@ -30,24 +33,21 @@ Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的
1. 连接到你准备用于运行 Rancher Server 的其中一个 Linux 节点。
1. 在 Linux 节点上,运行以下命令来启动 K3s Server,并将其连接到外部数据存储。
```
curl -sfL https://get.k3s.io | sh -s - server \
--datastore-endpoint="mysql://username:password@tcp(hostname:3306)/database-name"
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=<VERSION> sh -s - server \
--datastore-endpoint="<DATASTORE_ENDPOINT>"
```
要指定 K3s 版本,使用 `INSTALL_K3S_VERSION` 环境变量:
```sh
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=vX.Y.Z sh -s - server \
--datastore-endpoint="mysql://username:password@tcp(hostname:3306)/database-name"
```
其中 `<DATASTORE_ENDPOINT>` 是数据存储的连接 URI。例如,如果你使用的是 MySQL,则为 `mysql://username:password@tcp(hostname:3306)/database-name`。有效的数据存储包括 etcd、MySQL、PostgreSQL 或 SQLite(默认)。
:::note
注意:你也可以使用 `$K3S_DATASTORE_ENDPOINT` 环境变量来传递数据存储端点。
你也可以使用 `$K3S_DATASTORE_ENDPOINT` 环境变量来传递数据存储端点。
:::
1. 在第二个 K3s Server 节点上运行同样的命令。
### 2. 确认 K3s 正在运行
### 2. 检查 K3s 是否正常运行
在其中一个 K3s Server 节点上运行以下命令,来确认 K3s 是否已经设置成功:
```
@@ -67,17 +67,17 @@ ip-172-31-63-88 Ready master 6m8s v1.17.2+k3s1
sudo k3s kubectl get pods --all-namespaces
```
**结果**:你已成功配置一个 K3s Kubernetes 集群。
**结果**:你已成功配置 K3s Kubernetes 集群。
### 3. 保存并开始使用 kubeconfig 文件
你在每个 Rancher Server 节点上安装 K3s 时,会在每个节点中的 `/etc/rancher/k3s/k3s.yaml` 位置上创建一个`kubeconfig` 文件。该文件包含访问集群的凭证。请将该文件保存在安全的位置。
在每个 Rancher Server 节点安装 K3s 时,会在每个节点的 `/etc/rancher/k3s/k3s.yaml` 中生成一个 `kubeconfig` 文件。该文件包含访问集群的凭证。请将该文件保存在安全的位置。
要使用此 `kubeconfig` 文件:
如要使用该 `kubeconfig` 文件:
1. 安装 [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl)(Kubernetes 命令行工具)。
2. 复制 `/etc/rancher/k3s/k3s.yaml` 文件并保存到你本地主机的 `~/.kube/config` 目录中。
3. 在 `kubeconfig` 文件中,`server` 的参数为 localhost。你需要将 `server` 配置为负载均衡器的 DNS,并指定端口 6443(通过端口 6443 访问 Kubernetes API Server 会通过端口 6443,通过端口 80 和 443 访问 Rancher Server)。以下是一个 `k3s.yaml` 示例:
1. 安装 Kubernetes 命令行工具 [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl)。
2. 复制 `/etc/rancher/k3s/k3s.yaml` 文件并保存到本地主机的 `~/.kube/config` 目录上。
3. 在 kubeconfig 文件中,`server` 的参数为 localhost。你需要将 `server` 配置为负载均衡器的 DNS,并指定端口 6443(通过端口 6443 访问 Kubernetes API Server,通过端口 80 和 443 访问 Rancher Server)。以下是一个 `k3s.yaml` 示例:
```yml
apiVersion: v1
@@ -29,7 +29,7 @@ kubectl create clusterrolebinding cluster-admin-binding \
### EKS、AKS 和 GKE 集群
要成功将这些集群导入 Rancher 或从 Rancher 中配置它们,Elastic Kubernetes Service (EKS)、Azure Kubernetes Service (AKS) 和 Google Kubernetes Engine (GKE) 集群必须至少有一个托管节点组。
要成功将这些集群导入 Rancher 或从 Rancher 中配置它们,Elastic Kubernetes Service (EKS)、Azure Kubernetes Service (AKS) 和 Google Kubernetes Engine (GKE) 集群必须至少有一个托管节点组。此外,不支持 GKE Autopilot 集群。有关 GKE 模式之间差异,请参阅[比较 GKE Autopilot 和 Standard](https://cloud.google.com/kubernetes-engine/docs/resources/autopilot-standard-feature-comparison)。
## 注册集群
@@ -2,7 +2,7 @@
title: 创建阿里云 ACK 集群
---
你可以使用 Rancher 创建托管在阿里云 Alibaba Cloud Kubernetes (ACK) 中的集群。Rancher 已经为 ACK 实现并打包了针对 ACK 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 ACK 集群,你需要[启用 ACK 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活/停用集群驱动)。启用集群驱动后,你可以开始配置 ACK 集群。
你可以使用 Rancher 创建托管在阿里云 Alibaba Cloud Kubernetes (ACK) 中的集群。Rancher 已经为 ACK 实现并打包了针对 ACK 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 ACK 集群,你需要[启用 ACK 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活停用集群驱动)。启用集群驱动后,你可以开始配置 ACK 集群。
## Rancher 之外的先决条件
@@ -2,7 +2,7 @@
title: 创建华为 CCE 集群
---
你可以使用 Rancher 创建托管在华为云容器引擎 (CCE) 中的集群。Rancher 已经为 CCE 实现并打包了针对 CCE 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 CCE 集群,你需要[启用 CCE 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活/停用集群驱动)。启用集群驱动后,你可以开始配置 CCE 集群。
你可以使用 Rancher 创建托管在华为云容器引擎 (CCE) 中的集群。Rancher 已经为 CCE 实现并打包了针对 CCE 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 CCE 集群,你需要[启用 CCE 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活停用集群驱动)。启用集群驱动后,你可以开始配置 CCE 集群。
## 华为先决条件
@@ -2,7 +2,7 @@
title: 创建腾讯 TKE 集群
---
你可以使用 Rancher 创建托管在腾讯 Tencent Kubernetes Engine (TKE) 中的集群。Rancher 已经为 TKE 实现并打包了针对 TKE 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 TKE 集群,你需要[启用 TKE 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活/停用集群驱动)。启用集群驱动后,你可以开始配置 TKE 集群。
你可以使用 Rancher 创建托管在腾讯 Tencent Kubernetes Engine (TKE) 中的集群。Rancher 已经为 TKE 实现并打包了针对 TKE 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 TKE 集群,你需要[启用 TKE 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活停用集群驱动)。启用集群驱动后,你可以开始配置 TKE 集群。
## 腾讯先决条件
@@ -11,9 +11,8 @@ description: 你可以为工作负载添加 Ingress,从而提供负载均衡
1. 单击**创建**。
1. 从下拉列表中选择一个现有的**命名空间**。
1. 输入 Ingress 的**名称**。
1. 创建 Ingress 转发**规则**。有关配置规则的帮助,请参阅[本节](./ingress-configuration.md)。如果你的任何 Ingress 规则处理加密端口的请求,请添加证书以加密/解密通信。
1. [创建](./ingress-configuration.md) Ingress 转发**规则**。如果你的任何 Ingress 规则处理加密端口的请求,请添加证书以加密/解密通信。
1. **可选**:点击**添加规则**来创建其他 Ingress 规则。例如,在创建 Ingress 规则以引导主机名请求后,你可能想创建一个默认后端来处理 404。
1. 点击右下角的**创建**。
**结果**:已将 Ingress 添加到项目中。Ingress 会开始执行你的 Ingress 规则。
@@ -20,8 +20,6 @@ RKE2/K3s 配置是基于 Cluster API (CAPI) 上游框架之上构建的,这导
- 编辑集群并启用`删除前清空`时,会删除现有的 controlplane 节点和 worker 并创建新节点。
- 在配置节点并执行缩减操作时,可能会删除当前配置的节点并配置新的节点以达到所需的节点数,而不是缩减所需的节点数量。这是 Cluster API 的一个问题,即将发布的版本会修复这个问题。一旦修复,Rancher 会更新文档。
如果你是习惯于 RKE1 配置的用户,请注意新的 RKE2 行为。
### 名词解释
@@ -71,7 +71,7 @@ title: 创建 DigitalOcean 集群
1. 单击 **DigitalOcean**。
1. 选择一个**云凭证**。如果存在多个则需要选择。否则,它是预选的。
1. 输入**集群名称**。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#rke2-中的节点角色)了解角色分配和计数的建议。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#节点角色)了解角色分配和计数的建议。
1. 为每个主机池定义主机配置。有关配置选项的信息,请参阅 [DigitalOcean 主机配置参考](../../../../reference-guides/cluster-configuration/downstream-cluster-configuration/machine-configuration/digitalocean.md)。
1. 使用**集群配置**,选择要安装的 Kubernetes 版本、要使用的网络提供商,以及是否启用项目网络隔离。有关配置集群的帮助,请参阅 [RKE2 集群配置参考](../../../../reference-guides/cluster-configuration/rancher-server-configuration/rke2-cluster-configuration.md)。
1. 使用**成员角色**为集群配置用户授权。点击**添加成员**添加可以访问集群的用户。使用**角色**下拉菜单为每个用户设置权限。
@@ -103,7 +103,7 @@ description: 了解使用 Rancher 创建 Amazon EC2 集群所需的先决条件
1. 单击 **Amazon EC2**。
1. 选择一个**云凭证**。如果存在多个则需要选择。否则,它是预选的。
1. 输入**集群名称**。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#rke2-中的节点角色)了解角色分配和计数的建议。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#节点角色)了解角色分配和计数的建议。
1. 为每个主机池定义主机配置。有关配置选项的信息,请参阅 [EC2 主机配置参考](../../../../reference-guides/cluster-configuration/downstream-cluster-configuration/machine-configuration/amazon-ec2.md)。
1. 使用**集群配置**,选择要安装的 Kubernetes 版本、要使用的网络提供商,以及是否启用项目网络隔离。有关配置集群的帮助,请参阅 [RKE2 集群配置参考](../../../../reference-guides/cluster-configuration/rancher-server-configuration/rke2-cluster-configuration.md)。
1. 使用**成员角色**为集群配置用户授权。点击**添加成员**添加可以访问集群的用户。使用**角色**下拉菜单为每个用户设置权限。
@@ -112,7 +112,7 @@ az ad sp create-for-rbac \
1. 单击 **Azure**。
1. 选择一个**云凭证**。如果存在多个则需要选择。否则,它是预选的。
1. 输入**集群名称**。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#rke2-中的节点角色)了解角色分配和计数的建议。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#节点角色)了解角色分配和计数的建议。
1. 为每个主机池定义主机配置。有关配置选项的信息,请参阅 [Azure 主机配置参考](../../../../reference-guides/cluster-configuration/downstream-cluster-configuration/machine-configuration/azure.md)。
1. 使用**集群配置**,选择要安装的 Kubernetes 版本、要使用的网络提供商,以及是否启用项目网络隔离。有关配置集群的帮助,请参阅 [RKE2 集群配置参考](../../../../reference-guides/cluster-configuration/rancher-server-configuration/rke2-cluster-configuration.md)。
1. 使用**成员角色**为集群配置用户授权。点击**添加成员**添加可以访问集群的用户。使用**角色**下拉菜单为每个用户设置权限。
@@ -4,7 +4,7 @@ title: 在 Nutanix AOS 中配置 Kubernetes 集群
要使用 Rancher 在 Nutanix AOS (AHV) 中安装 [RKE](https://rancher.com/docs/rke/latest/en/) Kubernetes 集群:
1. 找到 Rancher 的内置 Nutanix [主机驱动并激活它](../../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-node-drivers.md#激活/停用主机驱动)。
1. 找到 Rancher 的内置 Nutanix [主机驱动并激活它](../../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-node-drivers.md#激活停用主机驱动)。
1. 创建一个节点模板,Rancher 将使用该模板在 Nutanix AOS 中配置节点。
@@ -7,8 +7,6 @@ description: "了解如何通过 kubectl Shell 使用 kubectl,或通过 kubect
有关使用 kubectl 的更多信息,请参阅 [Kubernetes 文档:kubectl 概述](https://kubernetes.io/docs/reference/kubectl/overview/)。
### 在 Rancher UI 中使用 kubectl shell 访问集群
你可以通过登录 Rancher 并在 UI 中打开 kubectl shell 来访问和管理你的集群。你无需进一步配置。
@@ -47,7 +45,7 @@ Rancher 会发现并显示由 `kubectl` 创建的资源。但是在发现资源
本节旨在帮助你设置访问 [RKE 集群的替代方法](../../../../pages-for-subheaders/launch-kubernetes-with-rancher.md)。
此方法仅适用于启用了[授权集群端点](../../../../pages-for-subheaders/rancher-manager-architecture.md#4-授权集群端点)的 RKE、RKE2 和 K3s集群。在 Rancher 创建集群时,Rancher 会生成一个 kubeconfig 文件,其中包含用于访问集群的额外 kubectl 上下文。该上下文允许你使用 kubectl 通过下游集群进行身份验证,而无需通过 Rancher 进行身份验证。有关授权集群端点如何工作的详细说明,请参阅[此页面](authorized-cluster-endpoint.md)。
此方法仅适用于启用了[授权集群端点](../../../../reference-guides/rancher-manager-architecture/communicating-with-downstream-user-clusters.md#4-授权集群端点)的 RKE、RKE2 和 K3s集群。在 Rancher 创建集群时,Rancher 会生成一个 kubeconfig 文件,其中包含用于访问集群的额外 kubectl 上下文。该上下文允许你使用 kubectl 通过下游集群进行身份验证,而无需通过 Rancher 进行身份验证。有关授权集群端点如何工作的详细说明,请参阅[此页面](authorized-cluster-endpoint.md)。
在 RKE2 和 K3s 集群上,你需要[手动启用](../../kubernetes-clusters-in-rancher-setup/register-existing-clusters.md#对-rke2-和-k3s-集群的授权集群端点支持)授权集群端点。
@@ -73,7 +71,7 @@ CURRENT NAME CLUSTER AUTHINFO N
使用第二个上下文 `my-cluster-controlplane-1`,你将使用授权集群端点进行身份验证,直接与下游 RKE 集群通信。
我们建议使用具有授权集群端点的负载均衡器。有关详细信息,请参阅[推荐的架构](../../../../reference-guides/rancher-manager-architecture/architecture-recommendations.md#授权集群端点架构)。
我们建议使用具有授权集群端点的负载均衡器。有关详细信息,请参阅[推荐的架构](../../../../reference-guides/rancher-manager-architecture/architecture-recommendations.md#授权集群端点架构-ace)。
现在你已经有了直接使用集群进行身份验证所需的上下文名称,你可以在运行 kubectl 命令时将上下文名称作为选项传入。根据你的集群是否定义了 FQDN,这些命令会有所不同。以下几节提供了示例。
@@ -24,7 +24,7 @@ title: 添加 Pod 安全策略
4. 从**默认 Pod 安全策略**下拉列表中,选择要应用于集群的策略。
Rancher 支持了`受限`和`不受限`的[策略](../authentication-permissions-and-global-configuration/create-pod-security-policies.md#默认-psp),你也可以[创建自定义策略](../authentication-permissions-and-global-configuration/create-pod-security-policies.md#默认-psp)。
Rancher 支持了`受限`和`不受限`的[策略](../authentication-permissions-and-global-configuration/create-pod-security-policies.md#默认-psp),你也可以[创建自定义策略](../authentication-permissions-and-global-configuration/create-pod-security-policies.md#创建-psp)。
5. 单击**保存**。
@@ -121,11 +121,25 @@ $ sudo shutdown -r now
<Tabs>
<TabItem value="RKE1">
在运行以下命令之前,首先通过 Rancher UI 删除节点。
要删除节点:
1. 点击 **☰** 并选择**集群管理**。
1. 在集群表中,单击节点所属集群的名称。
1. 在第一个选项卡中,单击节点状态旁边的复选框。
1. 单击**删除**。
要删除整个集群而不是单个节点,或者不使用 Rancher UI 重新移动节点,请按照以下步骤操作:
1. 从节点中[删除](#docker-容器镜像和卷) Docker 容器并[卸载](#挂在)任何卷。
1. 重启节点。
1. [删除](#目录和文件)所有剩余的文件。
1. 确认在重新启动后已正确清理网络接口和 IP 表。否则请再重启一次。
### Windows 节点
要清理 Windows 节点,你可以运行位于 `c:\\etc\\rancher` 中的清理脚本。该脚本删除 Kubernetes 生成的资源并执行二进制文件,还会删除防火墙规则和网络设置。
要运行脚本,你可以在 PowerShell 中运行以下命令:
要清理 Windows 节点,请运行 `c:\\etc\\rancher` 中的脚本。此脚本删除 Kubernetes 生成的资源和执行二进制文件,还会删除防火墙规则和网络设置:
```
pushd c:\etc\rancher
@@ -133,13 +147,15 @@ pushd c:\etc\rancher
popd
```
**结果**:节点被重置,并可以重新添加到 Kubernetes 集群中。
运行此脚本后,节点将重置并可以重新添加到 Kubernetes 集群。
### Docker 容器、镜像和卷
根据你分配给节点的角色,Kubernetes 组件存在于容器、属于覆盖网络的容器、DNS、ingress controller 和 Rancher agent(以及你创建的已调度到此节点的 pod)。
:::caution
**清理所有 Docker 容器、镜像和卷**:
清理 Docker 容器时要小心。以下命令将删除节点上的*所有* Docker 容器、镜像和卷,包括与 Rancher 无关的容器:
:::
```
docker rm -f $(docker ps -qa)
@@ -149,15 +165,13 @@ docker volume rm $(docker volume ls -q)
### 挂载
Kubernetes 组件和密文会在系统上留下需要卸载的挂载。
Kubernetes 组件和 secret 会留下以下挂载:
| 挂载 |
|----------------------------------------------------|
| `/var/lib/kubelet/pods/XXX`(各种挂载) |
| `/var/lib/kubelet` |
| `/var/lib/rancher` |
* `/var/lib/kubelet`
* `/var/lib/rancher`
* `/var/lib/kubelet/pods/` 中的其他挂载
**卸载所有挂载**:
要卸载所有挂载,请运行:
```
for mount in $(mount | grep tmpfs | grep '/var/lib/kubelet' | awk '{ print $3 }') /var/lib/kubelet /var/lib/rancher; do umount $mount; done
@@ -166,10 +180,10 @@ for mount in $(mount | grep tmpfs | grep '/var/lib/kubelet' | awk '{ print $3 }'
</TabItem>
<TabItem value="RKE2">
你需要在通过 Rancher 配置的 RKE2 集群节点上删除两个组件:
你需要从 Rancher 提供的 RKE2 节点中删除以下组件:
* rancher-system-agent:连接 Rancher 并安装和管理 RKE2
* RKE2 本身
* rancher-system-agent,用于连接 Rancher 并安装和管理 RKE2。
* RKE2 本身。
### 删除 rancher-system-agent
@@ -190,10 +204,10 @@ sudo rke2-uninstall.sh
</TabItem>
<TabItem value="K3s">
你需要在通过 Rancher 配置的 K3s 集群节点上删除两个组件:
你需要从 Rancher 提供的 K3s 节点中删除以下组件:
* rancher-system-agent:连接 Rancher 并安装和管理 K3s
* K3s 本身
* rancher-system-agent:连接 Rancher 并安装和管理 K3s。
* K3s 本身。
### 删除 rancher-system-agent
@@ -31,3 +31,32 @@ services:
- "/etc/iscsi:/etc/iscsi"
- "/sbin/iscsiadm:/sbin/iscsiadm"
```
如果你使用的是 RHEL 7.9,你需要挂载文件 `/usr/lib64/libcrypto.so.10`,如下例所示。
```
services:
kubelet:
extra_binds:
- "/etc/iscsi:/etc/iscsi"
- "/sbin/iscsiadm:/sbin/iscsiadm"
- "/usr/lib64/libcrypto.so.10:/usr/lib/libcrypto.so.10"
```
如果你使用的是 RHEL 8.6,你需要挂载文件 `/usr/lib64/libcrypto.so.1.1`,如下例所示。
```
services:
kubelet:
extra_binds:
- "/etc/iscsi:/etc/iscsi"
- "/sbin/iscsiadm:/sbin/iscsiadm"
- "/usr/lib64/libcrypto.so.1.1:/usr/lib/libcrypto.so.1.1"
```
:::tip
要验证 iscsiadm 是否正常工作,你可以在任何节点上运行命令 `docker exec kubelet iscsiadm --version`。
:::
@@ -14,7 +14,7 @@ title: 设置现有存储
1. [设置持久存储](#1-设置持久存储)。
2. [添加一个引用持久存储的 PersistentVolume](#2-添加一个引用持久存储的-persistentvolume)。
3. [为使用 StatefulSet 部署的 Pod 使用 PersistentVolume](#3-为使用-statefulset-部署的-pod-使用存储类)。
3. [为使用 StatefulSet 部署的 Pod 使用存储类](#3-为使用-statefulset-部署的-pod-使用存储类)
### 先决条件
@@ -321,7 +321,7 @@ title: 通过 AWS EC2 Auto Scaling 组使用 Cluster Autoscaler
#### 部署
基于 [cluster-autoscaler-run-on-master.yaml](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/cloudprovider/aws/examples/cluster-autoscaler-run-on-master.yaml) 示例,我们已经创建了自己的 `cluster-autoscaler-deployment.yaml` 以使用首选的 [auto-discovery 设置](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler/cloudprovider/aws#auto-discovery-setup),更新容忍度、nodeSelector、镜像版本和命令配置:
基于 [cluster-autoscaler-run-on-control-plane.yaml](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/cloudprovider/aws/examples/cluster-autoscaler-run-on-control-plane.yaml) 示例,我们已经创建了自己的 `cluster-autoscaler-deployment.yaml` 以使用首选的 [auto-discovery 设置](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler/cloudprovider/aws#auto-discovery-setup),更新容忍度、nodeSelector、镜像版本和命令配置:
```yml
@@ -84,7 +84,7 @@ RKE2 集群模板的示例仓库在[这里](https://github.com/rancher/cluster-t
- 为了以创建新集群的形式显示,集群模板的 Helm Chart 必须具有 `catalog.cattle.io/type:cluster-template` 注释。
- 为了将模板用作持续交付/GitOps 的一部分,集群模板需要部署在`本地`集群的 `fleet-local` 命名空间中。
- 所有值都必须在模板的 `values.yaml` 中设置。
- Fleet 仓库必须遵循此处的[准则](https://fleet.rancher.io/gitrepo-content)。对于 RKE2 集群模板,则必须把 `fleet.yaml` 文件添加到仓库。
- Fleet 仓库必须遵循此处的[指南](https://fleet.rancher.io/gitrepo-content)。对于 RKE2 集群模板,则必须把 `fleet.yaml` 文件添加到仓库。
:::
@@ -184,4 +184,14 @@ Rancher 在 Kubernetes 之上进行了扩展,除了集群级别之外,还允
| 字段 | 描述 |
| ----------------------- | -------------------------------------------------------------------------------------------------------- |
| 项目限制 | 项目的总资源限制。 |
| 命名空间默认限制 | 每个命名空间的默认资源限制。此限制在创建时会沿用到项目中的每个命名空间。项目中所有命名空间的限制之和不应超过项目限制。 |
| 命名空间默认限制 | 每个命名空间的默认资源限制。此限制在创建时会沿用到项目中的每个命名空间。项目中所有命名空间的限制之和不应超过项目限制。 |
## 删除项目
1. 在左上角,单击 **☰ > 集群管理**。
1. 在**集群**页面上,转到项目连接的集群,然后单击 **Explore**。
1. 单击**集群 > 项目/命名空间**。
1. 找到要删除的项目,点击 **⋮**。
1. 选择**删除**。
删除项目时,以前与该项目关联的任何命名空间都将保留在集群上。你可以在 Rancher UI **项目/命名空间**页面的**不在项目内**选项卡中找到这些命名空间。你可以通过[移动](../manage-namespaces.md#将命名空间移动到另一个项目)来将它们重新分配给项目。
@@ -41,7 +41,7 @@ Logging v2 已在 RHEL/CentOS 7 和 8 上使用 SELinux 进行了测试。
[安全增强型 Linux (SELinux)](https://en.wikipedia.org/wiki/Security-Enhanced_Linux) 是对 Linux 的安全增强。被政府机构使用之后,SELinux 已成为行业标准,并在 CentOS 7 和 8 上默认启用。
要配合使用 Logging V2 与 SELinux,我们建议你根据[此页面](../../pages-for-subheaders/selinux-rpm.md)的安装说明安装 `rancher-selinux` RPM。
要配合使用 Logging V2 与 SELinux,我们建议你根据[此说明](../../pages-for-subheaders/selinux-rpm.md)安装 `rancher-selinux` RPM。
然后,在安装 Logging 应用程序时,在 `values.yaml` 中将 `global.seLinux.enabled` 更改为 `true`,使 Chart 支持 SELinux。
@@ -12,7 +12,7 @@ title: 处理污点和容忍度
两者都能让 pod 选择在哪个节点上运行。
- [Rancher Logging 堆栈中的默认实现](#rancher-日志堆栈中的默认实现)
- [Rancher 日志堆栈中的默认实现](#rancher-日志堆栈中的默认实现)
- [为自定义污点添加 NodeSelector 设置和容忍度](#为自定义污点添加-nodeselector-设置和容忍度)
@@ -27,7 +27,7 @@ title: 内置仪表板
:::note
本节参考假设你已经熟悉 Monitoring 组件的协同工作方式。有关 Alertmanager 的详细信息,请参阅[本节](how-monitoring-works.md#3-alertmanager-的工作原理)。
本节参考假设你已经熟悉 Monitoring 组件的协同工作方式。有关 Alertmanager 的详细信息,请参阅 [Alertmanager 工作原理](how-monitoring-works.md#3-alertmanager-工作原理)。
:::
@@ -1,5 +1,6 @@
---
title: 备份和灾难恢复
keywords: [rancher 备份还原, rancher 备份与恢复, 备份恢复 rancher, rancher 备份与恢复 rancher]
---
在本节中,你将学习如何创建 Rancher 的备份,如何从备份中恢复 Rancher,以及如何将 Rancher 迁移到新的 Kubernetes 集群。
@@ -92,4 +93,4 @@ ResourceSet 定义了需要备份哪些 Kubernetes 资源。由于备份 Rancher
### rancher-backup Helm Chart 的示例 values.yaml
当使用 Helm CLI 安装时,可以使用示例 [values.yaml 文件](../reference-guides/backup-restore-configuration/storage-configuration.md#rancher-backup-helm-chart-的示例-values-yaml) 来配置 `rancher-backup` operator。
当使用 Helm CLI 安装时,可以使用示例 [values.yaml 文件](../reference-guides/backup-restore-configuration/storage-configuration.md#rancher-backup-helm-chart-的示例-valuesyaml) 来配置 `rancher-backup` operator。
@@ -73,7 +73,7 @@ Rancher 是使用 Kubernetes 的 [Helm](https://helm.sh/) 包管理器安装的
### 1. 添加 Helm Chart 仓库
执行 `helm repo add` 命令,以添加包含安装 Rancher 的 Chart 的 Helm Chart 仓库。有关如何选择仓库,以及哪个仓库最适合你的用例,请参见[选择 Rancher 版本](../getting-started/installation-and-upgrade/installation-references/helm-chart-options.md#helm-chart-仓库)。
执行 `helm repo add` 命令,以添加包含安装 Rancher 的 Chart 的 Helm Chart 仓库。有关如何选择仓库,以及哪个仓库最适合你的用例,请参见[选择 Rancher 版本](../getting-started/installation-and-upgrade/resources/choose-a-rancher-version.md)。
- Latest:建议用于试用最新功能
```
@@ -57,9 +57,8 @@ Rancher Logging 有两个角色,分别是 `logging-admin` 和 `logging-view`
### Windows 支持
Windows 集群支持 Logging,你可以收集 Windows 节点的日志。
你可以从 Windows 节点[启用 Logging](../integrations-in-rancher/logging/logging-helm-chart-options.md#启用禁用-windows-节点-logging)。
有关如何在 Windows 节点上启用或禁用 Logging 的详细信息,请参阅[本节](../integrations-in-rancher/logging/logging-helm-chart-options.md#启用/禁用-windows-节点-logging)。
### 使用自定义 Docker 根目录
@@ -4,11 +4,6 @@ title: 集群管理
在 Rancher 中配置集群后,你可以开始使用强大的 Kubernetes 功能在开发、测试或生产环境中部署和扩展容器化应用。
本文涵盖以下主题:
- [在 Rancher 中管理集群](#在-rancher-中管理集群)
- [配置工具](#配置工具)
:::note
本节默认你已对 Docker 和 Kubernetes 有一定的了解。如果你需要了解 Kubernetes 组件如何协作,请参见 [Kubernetes 概念](../reference-guides/kubernetes-concepts.md)。
@@ -2,4 +2,4 @@
title: 节点模板配置
---
要了解节点模板配置,请参阅[EC2 节点模板配置](../reference-guides/cluster-configuration/downstream-cluster-configuration/node-template-configuration/amazon-ec2.md)、[DigitalOcean 节点模板配置](../reference-guides/cluster-configuration/downstream-cluster-configuration/node-template-configuration/digitalocean.md)、[Azure 节点模板配置](../reference-guides/cluster-configuration/downstream-cluster-configuration/node-template-configuration/azure.md)、[vSphere 节点模板配置](../reference-guides/cluster-configuration/downstream-cluster-configuration/node-template-configuration/vsphere.md)和 [Nutanix 节点模板配置](../reference-guides/cluster-configuration/downstream-cluster-configuration/node-template-configuration/nutanix.md)。
要了解节点模板配置,请参阅[EC2 节点模板配置](../reference-guides/cluster-configuration/downstream-cluster-configuration/node-template-configuration/amazon-ec2.md)、[DigitalOcean 节点模板配置](../reference-guides/cluster-configuration/downstream-cluster-configuration/node-template-configuration/digitalocean.md)、[Azure 节点模板配置](../reference-guides/cluster-configuration/downstream-cluster-configuration/node-template-configuration/azure.md)、[vSphere 节点模板配置](../reference-guides/cluster-configuration/downstream-cluster-configuration/node-template-configuration/vsphere.md)和 [Nutanix 节点模板配置](../reference-guides/cluster-configuration/downstream-cluster-configuration/node-template-configuration/nutanix.md)。
@@ -47,7 +47,7 @@ Rancher backup operator 可将 Rancher 从单个 Docker 容器迁移到高可用
- [选项 A:使用 Rancher 生成的默认自签名证书](#选项-a:使用-rancher-生成的默认自签名证书)
- [选项 B:使用你自己的证书 - 自签名](#选项-b:使用你自己的证书---自签名)
- [选项 C:使用你自己的证书 - 可信 CA 签名的证书](#选项-c:使用你自己的证书---可信-ca-签名的证书)
- [选项 D:Let's Encrypt 证书](#选项-d:let's-encrypt-证书)
- [选项 D:Let's Encrypt 证书](#选项-dlets-encrypt-证书)
- [选项 E:Localhost 隧道,不使用证书](#选项-e:localhost-隧道,不使用证书)
### 选项 A:使用 Rancher 生成的默认自签名证书
@@ -125,7 +125,7 @@ Rancher 可以自动替换节点池中无法访问的节点。如果节点在指
### 主机驱动
如果你找不到想要的主机驱动,你可以在 Rancher 的[内置主机驱动](../how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-node-drivers.md#激活/停用主机驱动)中查看并激活它,也可以[添加自定义主机驱动](../how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-node-drivers.md#添加自定义主机驱动)。
如果你找不到想要的主机驱动,你可以在 Rancher 的[内置主机驱动](../how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-node-drivers.md#激活停用主机驱动)中查看并激活它,也可以[添加自定义主机驱动](../how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-node-drivers.md#添加自定义主机驱动)。
## RKE2 集群
@@ -123,7 +123,7 @@ Kubernetes 集群管理节点(`etcd` 和 `controlplane`)必须运行在 Linu
部署工作负载的 `worker` 节点通常是 Windows 节点,但必须至少有一个 `worker` 节点运行在 Linux 上,才能按顺序运行 Rancher Cluster Agent、DNS、Metrics Server 和 Ingress 相关容器。
#### 架构推荐
#### 推荐架构
我们推荐下表中列出的三节点架构,但你始终可以添加额外的 Linux 和 Windows worker 节点来扩展集群,从而实现冗余:
@@ -148,7 +148,7 @@ Windows 要求容器的版本必须与部署容器的 Windows Server 的版本
## 教程:如何创建支持 Windows 的集群
本教程描述了如何使用[推荐架构](#架构推荐)中的三个节点创建由 Rancher 配置的集群。
本教程描述了如何使用[推荐架构](#推荐架构)中的三个节点创建由 Rancher 配置的集群。
在现有节点上使用 Rancher 配置集群时,你需要在每个节点上安装 [Rancher Agent](../reference-guides/cluster-configuration/rancher-server-configuration/use-existing-nodes/rancher-agent-options.md) 来将节点添加到集群中。在 Rancher UI 中创建或编辑集群时,你会看到一个**自定义节点运行命令**,你可以在每台服务器上运行该命令,从而将服务器添加到集群中。
@@ -2,7 +2,7 @@
title: Rancher 部署策略
---
本文提供 Rancher 实例的两种部署策略,用于管理下游 Kubernetes 集群。每种策略都有优缺点。请按照你的实际情况选择最适合的部署策略.
本文提供 Rancher 实例的两种部署策略,用于管理下游 Kubernetes 集群。每种策略都有优缺点。请按照你的实际情况选择最适合的部署策略。
## 中心辐射型策略
---
@@ -106,9 +106,9 @@ title: K3s 集群配置参考
授权集群端点(ACE)可用于直接访问 Kubernetes API server,而无需通过 Rancher 进行通信。
有关授权集群端点的工作原理以及使用的原因,请参阅[架构介绍](../../../pages-for-subheaders/rancher-manager-architecture.md#4-授权集群端点)。
有关授权集群端点的工作原理以及使用的原因,请参阅[架构介绍](../../../reference-guides/rancher-manager-architecture/communicating-with-downstream-user-clusters.md#4-授权集群端点)。
我们建议使用具有授权集群端点的负载均衡器。有关详细信息,请参阅[推荐的架构](../../rancher-manager-architecture/architecture-recommendations.md#授权集群端点架构)。
我们建议使用具有授权集群端点的负载均衡器。有关详细信息,请参阅[推荐的架构](../../rancher-manager-architecture/architecture-recommendations.md#授权集群端点架构-ace)。
### 镜像仓库
@@ -125,9 +125,9 @@ Rancher v2.6 引入了[为 RKE 集群配置 ECR 镜像仓库](https://rancher.co
在 Rancher 启动的 Kubernetes 集群中,它默认启用,使用具有 `controlplane` 角色的节点的 IP 和默认的 Kubernetes 自签名证书。
有关授权集群端点的工作原理以及使用的原因,请参阅[架构介绍](../../../pages-for-subheaders/rancher-manager-architecture.md#4-授权集群端点)。
有关授权集群端点的工作原理以及使用的原因,请参阅[架构介绍](../../../reference-guides/rancher-manager-architecture/communicating-with-downstream-user-clusters.md#4-授权集群端点)。
我们建议使用具有授权集群端点的负载均衡器。有关详细信息,请参阅[推荐的架构](../../rancher-manager-architecture/architecture-recommendations.md#授权集群端点架构)。
我们建议使用具有授权集群端点的负载均衡器。有关详细信息,请参阅[推荐的架构](../../rancher-manager-architecture/architecture-recommendations.md#授权集群端点架构-ace)。
### 节点池
@@ -183,6 +183,8 @@ Rancher v2.6 引入了[为 RKE 集群配置 ECR 镜像仓库](https://rancher.co
如果 `ingress-nginx` 的 `updateStrategy` 是 `OnDelete`,则需要删除这些 pod 以获得 deployment 正确的版本。
## RKE 集群配置文件参考
高级用户可以创建一个 RKE 配置文件,而不是使用 Rancher UI 来为集群选择 Kubernetes 选项。配置文件可以让你在 RKE 安装中设置任何[可用选项](https://rancher.com/docs/rke/latest/en/config-options/)(`system_images` 配置除外)。使用 Rancher UI 或 API 创建集群时,不支持 `system_images` 选项。
@@ -216,9 +216,9 @@ Rancher 与以下开箱即用的网络提供商兼容:
在 Rancher 启动的 Kubernetes 集群中,它默认启用,使用具有 `controlplane` 角色的节点的 IP 和默认的 Kubernetes 自签名证书。
有关授权集群端点的工作原理以及使用的原因,请参阅[架构介绍](../../../pages-for-subheaders/rancher-manager-architecture.md#4-授权集群端点)。
有关授权集群端点的工作原理以及使用的原因,请参阅[架构介绍](../../../reference-guides/rancher-manager-architecture/communicating-with-downstream-user-clusters.md#4-授权集群端点)。
我们建议使用具有授权集群端点的负载均衡器。有关详细信息,请参阅[推荐的架构](../../rancher-manager-architecture/architecture-recommendations.md#授权集群端点架构)。
我们建议使用具有授权集群端点的负载均衡器。有关详细信息,请参阅[推荐的架构](../../rancher-manager-architecture/architecture-recommendations.md#授权集群端点架构-ace)。
### 镜像仓库
@@ -20,4 +20,4 @@ PrometheusRule 包含你通常放置在 [Prometheus 规则文件](https://promet
### Alertmanager 配置
有关示例配置,请参阅[本节](receivers.md#配置多个接收器)。
有关示例配置,请参阅[本节](./receivers.md#alertmanager-配置示例)。
@@ -294,7 +294,6 @@ spec:
有关为 `rancher-cis-benchmark` 启用告警的更多信息,请参阅[本节](../../how-to-guides/advanced-user-guides/cis-scan-guides/enable-alerting-for-rancher-cis-benchmark.md)。
## Notifiers 的可信 CA
如果你需要将受信任的 CA 添加到 Notifiers,请按照[本节](helm-chart-options.md#notifiers-的可信-ca)中的步骤操作。
@@ -99,7 +99,7 @@ RKE 每个角色至少需要一个节点,但并不强制每个节点只能有
## 授权集群端点架构
如果你使用[授权集群端点(ACE)](../../pages-for-subheaders/rancher-manager-architecture.md#4-授权集群端点),我们建议你创建一个指向负载均衡器的 FQDN,这个负载均衡器把流量转到所有角色为 `controlplane` 的节点。
如果你使用[授权集群端点(ACE)](../../reference-guides/rancher-manager-architecture/communicating-with-downstream-user-clusters.md#4-授权集群端点),我们建议你创建一个指向负载均衡器的 FQDN,这个负载均衡器把流量转到所有角色为 `controlplane` 的节点。
如果你在负载均衡器上使用了私有 CA 签发的证书,你需要提供 CA 证书,这个证书会包含在生成的 kubeconfig 文件中,以校验证书链。详情请参见 [kubeconfig 文件](../../how-to-guides/new-user-guides/manage-clusters/access-clusters/use-kubectl-and-kubeconfig.md)和 [API 密钥](../user-settings/api-keys.md#创建-api-密钥)的相关文档。
@@ -6,13 +6,17 @@ Rancher 致力于向社区披露我们产品的安全问题。我们会针对已
| ID | 描述 | 日期 | 解决 |
|----|-------------|------|------------|
| [CVE-2023-22648](https://github.com/rancher/rancher/security/advisories/GHSA-vf6j-6739-78m8) | 在 Rancher 2.6.12 和 2.7.3 及之前的版本中发现了一个问题。在用户注销并重新登录到 Rancher UI 之前,Azure AD 中的权限更改不会反映给用户。 | 2023 年 5 月 31 日 | Rancher [v2.7.4](https://github.com/rancher/rancher/releases/tag/v2.7.4) |
| [CVE-2022-43760](https://github.com/rancher/rancher/security/advisories/GHSA-46v3-ggjg-qq3x) | 在 Rancher 2.6.12 和 2.7.3 及之前的版本中发现了一个问题。攻击者可以通过 Rancher UI 利用多个跨站脚本 (XSS) 漏洞。 | 2023 年 5 月 31 日 | Rancher [v2.7.4](https://github.com/rancher/rancher/releases/tag/v2.7.4) |
| [CVE-2020-10676](https://github.com/rancher/rancher/security/advisories/GHSA-8vhc-hwhc-cpj4) | 在 Rancher 2.6.12 和 2.7.3 及之前的版本中发现了一个问题。具有更新命名空间权限的用户可以将该命名空间移动到他们无权访问的项目中。 | 2023 年 5 月 31 日 | Rancher [v2.7.4](https://github.com/rancher/rancher/releases/tag/v2.7.4) |
| [CVE-2023-22647](https://github.com/rancher/rancher/security/advisories/GHSA-p976-h52c-26p6) | 在 Rancher 2.6.12 和 2.7.3 及之前的版本中发现了一个问题。Standard 及以上用户能够将他们的权限提升为 local 集群中的管理员。 | 2023 年 5 月 31 日 | Rancher [v2.7.4](https://github.com/rancher/rancher/releases/tag/v2.7.4) |
| [CVE-2023-22651](https://github.com/rancher/rancher/security/advisories/GHSA-6m9f-pj6w-w87g) | 由于 webhook 的更新逻辑失败,Rancher 准入 webhook 可能会配置错误。准入 webhook 在资源允许进入 Kubernetes 集群之前会强制执行验证规则和安全检查。webhook 在降级状态下运行时将不再验证任何资源,这可能导致严重的权限提升和数据损坏。 | 2023 年 4 月 24 日 | Rancher [v2.7.3](https://github.com/rancher/rancher/releases/tag/v2.7.3) |
| [CVE-2022-43758](https://github.com/rancher/rancher/security/advisories/GHSA-34p5-jp77-fcrc) | 在 Rancher 2.5.0 至 2.5.16、2.6.0 至 2.6.9 和 2.7.0 版本中发现了一个问题,Rancher Git 包中存在命令注入漏洞。这个包使用 Rancher 容器镜像中可用的底层 Git 二进制文件来执行 Git 操作。特制的命令如果没有消除歧义,可能会在通过 Git 执行时造成混淆,导致在底层 Rancher 主机中进行命令注入。 | 2023 年 1 月 24 日 | Rancher [v2.7.1](https://github.com/rancher/rancher/releases/tag/v2.7.1)、[v2.6.10](https://github.com/rancher/rancher/releases/tag/v2.6.10) 和 [v2.5.17](https://github.com/rancher/rancher/releases/tag/v2.5.17) |
| [CVE-2022-43757](https://github.com/rancher/rancher/security/advisories/GHSA-cq4p-vp5q-4522) | 此问题影响 Rancher 2.5.0 到 2.5.16,2.6.0 至 2.6.9 和 2.7.0。我们发现 Rancher 之前发布的安全公告 [CVE-2021-36782](https://github.com/advisories/GHSA-g7j7-h4q8-8w2f) 没有解决某些敏感字段、Secret Token、加密密钥和 SSH 密钥,这些字段仍然以明文形式直接存储在 Kubernetes 上 `Clusters` 之类的对象。在 Rancher 中,集群中已认证的 `Cluster Owners`、`Cluster Members`、`Project Owners` 和 `Project Members` 可以看到公开的凭证。 | 2023 年 1 月 24 日 | Rancher [v2.7.1](https://github.com/rancher/rancher/releases/tag/v2.7.1)、[v2.6.10](https://github.com/rancher/rancher/releases/tag/v2.6.10) 和 [v2.5.17](https://github.com/rancher/rancher/releases/tag/v2.5.17) |
| [CVE-2022-43755](https://github.com/rancher/rancher/security/advisories/GHSA-8c69-r38j-rpfj) | 在 Rancher 2.6.9 和 2.7.0 之前的版本中发现了一个问题,即 `cattle-cluster-agent` 使用的 `cattle-token` Secret 是可预测的。重新生成 Token 之后,Token 的值依然相同。如果 Token 被泄露并且出于安全目的需要重新创建,这可能会造成严重的问题。Rancher 的 `cattle-cluster-agent` 使用 `cattle-token` 来连接到 Rancher 配置的下游集群 Kubernetes API。 | 2023 年 1 月 24 日 | Rancher [v2.7.1](https://github.com/rancher/rancher/releases/tag/v2.7.1) 和 [v2.6.10](https://github.com/rancher/rancher/releases/tag/v2.6.10) |
| [CVE-2022-21953](https://github.com/rancher/rancher/security/advisories/GHSA-g25r-gvq3-wrq7) | 在 Rancher 2.5.16、2.6.9 和 2.7.0 之前的版本中发现了一个问题。由于授权逻辑缺陷,任何下游集群上经过身份认证的用户都能在 Rancher `local` 集群中打开一个 shell pod (1),而且对 kubectl 具有有限的访问权限 (2)。预期的行为是:除非明确授予权限,否则用户在 Rancher `local` 集群中没有这样的访问权限。 | 2023 年 1 月 24 日 | Rancher [v2.7.1](https://github.com/rancher/rancher/releases/tag/v2.7.1)、[v2.6.10](https://github.com/rancher/rancher/releases/tag/v2.6.10) 和 [v2.5.17](https://github.com/rancher/rancher/releases/tag/v2.5.17) |
| [CVE-2022-43755](https://github.com/rancher/rancher/security/advisories/GHSA-8c69-r38j-rpfj) | 在 Rancher 2.6.9 和 2.7.0 及之前的版本中发现了一个问题。`cattle-cluster-agent` 使用的 `cattle-token` Secret 是可预测的。重新生成 Token 之后,Token 的值依然相同。如果 Token 被泄露并且出于安全目的需要重新创建,这可能会造成严重的问题。Rancher 的 `cattle-cluster-agent` 使用 `cattle-token` 来连接到 Rancher 配置的下游集群 Kubernetes API。 | 2023 年 1 月 24 日 | Rancher [v2.7.1](https://github.com/rancher/rancher/releases/tag/v2.7.1) 和 [v2.6.10](https://github.com/rancher/rancher/releases/tag/v2.6.10) |
| [CVE-2022-21953](https://github.com/rancher/rancher/security/advisories/GHSA-g25r-gvq3-wrq7) | 在 Rancher 2.5.16、2.6.9 和 2.7.0 及之前的版本中发现了一个问题。由于授权逻辑缺陷,任何下游集群上经过身份认证的用户都能在 Rancher `local` 集群中打开一个 shell pod (1),而且对 kubectl 具有有限的访问权限 (2)。预期的行为是:除非明确授予权限,否则用户在 Rancher `local` 集群中没有这样的访问权限。 | 2023 年 1 月 24 日 | Rancher [v2.7.1](https://github.com/rancher/rancher/releases/tag/v2.7.1)、[v2.6.10](https://github.com/rancher/rancher/releases/tag/v2.6.10) 和 [v2.5.17](https://github.com/rancher/rancher/releases/tag/v2.5.17) |
| [GHSA-c45c-39f6-6gw9](https://github.com/rancher/rancher/security/advisories/GHSA-c45c-39f6-6gw9) | 此问题影响 Rancher 2.5.0 到 2.5.16,2.6.0 至 2.6.9 和 2.7.0。只会影响配置了或配置过外部身份认证提供程序的 Rancher 设置。我们发现,当在 Rancher 中配置外部身份认证提供程序然后将其禁用时,Rancher 生成的 Token 如果关联了通过现已禁用的身份认证提供程序授予访问权限的用户,那么 Token 不会被撤销。 | 2023 年 1 月 24 日 | Rancher [v2.7.1](https://github.com/rancher/rancher/releases/tag/v2.7.1)、[v2.6.10](https://github.com/rancher/rancher/releases/tag/v2.6.10) 和 [v2.5.17](https://github.com/rancher/rancher/releases/tag/v2.5.17) |
| [CVE-2022-31247](https://github.com/rancher/rancher/security/advisories/GHSA-6x34-89p7-95wg) | 在 2.5.15(包括)到 2.6.6(包括)的 Rancher 版本中发现了一个问题,其中的授权逻辑缺陷允许在下游集群中通过集群角色模板绑定 (CRTB) 和项目角色模板绑定 (PRTB) 来提升权限。任何有权限创建/编辑 CRTB 或 PRTB 的用户(例如 `cluster-owner`、`manage cluster members`、`project-owner` 和 `manage project members`)都可以利用该漏洞,在同一集群的另一个项目或不同下游集群的另一个项目中获得所有者权限。 | 2022 年 8 月 18 日 | [Rancher 2.6.7](https://github.com/rancher/rancher/releases/tag/v2.6.7) 和 [Rancher 2.5.16](https://github.com/rancher/rancher/releases/tag/v2.5.16) |
| [CVE-2022-31247](https://github.com/rancher/rancher/security/advisories/GHSA-6x34-89p7-95wg) | 在 Rancher 2.5.15 和 2.6.6 及之前的版本中发现了一个问题。授权逻辑缺陷允许在下游集群中通过集群角色模板绑定 (CRTB) 和项目角色模板绑定 (PRTB) 来提升权限。任何有权限创建/编辑 CRTB 或 PRTB 的用户(例如 `cluster-owner`、`manage cluster members`、`project-owner` 和 `manage project members`)都可以利用该漏洞,在同一集群的另一个项目或不同下游集群的另一个项目中获得所有者权限。 | 2022 年 8 月 18 日 | [Rancher 2.6.7](https://github.com/rancher/rancher/releases/tag/v2.6.7) 和 [Rancher 2.5.16](https://github.com/rancher/rancher/releases/tag/v2.5.16) |
| [CVE-2021-36783](https://github.com/rancher/rancher/security/advisories/GHSA-8w87-58w6-hfv8) | 2.5.12 到 2.6.3 的 Rancher 版本无法正确清理集群模板 answer 中的凭证。此错误可能会导致明文存储以及凭证、密码和 API 令牌被暴露。在 Rancher 中,已认证的 `Cluster Owner`、`Cluster Member`、`Project Owner` 和 `Project Member` 可以在 `/v1/management.cattle.io.clusters`、`/v3/clusters` 和 `/k8s/clusters/local/apis/management.cattle.io/v3/clusters` 端点上看到暴露的凭证。 | 2022 年 8 月 18 日 | [Rancher 2.6.7](https://github.com/rancher/rancher/releases/tag/v2.6.7) 和 [Rancher 2.5.16](https://github.com/rancher/rancher/releases/tag/v2.5.16) |
| [CVE-2021-36782](https://github.com/rancher/rancher/security/advisories/GHSA-g7j7-h4q8-8w2f) | 在 2.5.15 到 2.6.6 的 Rancher 版本中发现了一个问题,其中密码、API 密钥和 Rancher 的 ServiceAccount 令牌(用于配置集群)等敏感字段直接以明文形式存储在 `Cluster` 等 Kubernetes 对象上(例如,`cluster.management.cattle.io`)。任何能够读取 Kubernetes API 中的对象的用户都可以检索这些敏感数据的明文版本。该问题由 Florian Struck(来自 [Continum AG](https://www.continum.net/))和 [Marco Stuurman](https://github.com/fe-ax)(来自 [Shock Media B.V.](https://www.shockmedia.nl/))发现并报告。 | 2022 年 8 月 18 日 | [Rancher 2.6.7](https://github.com/rancher/rancher/releases/tag/v2.6.7) 和 [Rancher 2.5.16](https://github.com/rancher/rancher/releases/tag/v2.5.16) |
| [CVE-2022-21951](https://github.com/rancher/rancher/security/advisories/GHSA-vrph-m5jj-c46c) | 此漏洞仅影响通过 [RKE 模板](https://rancher.com/docs/rancher/v2.6/en/admin-settings/rke-templates/)配置 [Weave](https://rancher.com/docs/rancher/v2.6/en/faq/networking/cni-providers/#weave) 容器网络接口 (CNI) 的客户。在 Rancher 2.5.0 到 2.5.13 和 Rancher 2.6.0 到 2.6.4 版本中发现了一个漏洞。如果将 CNI 选为 Weave,RKE 模板的用户界面 (UI) 不包括 Weave 密码的值。如果基于上述模板创建集群,并且将 Weave 配置为 CNI,则 Weave 中不会为[网络加密](https://www.weave.works/docs/net/latest/tasks/manage/security-untrusted-networks/)创建密码。因此,集群中的网络流量将不加密发送。 | 2022 年 5 月 24 日 | [Rancher 2.6.5](https://github.com/rancher/rancher/releases/tag/v2.6.5) 和 [Rancher 2.5.14](https://github.com/rancher/rancher/releases/tag/v2.5.14) |
@@ -33,7 +33,7 @@ API 密钥由四个组件组成:
有效期将受 `v3/settings/auth-token-max-ttl-minutes` 约束。如果超过 max-ttl,则会以 max-ttl 为有效期创建 API 密钥。
范围将限制 API 密钥,使其仅适用于指定集群的 Kubernetes API。如果集群配置了授权集群端点,你将能够直接针对集群的 API 使用设定了范围的令牌,而无需通过 Rancher Server 进行代理。有关详细信息,请参阅[授权集群端点](../../pages-for-subheaders/rancher-manager-architecture.md#4-授权集群端点)。
范围将限制 API 密钥,使其仅适用于指定集群的 Kubernetes API。如果集群配置了授权集群端点,你将能够直接针对集群的 API 使用设定了范围的令牌,而无需通过 Rancher Server 进行代理。有关详细信息,请参阅[授权集群端点](../../reference-guides/rancher-manager-architecture/communicating-with-downstream-user-clusters.md#4-授权集群端点)。
4. 单击**创建**。
@@ -15,7 +15,7 @@ title: 卸载 Rancher
- **注册集群**:集群不受影响,你可以注册集群前的方法访问该集群。
- **托管的 Kubernetes 集群**:如果你在 Kubernetes 云提供商(例如 EKS、GKE 或 AKS)中创建集群,你可以继续使用提供商的云凭证来管理集群。
- **RKE 集群**:要访问 [RKE 集群](../pages-for-subheaders/launch-kubernetes-with-rancher.md),集群必须启用了[授权集群端点(authorized cluster endpoint,ACE)](../pages-for-subheaders/rancher-manager-architecture.md#4-授权集群端点),而且你必须从 Rancher UI 下载了集群的 kubeconfig 文件。RKE 集群默认启用授权集群端点。通过使用此端点,你可以直接使用 kubectl 访问你的集群,而不用通过 Rancher Server 的[认证代理](../pages-for-subheaders/rancher-manager-architecture.md#1-认证代理)进行通信。有关配置 kubectl 以使用授权集群端点的说明,请参阅[使用 kubectl 和 kubeconfig 文件直接访问集群](../how-to-guides/new-user-guides/manage-clusters/access-clusters/use-kubectl-and-kubeconfig.md#直接使用下游集群进行身份验证)。这些集群将使用删除 Rancher 时配置的身份验证快照。
- **RKE 集群**:要访问 [RKE 集群](../pages-for-subheaders/launch-kubernetes-with-rancher.md),集群必须启用了[授权集群端点(authorized cluster endpoint,ACE)](../reference-guides/rancher-manager-architecture/communicating-with-downstream-user-clusters.md#4-认证授权端点),而且你必须从 Rancher UI 下载了集群的 kubeconfig 文件。RKE 集群默认启用授权集群端点。通过使用此端点,你可以直接使用 kubectl 访问你的集群,而不用通过 Rancher Server 的[认证代理](../reference-guides/rancher-manager-architecture/communicating-with-downstream-user-clusters.md##1-认证代理)进行通信。有关配置 kubectl 以使用授权集群端点的说明,请参阅[使用 kubectl 和 kubeconfig 文件直接访问集群](../how-to-guides/new-user-guides/manage-clusters/access-clusters/use-kubectl-and-kubeconfig.md#直接使用下游集群进行身份验证)。这些集群将使用删除 Rancher 时配置的身份验证快照。
### 如果我不想再使用 Rancher 了该怎么做?
@@ -146,7 +146,7 @@ Error: validation failed: unable to recognize "": no matches for kind "Issuer" i
### nginx-ingress-controller Pod 显示 RESTARTS
此问题的最常见原因是 `canal` pod 未能建立覆盖网络。参见 [canal Pod 显示 READY `2/3`](#canal-pod-显示-ready-2/3) 进行排查。
此问题的最常见原因是 `canal` pod 未能建立覆盖网络。参见 [canal Pod 显示 READY `2/3`](#canal-pod-显示-ready-23) 进行排查。
### Failed to dial to /var/run/docker.sock: ssh: rejected: administratively prohibited (open failed)
@@ -1,6 +1,7 @@
---
title: 升级
---
本文介绍如何升级使用 Helm 安装在 Kubernetes 集群上的 Rancher Server。这些步骤也适用于使用 Helm 进行的离线安装。
有关使用 Docker 安装的 Rancher 的升级说明,请参见[本页。](../other-installation-methods/rancher-on-a-single-node-with-docker/upgrade-docker-installed-rancher.md)
@@ -127,7 +128,7 @@ hostname: rancher.my.org
:::
如果要将 cert-manager 从 v1.5 或更早的版本升级到最新版本,请参阅 [cert-manager upgrade docs](../resources/upgrade-cert-manager.md#选项-c:升级-1.5-及以下版本的-cert-manager) 了解如何在不卸载或重新安装 Rancher 的情况下升级 cert-manager。否则,请按照以下[ Rancher 升级步骤](#rancher-升级步骤)进行操作。
如果要将 cert-manager 从 v1.5 或更早的版本升级到最新版本,请参阅 [cert-manager upgrade docs](../resources/upgrade-cert-manager.md#选项-c:升级-15-及以下版本的-cert-manager) 了解如何在不卸载或重新安装 Rancher 的情况下升级 cert-manager。否则,请按照以下[ Rancher 升级步骤](#rancher-升级步骤)进行操作。
#### Rancher 升级步骤
@@ -1,5 +1,6 @@
---
title: Rancher Helm Chart 选项
keywords: [rancher v2.0-v2.4 Helm Chart, rancher v2.0-v2.4 helm 选项, rancher v2.0-v2.4 helm chart 选项, helm chart rancher v2.0-v2.4 helm 选项 rancher v2.0-v2.4 helm chart 选项 rancher v2.0-v2.4]
---
本文提供了 Rancher Helm Chart 的配置参考。
@@ -307,7 +307,7 @@ SUSE Linux 可能有一个防火墙,默认情况下会阻止所有端口。要
sudo yast2
```
1. 导航到**安全和用户** > **防火墙** > **区域:公共** > **端口**。要在界面内导航,请参照[指示](https://doc.opensuse.org/documentation/leap/reference/html/book-reference/cha-yast-text.html#sec-yast-cli-navigate)。
1. 导航到**安全和用户** > **防火墙** > **区域:公共** > **端口**。要在界面内导航,请参照[说明](https://doc.opensuse.org/documentation/leap/reference/html/book-reference/cha-yast-text.html#sec-yast-cli-navigate)。
1. 要打开所需的端口,把它们输入到 **TCP 端口** 和 **UDP 端口** 字段。在这个例子中,端口 9796 和 10250 也被打开,用于监控。由此产生的字段应类似于以下内容:
```yaml
TCP Ports
@@ -64,9 +64,9 @@ configs:
### 3. 安装 K3s
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见[支持维护条款](https://rancher.com/support-maintenance-terms/)。
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix/all-supported-versions/)。
如需指定 K3s 版本,在运行 K3s 安装脚本时,使用 `INSTALL_K3S_VERSION` 环境变量。
如需指定 K3s(Kubernetes)版本,在运行 K3s 安装脚本时使用 `INSTALL_K3S_VERSION` 环境变量(例如 `INSTALL_K3S_VERSION="v1.24.10+k3s1"`)。
从 [Releases](https://github.com/k3s-io/k3s/releases) 页面获取 K3s 的二进制文件,该文件要匹配用于获取离线镜像的 tar 版本。
访问 [K3s 安装脚本](https://get.k3s.io)以获取 K3s 的安装脚本。
@@ -77,17 +77,16 @@ Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的
在每个 Server 上安装 K3s:
```
INSTALL_K3S_SKIP_DOWNLOAD=true ./install.sh
INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_VERSION=<VERSION> ./install.sh
```
在每个 Agent 上安装 K3s:
```
INSTALL_K3S_SKIP_DOWNLOAD=true K3S_URL=https://myserver:6443 K3S_TOKEN=mynodetoken ./install.sh
INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_VERSION=<VERSION> K3S_URL=https://<SERVER>:6443 K3S_TOKEN=<TOKEN> ./install.sh
```
请确保你将 `myserver` 替换为 Server 的 IP 或有效 DNS,并将 `mynodetoken` 替换为 Server 节点上的 node-token。
node-token 位于 Server 节点上的 `/var/lib/rancher/k3s/server/node-token`。
其中 `<SERVER>` 是 Server 的 IP 或有效 DNS,`<TOKEN>` 是可以在 `/var/lib/rancher/k3s/server/node-token` 中找到的 Server node-token。
:::note
@@ -22,7 +22,7 @@ title: 4. 安装 Rancher
1. 如果你还没有安装 `helm`,请在可访问互联网的工作站上进行本地安装。注意:参考 [Helm 版本要求](../../resources/helm-version-requirements.md)选择 Helm 版本来安装 Rancher。
2. 执行 `helm repo add` 命令,以添加包含安装 Rancher 的 Chart 的 Helm Chart 仓库。有关如何选择仓库,以及哪个仓库最适合你的用例,请参见[选择 Rancher 版本](../../installation-references/helm-chart-options.md#helm-chart-仓库)。
2. 执行 `helm repo add` 命令,以添加包含安装 Rancher 的 Chart 的 Helm Chart 仓库。有关如何选择仓库,以及哪个仓库最适合你的用例,请参见[选择 Rancher 版本](../../resources/choose-a-rancher-version.md)。
- Latest:建议用于试用最新功能
```
helm repo add rancher-latest https://releases.rancher.com/server-charts/latest
@@ -1,6 +1,7 @@
---
title: 证书故障排除
---
### 如何确定我的证书格式是否为 PEM?
你可以通过以下特征识别 PEM 格式:
@@ -15,7 +15,7 @@ Rancher 使用 cert-manager 为 Rancher 高可用部署自动生成和续期 TLS
:::note 重要提示:
如果你要将 cert-manager 从早于 1.5 的版本升级到最新版本,请按照以下[选项 C](#选项-c:升级-1.5-及以下版本的-cert-manager) 中的步骤进行操作。请注意,你无需重新安装 Rancher 即可执行此升级。
如果你要将 cert-manager 从早于 1.5 的版本升级到最新版本,请按照以下[选项 C](#选项-c升级-15-及以下版本的-cert-manager) 中的步骤进行操作。请注意,你无需重新安装 Rancher 即可执行此升级。
:::
@@ -2,6 +2,7 @@
title: Rancher AWS 快速入门指南
description: 阅读此分步 Rancher AWS 指南,以快速部署带有单节点下游 Kubernetes 集群的 Rancher Server。
---
你可以参考以下步骤,在 AWS 的单节点 K3s Kubernetes 集群中快速部署 Rancher Server,并附加一个单节点下游 Kubernetes 集群。
:::caution
@@ -2,6 +2,7 @@
title: Rancher DigitalOcean 快速入门指南
description: 阅读此分步 Rancher DigitalOcean 指南,以快速部署带有单节点下游 Kubernetes 集群的 Rancher Server。
---
你可以参考以下步骤,在 DigitalOcean 的单节点 K3s Kubernetes 集群中快速部署 Rancher Server,并附加一个单节点下游 Kubernetes 集群。
:::caution
@@ -2,6 +2,7 @@
title: Rancher GCP 快速入门指南
description: 阅读此分步 Rancher GCP 指南,以快速部署带有单节点下游 Kubernetes 集群的 Rancher Server。
---
你可以参考以下步骤,在 GCP 的单节点 K3s Kubernetes 集群中快速部署 Rancher Server,并附加一个单节点下游 Kubernetes 集群。
:::caution
@@ -15,14 +15,16 @@ title: Helm CLI 快速入门
## 在 Linux 上安装 K3s
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见 [Rancher 支持矩阵](https://www.suse.com/suse-rancher/support-matrix/all-supported-versions/)。
如需指定 K3s(Kubernetes)版本,在运行 K3s 安装脚本时使用 `INSTALL_K3S_VERSION` 环境变量(例如 `INSTALL_K3S_VERSION="v1.24.10+k3s1"`)。
在 Linux 主机上运行以下命令来安装 K3s 集群:
```
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION="***" sh -s - server --cluster-init
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=<VERSION> sh -s - server --cluster-init
```
Rancher 需要安装在支持的 Kubernetes 版本上。如需指定 K3s 版本,在运行 K3s 安装脚本时,使用 `INSTALL_K3S_VERSION` 环境变量。请参阅[支持维护条款](https://rancher.com/support-maintenance-terms/)。
`--cluster-init` 允许 K3s 使用嵌入式 etcd 作为数据存储,并能够转换为 HA 设置。请参阅[嵌入式数据库的高可用性](https://rancher.com/docs/k3s/latest/en/installation/ha-embedded/)。
保存 Linux 主机的 IP。
@@ -2,6 +2,7 @@
title: Rancher Hetzner Cloud 快速入门指南
description: 阅读此分步 Rancher Hetzner Cloud 指南,以快速部署带有单节点下游 Kubernetes 集群的 Rancher Server。
---
你可以参考以下步骤,在 Hetzner Cloud 的单节点 K3s Kubernetes 集群中快速部署 Rancher Server,并附加一个单节点下游 Kubernetes 集群。
:::caution
@@ -2,6 +2,7 @@
title: Rancher Outscale 快速入门指南
description: 阅读此分步 Rancher Outscale 指南,以快速部署带有单节点下游 Kubernetes 集群的 Rancher Server。
---
你可以参考以下步骤,在 Outscale 的单节点 K3s Kubernetes 集群中快速部署 Rancher Server,并附加一个单节点下游 Kubernetes 集群。
:::note
@@ -1,6 +1,7 @@
---
title: Vagrant 快速入门
---
你可以参考以下步骤快速部署 Rancher Server,并附加一个单节点集群。
:::caution
@@ -36,4 +36,5 @@ title: 设置容器默认资源限制
| CPU 限制 | 分配给容器的最大 CPU 量(以[毫核](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#meaning-of-cpu)为单位)。 |
| CPU 预留 | 保留给容器的最小 CPU 量(以毫核为单位)。 |
| 内存限制 | 分配给容器的最大内存量(以字节为单位)。 |
| 内存预留 | 保留给容器的最小内存量(以字节为单位)。 |
| 内存预留 | 保留给容器的最小内存量(以字节为单位)。 |
| NVIDIA GPU 限制/预留 | 分配给容器的 GPU 数量。GPU 的限制和预留始终相同。 |
@@ -228,7 +228,7 @@ Rancher 支持将 _自定义项目角色_ 分配给普通用户,而不是典
### 撤销集群成员资格
如果你撤销一个普通用户的集群成员资格,而且该用户已显式分配集群的集群 _和_ 项目的成员资格,该普通用户将[失去集群角色](#cluster-roles)但[保留项目角色](#project-roles)。换句话说,即使你已经撤销了用户访问集群和其中的节点的权限,但该普通用户仍然可以:
如果你撤销一个普通用户的集群成员资格,而且该用户已显式分配集群的集群 _和_ 项目的成员资格,该普通用户将[失去集群角色](#集群角色)但[保留项目角色](#项目角色)。换句话说,即使你已经撤销了用户访问集群和其中的节点的权限,但该普通用户仍然可以:
- 访问他们拥有成员资格的项目。
- 行使分配给他们的任何[单个项目角色](#项目角色参考)。
@@ -118,7 +118,7 @@ CATTLE_RESTRICTED_DEFAULT_ADMIN=true
你可以[更改默认权限来满足你的需要](#配置默认全局权限)。
你可以按照[步骤](#为单个用户配置全局权限)操作来将权限分配给单个用户。
权限可以[分配](#为单个用户配置全局权限)给单个用户。
如果外部身份验证提供程序支持组,你可以[同时为组中的每个成员分配角色](#为组配置全局权限)。
@@ -55,7 +55,7 @@ git 仓库中的 Helm Chart 必须在 Chart 子目录中包含其依赖项。你
## 故障排除
---
* **已知问题**:Fleet git 仓库的 clientSecretName 和 helmSecretName 密文不包含在 [backup-restore-operator](../backup-restore-and-disaster-recovery/back-up-rancher.md#1-安装-`rancher-backup`-operator) 创建的备份或恢复中。如果我们有了永久的解决方案,我们将通知社区。
* **已知问题**:Fleet git 仓库的 clientSecretName 和 helmSecretName 密文不包含在 [backup-restore-operator](../backup-restore-and-disaster-recovery/back-up-rancher.md#1-安装rancher-backup-operator) 创建的备份或恢复中。如果我们有了永久的解决方案,我们将通知社区。
* **临时解决方法:** <br/>
默认情况下,用户定义的密文不会在 Fleet 中备份。如果执行灾难恢复或将 Rancher 迁移到新集群,则需要重新创建密文。要修改 resourceSet 以包含需要备份的其他资源,请参阅[此文档](https://github.com/rancher/backup-restore-operator#user-flow)。
@@ -20,7 +20,10 @@ title: 为 Rancher 设置高可用 K3s Kubernetes 集群
以下说明假设你已参见[此章节](../infrastructure-setup/ha-k3s-kubernetes-cluster.md)配置好两个节点,一个负载均衡器,一个 DNS 记录和一个外部 MySQL 数据库。
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见[支持维护条款](https://rancher.com/support-maintenance-terms/)。如需指定 K3s 版本,请在运行 K3s 安装脚本时,使用 `INSTALL_K3S_VERSION` 环境变量。
Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的 Rancher 版本支持哪些 Kubernetes 版本,请参见 [Rancher 支持矩阵](https://rancher.com/support-maintenance-terms/)。
如需指定 K3s(Kubernetes)版本,在运行 K3s 安装脚本时使用 `INSTALL_K3S_VERSION` 环境变量(例如 `INSTALL_K3S_VERSION="v1.24.10+k3s1"`)。
## 安装 Kubernetes
### 1. 安装 Kubernetes 并设置 K3s Server
@@ -30,24 +33,21 @@ Rancher 需要安装在支持的 Kubernetes 版本上。如需了解你使用的
1. 连接到你准备用于运行 Rancher Server 的其中一个 Linux 节点。
1. 在 Linux 节点上,运行以下命令来启动 K3s Server,并将其连接到外部数据存储。
```
curl -sfL https://get.k3s.io | sh -s - server \
--datastore-endpoint="mysql://username:password@tcp(hostname:3306)/database-name"
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=<VERSION> sh -s - server \
--datastore-endpoint="<DATASTORE_ENDPOINT>"
```
要指定 K3s 版本,使用 `INSTALL_K3S_VERSION` 环境变量:
```sh
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=vX.Y.Z sh -s - server \
--datastore-endpoint="mysql://username:password@tcp(hostname:3306)/database-name"
```
其中 `<DATASTORE_ENDPOINT>` 是数据存储的连接 URI。例如,如果你使用的是 MySQL,则为 `mysql://username:password@tcp(hostname:3306)/database-name`。有效的数据存储包括 etcd、MySQL、PostgreSQL 或 SQLite(默认)。
:::note
注意:你也可以使用 `$K3S_DATASTORE_ENDPOINT` 环境变量来传递数据存储端点。
你也可以使用 `$K3S_DATASTORE_ENDPOINT` 环境变量来传递数据存储端点。
:::
1. 在第二个 K3s Server 节点上运行同样的命令。
### 2. 确认 K3s 正在运行
### 2. 检查 K3s 是否正常运行
在其中一个 K3s Server 节点上运行以下命令,来确认 K3s 是否已经设置成功:
```
@@ -67,17 +67,17 @@ ip-172-31-63-88 Ready master 6m8s v1.17.2+k3s1
sudo k3s kubectl get pods --all-namespaces
```
**结果**:你已成功配置一个 K3s Kubernetes 集群。
**结果**:你已成功配置 K3s Kubernetes 集群。
### 3. 保存并开始使用 kubeconfig 文件
你在每个 Rancher Server 节点上安装 K3s 时,会在每个节点中的 `/etc/rancher/k3s/k3s.yaml` 位置上创建一个`kubeconfig` 文件。该文件包含访问集群的凭证。请将该文件保存在安全的位置。
在每个 Rancher Server 节点安装 K3s 时,会在每个节点的 `/etc/rancher/k3s/k3s.yaml` 中生成一个 `kubeconfig` 文件。该文件包含访问集群的凭证。请将该文件保存在安全的位置。
要使用此 `kubeconfig` 文件:
如要使用该 `kubeconfig` 文件:
1. 安装 [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl)(Kubernetes 命令行工具)。
2. 复制 `/etc/rancher/k3s/k3s.yaml` 文件并保存到你本地主机的 `~/.kube/config` 目录中。
3. 在 `kubeconfig` 文件中,`server` 的参数为 localhost。你需要将 `server` 配置为负载均衡器的 DNS,并指定端口 6443(通过端口 6443 访问 Kubernetes API Server 会通过端口 6443,通过端口 80 和 443 访问 Rancher Server)。以下是一个 `k3s.yaml` 示例:
1. 安装 Kubernetes 命令行工具 [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl)。
2. 复制 `/etc/rancher/k3s/k3s.yaml` 文件并保存到本地主机的 `~/.kube/config` 目录上。
3. 在 kubeconfig 文件中,`server` 的参数为 localhost。你需要将 `server` 配置为负载均衡器的 DNS,并指定端口 6443(通过端口 6443 访问 Kubernetes API Server,通过端口 80 和 443 访问 Rancher Server)。以下是一个 `k3s.yaml` 示例:
```yml
apiVersion: v1
@@ -35,6 +35,10 @@ kubectl create clusterrolebinding cluster-admin-binding \
EKS 集群必须至少有一个托管节点组才能导入 Rancher 或通过 Rancher 进行配置。
### GKE 集群
GKE 集群必须在 Standard 模式下运行。不支持 GKE Autopilot 集群。有关 GKE 模式之间差异,请参阅[比较 GKE Autopilot 和 Standard](https://cloud.google.com/kubernetes-engine/docs/resources/autopilot-standard-feature-comparison)。
## 注册集群
1. 点击 **☰ > 集群管理**。
@@ -2,7 +2,7 @@
title: 创建阿里云 ACK 集群
---
你可以使用 Rancher 创建托管在阿里云 Alibaba Cloud Kubernetes (ACK) 中的集群。Rancher 已经为 ACK 实现并打包了针对 ACK 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 ACK 集群,你需要[启用 ACK 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活/停用集群驱动)。启用集群驱动后,你可以开始配置 ACK 集群。
你可以使用 Rancher 创建托管在阿里云 Alibaba Cloud Kubernetes (ACK) 中的集群。Rancher 已经为 ACK 实现并打包了针对 ACK 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 ACK 集群,你需要[启用 ACK 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活停用集群驱动)。启用集群驱动后,你可以开始配置 ACK 集群。
## Rancher 之外的先决条件
@@ -2,7 +2,7 @@
title: 创建华为 CCE 集群
---
你可以使用 Rancher 创建托管在华为云容器引擎 (CCE) 中的集群。Rancher 已经为 CCE 实现并打包了针对 CCE 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 CCE 集群,你需要[启用 CCE 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活/停用集群驱动)。启用集群驱动后,你可以开始配置 CCE 集群。
你可以使用 Rancher 创建托管在华为云容器引擎 (CCE) 中的集群。Rancher 已经为 CCE 实现并打包了针对 CCE 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 CCE 集群,你需要[启用 CCE 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活停用集群驱动)。启用集群驱动后,你可以开始配置 CCE 集群。
## 华为先决条件
@@ -2,7 +2,7 @@
title: 创建腾讯 TKE 集群
---
你可以使用 Rancher 创建托管在腾讯 Tencent Kubernetes Engine (TKE) 中的集群。Rancher 已经为 TKE 实现并打包了针对 TKE 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 TKE 集群,你需要[启用 TKE 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活/停用集群驱动)。启用集群驱动后,你可以开始配置 TKE 集群。
你可以使用 Rancher 创建托管在腾讯 Tencent Kubernetes Engine (TKE) 中的集群。Rancher 已经为 TKE 实现并打包了针对 TKE 的[集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md),但是默认情况下,这个集群驱动的状态是 `inactive`。为了启动 TKE 集群,你需要[启用 TKE 集群驱动](../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-cluster-drivers.md#激活停用集群驱动)。启用集群驱动后,你可以开始配置 TKE 集群。
## 腾讯先决条件
@@ -11,7 +11,7 @@ description: 你可以为工作负载添加 Ingress,从而提供负载均衡
1. 单击**创建**。
1. 从下拉列表中选择一个现有的**命名空间**。
1. 输入 Ingress 的**名称**。
1. 创建 Ingress 转发**规则**。有关配置规则的帮助,请参阅[本节](./ingress-configuration.md)。如果你的任何 Ingress 规则处理加密端口的请求,请添加证书以加密/解密通信。
1. [创建](./ingress-configuration.md) Ingress 转发**规则**。如果你的任何 Ingress 规则处理加密端口的请求,请添加证书以加密/解密通信。
1. **可选**:点击**添加规则**来创建其他 Ingress 规则。例如,在创建 Ingress 规则以引导主机名请求后,你可能想创建一个默认后端来处理 404。
1. 点击右下角的**创建**。
@@ -20,7 +20,7 @@ RKE2/K3s 配置是基于 Cluster API (CAPI) 上游框架之上构建的,这导
- 编辑集群并启用`删除前清空`时,会删除现有的 controlplane 节点和 worker 并创建新节点。
- 在配置节点并执行缩减操作时,可能会删除当前配置的节点并配置新的节点以达到所需的节点数,而不是缩减所需的节点数量。这是 Cluster API 的一个问题,即将发布的版本会修复这个问题。一旦修复,Rancher 会更新文档。
- 对于 Rancher v2.6.6 及更早版本,在配置节点并执行缩减操作时,可能会删除当前配置的节点并配置新的节点以达到所需的节点数,而不是缩减所需的节点数量。请注意,这是 Cluster API 的一个错误,已在较新的 Rancher 版本中修复。
如果你是习惯于 RKE1 配置的用户,请注意新的 RKE2 行为。
@@ -71,7 +71,7 @@ title: 创建 DigitalOcean 集群
1. 单击 **DigitalOcean**。
1. 选择一个**云凭证**。如果存在多个则需要选择。否则,它是预选的。
1. 输入**集群名称**。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#rke2-中的节点角色)了解角色分配和计数的建议。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#节点角色)了解角色分配和计数的建议。
1. 为每个主机池定义主机配置。有关配置选项的信息,请参阅 [DigitalOcean 主机配置参考](../../../../reference-guides/cluster-configuration/downstream-cluster-configuration/machine-configuration/digitalocean.md)。
1. 使用**集群配置**,选择要安装的 Kubernetes 版本、要使用的网络提供商,以及是否启用项目网络隔离。有关配置集群的帮助,请参阅 [RKE2 集群配置参考](../../../../reference-guides/cluster-configuration/rancher-server-configuration/rke2-cluster-configuration.md)。
1. 使用**成员角色**为集群配置用户授权。点击**添加成员**添加可以访问集群的用户。使用**角色**下拉菜单为每个用户设置权限。
@@ -103,7 +103,7 @@ description: 了解使用 Rancher 创建 Amazon EC2 集群所需的先决条件
1. 单击 **Amazon EC2**。
1. 选择一个**云凭证**。如果存在多个则需要选择。否则,它是预选的。
1. 输入**集群名称**。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#rke2-中的节点角色)了解角色分配和计数的建议。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#节点角色)了解角色分配和计数的建议。
1. 为每个主机池定义主机配置。有关配置选项的信息,请参阅 [EC2 主机配置参考](../../../../reference-guides/cluster-configuration/downstream-cluster-configuration/machine-configuration/amazon-ec2.md)。
1. 使用**集群配置**,选择要安装的 Kubernetes 版本、要使用的网络提供商,以及是否启用项目网络隔离。有关配置集群的帮助,请参阅 [RKE2 集群配置参考](../../../../reference-guides/cluster-configuration/rancher-server-configuration/rke2-cluster-configuration.md)。
1. 使用**成员角色**为集群配置用户授权。点击**添加成员**添加可以访问集群的用户。使用**角色**下拉菜单为每个用户设置权限。
@@ -112,7 +112,7 @@ az ad sp create-for-rbac \
1. 单击 **Azure**。
1. 选择一个**云凭证**。如果存在多个则需要选择。否则,它是预选的。
1. 输入**集群名称**。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#rke2-中的节点角色)了解角色分配和计数的建议。
1. 为每个 Kubernetes 角色创建一个主机池。请参阅[最佳实践](../../../../pages-for-subheaders/use-new-nodes-in-an-infra-provider.md#节点角色)了解角色分配和计数的建议。
1. 为每个主机池定义主机配置。有关配置选项的信息,请参阅 [Azure 主机配置参考](../../../../reference-guides/cluster-configuration/downstream-cluster-configuration/machine-configuration/azure.md)。
1. 使用**集群配置**,选择要安装的 Kubernetes 版本、要使用的网络提供商,以及是否启用项目网络隔离。有关配置集群的帮助,请参阅 [RKE2 集群配置参考](../../../../reference-guides/cluster-configuration/rancher-server-configuration/rke2-cluster-configuration.md)。
1. 使用**成员角色**为集群配置用户授权。点击**添加成员**添加可以访问集群的用户。使用**角色**下拉菜单为每个用户设置权限。
@@ -4,7 +4,7 @@ title: 在 Nutanix AOS 中配置 Kubernetes 集群
要使用 Rancher 在 Nutanix AOS (AHV) 中安装 [RKE](https://rancher.com/docs/rke/latest/en/) Kubernetes 集群:
1. 找到 Rancher 的内置 Nutanix [主机驱动并激活它](../../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-node-drivers.md#激活/停用主机驱动)。
1. 找到 Rancher 的内置 Nutanix [主机驱动并激活它](../../../authentication-permissions-and-global-configuration/about-provisioning-drivers/manage-node-drivers.md#激活停用主机驱动)。
1. 创建一个节点模板,Rancher 将使用该模板在 Nutanix AOS 中配置节点。
@@ -7,8 +7,6 @@ description: "了解如何通过 kubectl Shell 使用 kubectl,或通过 kubect
有关使用 kubectl 的更多信息,请参阅 [Kubernetes 文档:kubectl 概述](https://kubernetes.io/docs/reference/kubectl/overview/)。
### 在 Rancher UI 中使用 kubectl shell 访问集群
你可以通过登录 Rancher 并在 UI 中打开 kubectl shell 来访问和管理你的集群。你无需进一步配置。
@@ -47,7 +45,7 @@ Rancher 会发现并显示由 `kubectl` 创建的资源。但是在发现资源
本节旨在帮助你设置访问 [RKE 集群的替代方法](../../../../pages-for-subheaders/launch-kubernetes-with-rancher.md)。
此方法仅适用于启用了[授权集群端点](../../../../pages-for-subheaders/rancher-manager-architecture.md#4-授权集群端点)的 RKE、RKE2 和 K3s集群。在 Rancher 创建集群时,Rancher 会生成一个 kubeconfig 文件,其中包含用于访问集群的额外 kubectl 上下文。该上下文允许你使用 kubectl 通过下游集群进行身份验证,而无需通过 Rancher 进行身份验证。有关授权集群端点如何工作的详细说明,请参阅[此页面](authorized-cluster-endpoint.md)。
此方法仅适用于启用了[授权集群端点](../../../../reference-guides/rancher-manager-architecture/communicating-with-downstream-user-clusters.md#4-授权集群端点)的 RKE、RKE2 和 K3s集群。在 Rancher 创建集群时,Rancher 会生成一个 kubeconfig 文件,其中包含用于访问集群的额外 kubectl 上下文。该上下文允许你使用 kubectl 通过下游集群进行身份验证,而无需通过 Rancher 进行身份验证。有关授权集群端点如何工作的详细说明,请参阅[此页面](authorized-cluster-endpoint.md)。
在 RKE2 和 K3s 集群上,你需要[手动启用](../../kubernetes-clusters-in-rancher-setup/register-existing-clusters.md#对-rke2-和-k3s-集群的授权集群端点支持)授权集群端点。
@@ -72,7 +70,7 @@ CURRENT NAME CLUSTER AUTHINFO N
使用第二个上下文 `my-cluster-controlplane-1`,你将使用授权集群端点进行身份验证,直接与下游 RKE 集群通信。
我们建议使用具有授权集群端点的负载均衡器。有关详细信息,请参阅[推荐的架构](../../../../reference-guides/rancher-manager-architecture/architecture-recommendations.md#授权集群端点架构)。
我们建议使用具有授权集群端点的负载均衡器。有关详细信息,请参阅[推荐的架构](../../../../reference-guides/rancher-manager-architecture/architecture-recommendations.md#授权集群端点架构-ace)。
现在你已经有了直接使用集群进行身份验证所需的上下文名称,你可以在运行 kubectl 命令时将上下文名称作为选项传入。根据你的集群是否定义了 FQDN,这些命令会有所不同。以下几节提供了示例。
@@ -24,7 +24,7 @@ title: 添加 Pod 安全策略
4. 从**默认 Pod 安全策略**下拉列表中,选择要应用于集群的策略。
Rancher 支持了`受限`和`不受限`的[策略](../authentication-permissions-and-global-configuration/create-pod-security-policies.md#默认-psp),你也可以[创建自定义策略](../authentication-permissions-and-global-configuration/create-pod-security-policies.md#默认-psp)。
Rancher 支持了`受限`和`不受限`的[策略](../authentication-permissions-and-global-configuration/create-pod-security-policies.md#默认-psp),你也可以[创建自定义策略](../authentication-permissions-and-global-configuration/create-pod-security-policies.md#创建-psp)。
5. 单击**保存**。
@@ -31,3 +31,32 @@ services:
- "/etc/iscsi:/etc/iscsi"
- "/sbin/iscsiadm:/sbin/iscsiadm"
```
如果你使用的是 RHEL 7.9,你需要挂载文件 `/usr/lib64/libcrypto.so.10`,如下例所示。
```
services:
kubelet:
extra_binds:
- "/etc/iscsi:/etc/iscsi"
- "/sbin/iscsiadm:/sbin/iscsiadm"
- "/usr/lib64/libcrypto.so.10:/usr/lib/libcrypto.so.10"
```
如果你使用的是 RHEL 8.6,你需要挂载文件 `/usr/lib64/libcrypto.so.1.1`,如下例所示。
```
services:
kubelet:
extra_binds:
- "/etc/iscsi:/etc/iscsi"
- "/sbin/iscsiadm:/sbin/iscsiadm"
- "/usr/lib64/libcrypto.so.1.1:/usr/lib/libcrypto.so.1.1"
```
:::tip
要验证 iscsiadm 是否正常工作,你可以在任何节点上运行命令 `docker exec kubelet iscsiadm --version`。
:::
@@ -14,7 +14,7 @@ title: 设置现有存储
1. [设置持久存储](#1-设置持久存储)。
2. [添加一个引用持久存储的 PersistentVolume](#2-添加一个引用持久存储的-persistentvolume)。
3. [为使用 StatefulSet 部署的 Pod 使用 PersistentVolume](#3-为使用-statefulset-部署的-pod-使用存储类)。
3. [为使用 StatefulSet 部署的 Pod 使用存储类](#3-为使用-statefulset-部署的-pod-使用存储类)
### 先决条件

Some files were not shown because too many files have changed in this diff Show More