[zh-2.9] Sync with PR#1223 Remove multi-cluster apps references

This commit is contained in:
Billy Tat
2024-06-17 14:21:00 -07:00
parent f7f742b066
commit 2344d535ff
11 changed files with 7 additions and 285 deletions
@@ -15,7 +15,7 @@ title: 功能开关
以下是 Rancher 中可用的功能开关列表。如果你是从旧 Rancher 版本升级的,你可能会在 Rancher UI 中看到其他功能,例如 `proxy``dashboard`(均[已中断](/versioned_docs/version-2.5/reference-guides/installation-references/feature-flags.md)):
- `continuous-delivery`:允许从 Fleet 中单独禁用 Fleet GitOps。有关详细信息,请参阅[持续交付](../../../how-to-guides/advanced-user-guides/enable-experimental-features/continuous-delivery.md)。
- `fleet`v2.6 及更高版本的 Rancher 配置框架需要 Fleet。即使你在旧 Rancher 版本中禁用了该标志,该标志也将在升级时自动启用。有关详细信息,请参阅 [Fleet - GitOps at Scale](../../../how-to-guides/new-user-guides/deploy-apps-across-clusters/fleet.md)。
- `fleet`v2.6 及更高版本的 Rancher 配置框架需要 Fleet。即使你在旧 Rancher 版本中禁用了该标志,该标志也将在升级时自动启用。有关详细信息,请参阅 [Fleet - GitOps at Scale](../../../integrations-in-rancher/fleet/fleet.md)。
- `harvester`:管理 Virtualization Management 页面的访问。用户可以在该页面直接导航到 Harvester 集群并访问 Harvester UI。有关详细信息,请参阅 [Harvester 集成](../../../integrations-in-rancher/harvester/overview.md)。
- `istio-virtual-service-ui`:启用[可视界面](../../../how-to-guides/advanced-user-guides/enable-experimental-features/istio-traffic-management-features.md)来创建、读取、更新和删除 Istio 虚拟服务和目标规则,这些都是 Istio 流量管理功能。
- `legacy`:启用 2.5.x 及更早版本的一组功能,这些功能正逐渐被新的实现淘汰。它们是已弃用以及后续可用于新版本的功能组合。新的 Rancher 安装会默认禁用此标志。如果你从以前版本的 Rancher 升级,此标志会启用。
@@ -176,7 +176,7 @@ kubectl edit -n cattle-system deployment/cattle-cluster-agent
### 5. 强制更新 Fleet 集群,从而将 fleet-agent 重新连接到 Rancher
在 Rancher UI 的[持续交付](../../../how-to-guides/new-user-guides/deploy-apps-across-clusters/fleet.md#在-rancher-ui-中访问-fleet)中,为集群选择“强制更新”,来允许下游集群中的 fleet-agent 成功连接到 Rancher。
在 Rancher UI 的[持续交付](../../../integrations-in-rancher/fleet/overview.md#在-rancher-ui-中访问-fleet)中,为集群选择“强制更新”,来允许下游集群中的 fleet-agent 成功连接到 Rancher。
#### 为什么要执行这一步骤?
@@ -256,7 +256,7 @@ helm ls -n cattle-system
### 5. 强制更新 Fleet 集群,从而将 fleet-agent 重新连接到 Rancher
在 Rancher UI 的[持续交付](../../../how-to-guides/new-user-guides/deploy-apps-across-clusters/fleet.md#在-rancher-ui-中访问-fleet)中,为集群选择“强制更新”,来允许下游集群中的 fleet-agent 成功连接到 Rancher。
在 Rancher UI 的[持续交付](../../../integrations-in-rancher/fleet/overview.md#在-rancher-ui-中访问-fleet)中,为集群选择“强制更新”,来允许下游集群中的 fleet-agent 成功连接到 Rancher。
#### 为什么要执行这一步骤?
@@ -2,7 +2,7 @@
title: 持续交付
---
Rancher 中预装的 [Fleet](../../../how-to-guides/new-user-guides/deploy-apps-across-clusters/fleet.md) 无法完全禁用。但是,你可以使用 `continuous-delivery` 功能开关来禁用 GitOps 持续交付的 Fleet 功能。
Rancher 中预装的 [Fleet](../../../integrations-in-rancher/fleet/fleet.md) 无法完全禁用。但是,你可以使用 `continuous-delivery` 功能开关来禁用 GitOps 持续交付的 Fleet 功能。
如需启用或禁用此功能,请参见[启用实验功能主页](../../../pages-for-subheaders/enable-experimental-features.md)中的说明。
@@ -21,7 +21,6 @@ Terraform 是一个服务器配置工具。它使用基础架构即代码,支
Terraform 支持:
- 定义几乎任何类型的基础架构即代码,包括服务器、数据库、负载均衡器、监控、防火墙设置和 SSL 证书
- 使用应用商店应用和多集群应用
- 跨多个平台(包括 Rancher 和主要云提供商)对基础设施进行编码
- 将基础架构即代码提交到版本控制
- 轻松重复使用基础设施的配置和设置
@@ -42,7 +42,7 @@ Rancher 认证代理可以与以下外部认证服务集成。
## 用户和组
Rancher 依赖用户和组来决定允许谁登录 Rancher 以及他们可以访问哪些资源。当使用外部认证时,外部认证系统会根据用户提供组的信息。这些用户和组被赋予了集群、项目、多集群应用以及全局 DNS 提供商和条目等资源的特定角色。当你对组进行授权时,在认证服务中所有属于这个组中的用户都有访问指定的资源的权限。有关角色和权限的更多信息,请查看 [RBAC](../manage-role-based-access-control-rbac/manage-role-based-access-control-rbac.md)。
Rancher 依赖用户和组来决定允许谁登录 Rancher 以及他们可以访问哪些资源。当使用外部认证时,外部认证系统会根据用户提供组的信息。这些用户和组被赋予了集群、项目及全局 DNS 提供商和条目等资源的特定角色。当你对组进行授权时,在认证服务中所有属于这个组中的用户都有访问指定的资源的权限。有关角色和权限的更多信息,请查看 [RBAC](../manage-role-based-access-control-rbac/manage-role-based-access-control-rbac.md)。
:::note
@@ -4,7 +4,7 @@ title: 用户和组
Rancher 依赖用户和组来决定允许登录到 Rancher 的用户,以及他们可以访问哪些资源。你配置外部身份验证提供程序后,该提供程序的用户将能够登录到你的 Rancher Server。用户登录时,验证提供程序将向你的 Rancher Server 提供该用户所属的组列表。
你可以通过向资源添加用户或组,来控制其对集群、项目、多集群应用、全局 DNS 提供程序和相关资源的访问。将组添加到资源时,身份验证提供程序中属于该组的所有用户都将能够使用组的权限访问该资源。有关角色和权限的更多信息,请参见 [RBAC](../../../../pages-for-subheaders/manage-role-based-access-control-rbac.md)。
你可以通过向资源添加用户或组,来控制其对集群、项目、全局 DNS 提供程序和相关资源的访问。将组添加到资源时,身份验证提供程序中属于该组的所有用户都将能够使用组的权限访问该资源。有关角色和权限的更多信息,请参见 [RBAC](../../../../pages-for-subheaders/manage-role-based-access-control-rbac.md)。
## 管理成员
@@ -1,21 +0,0 @@
---
title: 跨集群部署应用
---
<head>
<link rel="canonical" href="https://ranchermanager.docs.rancher.com/zh/how-to-guides/new-user-guides/deploy-apps-across-clusters"/>
</head>
不同版本的 Rancher 提供了几种不同的方式来部署跨集群应用。
## Fleet
Rancher v2.5 及更高版本使用 Fleet 跨集群部署应用
使用 Fleet 的持续交付是大规模的 GitOps。如需更多信息,请参阅 [Fleet](fleet.md)。
### 多集群应用
在 v2.5 之前的 Rancher 中,多集群应用功能用于跨集群部署应用。多集群应用功能已弃用,但仍可作为旧版功能使用。
详情请参阅[此文档](multi-cluster-apps.md)。
@@ -1,67 +0,0 @@
---
title: 使用 Feet 进行持续交付
---
使用 Fleet 的持续交付是大规模的 GitOps。你可以使用 Fleet 管理多达一百万个集群。Fleet 非常轻量,可以很好地用于[单个集群](https://fleet.rancher.io/installation#default-install),但是在你达到[大规模](https://fleet.rancher.io/installation#configuration-for-multi-cluster)时,它能发挥更强的实力。此处的大规模指的是大量集群、大量部署、或组织中存在大量团队的情况。
Fleet 是一个独立于 Rancher 的项目,你可以使用 Helm 将它安装在任何 Kubernetes 集群上。
## 架构
有关 Fleet 工作原理的信息,请参阅[此页面](../../../integrations-in-rancher/fleet-gitops-at-scale/architecture.md)。
## 在 Rancher UI 中访问 Fleet
Fleet 预装在 Rancher 中,通过 Rancher UI 中的**持续交付**选项管理。有关持续交付和 Fleet 故障排除技巧的更多信息,请参阅[此处](https://fleet.rancher.io/troubleshooting)。
用户可以通过遵循 **gitops** 的实践,利用持续交付将应用部署到 git 仓库中的 Kubernetes 集群,而无需任何手动操作。
按照以下步骤在 Rancher UI 中访问持续交付:
1. 单击 **☰ > 持续交付**。
1. 在菜单顶部选择你的命名空间,注意以下几点:
- 默认情况下会选中 `fleet-default`,其中包括注册到 Rancher 的所有下游集群。
- 你可以切换到仅包含 `local` 集群的 `fleet-local`,或者创建自己的工作空间,并将集群分配和移动到该工作空间。
- 然后,你可以单击左侧导航栏上的**集群**来管理集群。
1. 单击左侧导航栏上的 **Git 仓库**将 git 仓库部署到当前工作空间中的集群中。
1. 选择你的 [git 仓库](https://fleet.rancher.io/gitrepo-add)和[目标集群/集群组](https://fleet.rancher.io/gitrepo-targets)。你还可以单击左侧导航栏中的**集群组**在 UI 中创建集群组。
1. 部署 git 仓库后,你可以通过 Rancher UI 监控应用。
## Windows 支持
有关对具有 Windows 节点的集群的支持的详细信息,请参阅[此页面](../../../integrations-in-rancher/fleet-gitops-at-scale/windows-support.md)。
## GitHub 仓库
你可以单击此处获取 [Fleet Helm Chart](https://github.com/rancher/fleet/releases/latest)。
## 在代理后使用 Fleet
有关在代理后使用 Fleet 的详细信息,请参阅[此页面](../../../integrations-in-rancher/fleet-gitops-at-scale/use-fleet-behind-a-proxy.md)。
## Helm Chart 依赖
由于用户需要完成依赖列表,因此为了成功部署具有依赖项的 Helm Chart,你必须手动运行命令(如下所列)。如果你不这样做,并继续克隆仓库并运行 `helm install`,由于依赖项将丢失,因此你的安装将失败。
git 仓库中的 Helm Chart 必须在 Chart 子目录中包含其依赖项。你必须手动运行 `helm dependencies update $chart`,或在本地运行 `helm dependencies build $chart`,然后将完整的 Chart 目录提交到你的 git 仓库。请注意,你需要使用适当的参数来修改命令。
## 故障排除
---
* **已知问题**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)。
---
## 文档
Fleet 文档链接:[https://fleet.rancher.io/](https://fleet.rancher.io/)
@@ -1,175 +0,0 @@
---
title: 多集群应用
---
通常,大多数应用都部署在单个 Kubernetes 集群上,但有时你可能需要跨不同集群和/或项目部署同一应用的多个副本。在 Rancher 中,_多集群应用_ 指的是使用 Helm Chart 跨多个集群部署的应用。由于能够跨多个集群部署相同的应用,因此可以避免在每个集群上重复执行相同的应用配置操作而引入的人为错误。使用多集群应用,你可以通过自定义在所有项目/集群中使用相同的配置,并根据你的目标项目更改配置。由于多集群应用被视为单个应用,因此更容易管理和维护。
全局应用商店中的任何 Helm Chart 都可用于部署和管理多集群应用。
创建多集群应用后,你可以对全局 DNS 条目进行编程,以便更轻松地访问应用。
## 先决条件
### 权限
要在 Rancher 中创建多集群应用,你至少需要具有以下权限之一:
- 目标集群中的[项目成员角色](../authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/cluster-and-project-roles.md#项目角色),能够创建、读取、更新和删除工作负载
- 目标项目所在集群的[集群所有者角色](../authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/cluster-and-project-roles.md#集群角色)
### 启用旧版功能
由于 Rancher 2.5 已弃用多集群应用并使用 Fleet 取代它,你需要使用功能开关以启用多集群应用。
1. 在左上角,单击 **☰ > 全局设置**。
1. 单击**功能开关**。
1. 转到 `Legacy` 功能开关并单击**激活**。
## 启动多集群应用
1. 在左上角,单击**☰ > 多集群应用**。
1. 点击**启动**。
1. 找到要启动的应用。
1. (可选)查看来自 Helm Chart `README` 的详细描述。
1. 在**配置选项**下输入多集群应用的**名称**。默认情况下,此名称还用于在每个[目标项目](#目标)中为多集群应用创建一个 Kubernetes 命名空间。命名空间命名为 `<MULTI-CLUSTER_APPLICATION_NAME>-<PROJECT_ID>`
1. 选择一个**模板版本**。
1. 完成[多集群应用配置选项](#多集群应用配置选项)以及[应用配置选项](#应用配置选项)。
1. 选择可以[与多集群应用交互](#成员)的**成员**。
1. 添加[自定义应用配置答案](#覆盖特定项目的应用配置选项),这将更改默认应用配置答案中特定项目的配置。
1. 查看**预览**中的文件。确认后,单击**启动**。
**结果**:应用已部署到所选的命名空间。你可以从项目中查看应用状态。
## 多集群应用配置选项
Rancher 将多集群应用的配置选项分为以下几个部分。
### 目标
在**目标**部分中,选择用于部署应用的项目。项目列表仅显示你有权访问的项目。所选的每个项目都会被添加到列表中,其中显示了所选的集群名称和项目名称。要移除目标项目,单击 **-**。
### 升级
在**升级**部分中,选择升级应用时需要使用的升级策略。
* **滚动更新(批量)**:选择此升级策略时,每次升级的应用数量取决于选择的**批量大小**和**间隔**(多少秒后才开始下一批更新)。
* **同时升级所有应用**:选择此升级策略时,所有项目的所有应用都将同时升级。
### 角色
在**角色**中,你可以定义多集群应用的角色。通常,当用户[启动商店应用](../../../pages-for-subheaders/helm-charts-in-rancher.md)时,该用户的权限会用于创建应用所需的所有工作负载/资源。
多集群应用由 _系统用户_ 部署,系统用户还被指定为所有底层资源的创建者。由于实际用户可以从某个目标项目中删除,因此使用 _系统用户_ 而不是实际用户。如果实际用户从其中一个项目中删除,则该用户将不再能够管理其他项目的应用。
Rancher 允许你选择**项目**或**集群**的角色选项。Rancher 将允许你根据用户的权限使用其中一个角色进行创建。
- **项目** - 相当于[项目成员](../authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/cluster-and-project-roles.md#项目角色)。如果你选择此角色,Rancher 将检查用户是否在所有目标项目中至少具有[项目成员](../authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/cluster-and-project-roles.md#项目角色)的角色。虽然用户可能没有被明确授予 _项目成员_ 角色,但如果用户是[管理员](../authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/global-permissions.md)、[集群所有者](../authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/cluster-and-project-roles.md#集群角色)或[项目所有者](../authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/cluster-and-project-roles.md#项目角色),则认为该用户具有所需的权限级别。
- **集群** - 相当于[集群所有者](../authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/cluster-and-project-roles.md#集群角色)。如果你选择此角色,Rancher 将检查用户是否在所有目标项目中至少具有[集群所有者](../authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/cluster-and-project-roles.md#项目角色)的角色。虽然用户可能没有被明确授予 _集群所有者_ 角色,但如果用户是[管理员](../authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/global-permissions.md),则认为该用户具有所需的权限级别。
在启动应用时,Rancher 会在启动应用之前确认你在目标项目中是否拥有这些权限。
:::note
某些应用(如 _Grafana__Datadog_)需要访问特定集群级别的资源。这些应用将需要 _集群_ 角色。如果你之后发现应用需要集群角色,则可以升级多集群应用以更新角色。
:::
## 应用配置选项
对于每个 Helm Chart,你需要输入一个必须的答案列表才能成功部署 Chart。由于 Rancher 会将答案作为 `--set` 标志传递给 Helm,因此你必须按照[使用 Helm:–set 的格式和限制](https://helm.sh/docs/intro/using_helm/#the-format-and-limitations-of---set)中的语法规则来格式化这些答案。
:::note 示例
当输入的答案包含用逗号分隔的两个值(即 `abc, bcd`)时,你需要用双引号将值括起来(即 ``"abc, bcd" ``)。
:::
### 使用 questions.yml 文件
如果你部署的 Helm Chart 包含 `questions.yml` 文件,Rancher UI 会将此文件转换成易于使用的 UI 来收集问题的答案。
### 原生 Helm Chart 的键值对
对于原生 Helm Chart(即来自 **Helm Stable** 或 **Helm Incubator** 应用商店或自定义 Helm Chart 仓库的 Chart),答案会在 **Answers** 中以键值对的形式提供。这些答案能覆盖默认值。
### 成员
默认情况下,多集群应用只能由应用的创建者管理。你可以在**成员**中添加其他用户,以便这些用户管理或查看多集群应用。
1. 在**成员**搜索框中键入成员的名称,查找要添加的用户。
2. 为该成员选择**访问类型**。多集群项目有三种访问类型,请仔细阅读并了解这些访问类型的含义,以了解多集群应用权限的启用方式。
- **所有者**:此访问类型可以管理多集群应用的任何配置,包括模板版本、[多集群应用配置选项](#多集群应用配置选项),[应用配置选项](#应用配置选项),可以与多集群应用交互的成员,以及[自定义应用配置答案](#覆盖特定项目的应用配置选项)。由于多集群应用的创建使用与用户不同的权限集,因此多集群应用的任何 _所有者_ 都可以管理/删除[目标项目](#目标)中的应用,而不需要显式授权访问这些项目。请仅为受信任的用户配置此访问类型。
- **成员**:此访问类型只能修改模板版本、[应用配置选项](#应用配置选项)和[自定义应用配置答案](#覆盖特定项目的应用配置选项)。由于多集群应用的创建使用与用户不同的权限集,因此多集群应用的任何 _成员_ 都可以修改应用,而不需要显式授权访问这些项目。请仅为受信任的用户配置此访问类型。
- **只读**:此访问类型不能修改多集群应用的任何配置选项。用户只能查看这些应用。
:::caution
请确保仅为受信任的用户授予 _所有者_ 或 _成员_ 访问权限,因为这些用户即使无法直接访问项目,也将自动能够管理为此多集群应用创建的应用。
:::
### 覆盖特定项目的应用配置选项
多集群应用的主要优势之一,是能够在多个集群/项目中使用相同配置部署相同的应用。在某些情况下,你可能需要为某个特定项目使用稍微不同的配置选项,但你依然希望统一管理该应用与其他匹配的应用。此时,你可以为该项目覆盖特定的[应用配置选项](#应用配置选项),而不需要创建全新的应用。
1. 在**答案覆盖**中,单击**添加覆盖**。
2. 对于每个覆盖,你可以选择以下内容:
- **范围**:在配置选项中选择要覆盖哪些目标项目的答案。
- **问题**:选择要覆盖的问题。
- **答案**:输入要使用的答案。
## 升级多集群应用角色和项目
- **在现有的多集群应用上更改角色**
多集群应用的创建者和任何具有“所有者”访问类型的用户都可以升级其**角色**。添加新角色时,我们会检查用户在所有当前目标项目中是否具有该角色。Rancher 会根据 `Roles` 字段的安装部分,相应地检查用户是否具有全局管理员、集群所有者或项目所有者的角色。
- **添加/删除目标项目**
1. 多集群应用的创建者和任何具有“所有者”访问类型的用户都添加或移除目标项目。添加新项目时,我们检查此请求的调用者是否具有多集群应用中定义的所有角色。Rancher 会检查用户是否具有全局管理员、集群所有者和项目所有者的角色。
2. 删除目标项目时,我们不会进行这些成员资格检查。这是因为调用者的权限可能与目标项目有关,或者由于该项目已被删除导致调用者希望将该项目从目标列表中删除。
## 多集群应用管理
与同一类型的多个单独应用相比,使用多集群应用的好处之一是易于管理。你可以克隆、升级或回滚多集群应用。
:::note 先决条件:
`Legacy` 功能开关已启用。
:::
1. 在左上角,单击**☰ > 多集群应用**。
2. 选择要对其执行操作的多集群应用,然后单击 **⋮**。选择以下选项之一:
* **克隆**:创建另一个具有相同配置的多集群应用。通过使用此选项,你可以轻松复制多集群应用。
* **升级**:升级多集群应用以更改某些配置。在为多集群应用执行升级时,如果你有合适的[访问类型](#成员),则可以修改[升级策略](#升级)。
* **回滚**:将你的应用回滚到特定版本。如果你的一个或多个[目标](#目标)的多集群应用在升级后出现问题,你可以使用 Rancher 存储的多达 10 个多集群应用版本进行回滚。回滚多集群应用会恢复**所有**目标集群和项目的应用,而不仅仅是受升级问题影响的目标。
## 删除多集群应用
:::note 先决条件:
`Legacy` 功能开关已启用。
:::
1. 在左上角,单击**☰ > 多集群应用**。
2. 选择要删除的多集群应用,然后单击**⋮ > 删除**。删除多集群应用会删除所有目标项目中的所有应用和命名空间。
:::note
不能独立删除在目标项目中为多集群应用创建的应用。只有删除多集群应用后才能删除这些应用。
:::
@@ -1,14 +0,0 @@
---
title: 跨集群部署应用
---
Rancher 2.5 引入了 Fleet,这是一种跨集群部署应用的新方式。
使用 Fleet 的持续交付是大规模的 GitOps。如需更多信息,请参阅 [Fleet](../how-to-guides/new-user-guides/deploy-apps-across-clusters/fleet.md)。
### 多集群应用
在 2.5 之前的 Rancher 版本中,多集群应用功能用于跨集群部署应用。我们已弃用多集群应用功能,但你仍然可以在 Rancher 2.5 中使用该功能。
详情请参阅[此文档](../how-to-guides/new-user-guides/deploy-apps-across-clusters/multi-cluster-apps.md)。
@@ -31,7 +31,7 @@ Rancher 致力于向社区披露我们产品的安全问题。我们会针对已
| [CVE-2022-21951](https://github.com/rancher/rancher/security/advisories/GHSA-vrph-m5jj-c46c) | 此漏洞仅影响通过 [RKE 模板](../../pages-for-subheaders/about-rke1-templates.md)配置 [Weave](../../faq/container-network-interface-providers.md#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) |
| [CVE-2021-36784](https://github.com/rancher/rancher/security/advisories/GHSA-jwvr-vv7p-gpwq) | 在 Rancher 2.5.0 到 2.5.12 和 Rancher 2.6.0 到 2.6.3 中发现了一个漏洞,该漏洞允许能创建或更新[全局角色](../../pages-for-subheaders/manage-role-based-access-control-rbac.md)的用户将他们或其他用户升级为管理员。全局角色能授予用户 Rancher 级别的权限,例如能创建集群。在已识别的 Rancher 版本中,如果用户被授予了编辑或创建全局角色的权限,他们不仅仅能授予他们已经拥有的权限。此漏洞影响使用能够创建或编辑全局角色的非管理员用户的客户。此场景最常见的用例是 `restricted-admin` 角色。 | 2022 年 4 月 14 日 | [Rancher 2.6.4](https://github.com/rancher/rancher/releases/tag/v2.6.4) 和 [Rancher 2.5.13](https://github.com/rancher/rancher/releases/tag/v2.5.13) |
| [CVE-2021-4200](https://github.com/rancher/rancher/security/advisories/GHSA-hx8w-ghh8-r4xf) | 此漏洞仅影响在 Rancher 中使用 `restricted-admin` 角色的客户。在 Rancher 2.5.0 到 2.5.12 和 2.6.0 到 2.6.3 中发现了一个漏洞,其中 `cattle-global-data` 命名空间中的 `global-data` 角色授予了应用商店的写权限。由于具有任何级别的应用商店访问权限的用户都会绑定到 `global-data` 角色,因此这些用户都能写入模板 `CatalogTemplates`) 和模板版本 (`CatalogTemplateVersions`)。在 Rancher 中创建的新用户默认分配到 `user` 角色(普通用户),该角色本不该具有写入应用商店的权限。此漏洞提升了能写入应用商店模板和应用商店模板版本资源的用户的权限。 | 2022 年 4 月 14 日 | [Rancher 2.6.4](https://github.com/rancher/rancher/releases/tag/v2.6.4) 和 [Rancher 2.5.13](https://github.com/rancher/rancher/releases/tag/v2.5.13) |
| [GHSA-wm2r-rp98-8pmh](https://github.com/rancher/rancher/security/advisories/GHSA-wm2r-rp98-8pmh) | 此漏洞仅影响使用经过认证的 Git 和/或 Helm 仓库通过 [Fleet](../../how-to-guides/new-user-guides/deploy-apps-across-clusters/fleet.md) 进行持续交付的客户。在 [`v1.5.11`](https://github.com/hashicorp/go-getter/releases/tag/v1.5.11) 之前版本中的 `go-getter` 库中发现了一个问题,错误消息中没有删除 Base64 编码的 SSH 私钥,导致该信息暴露。Rancher 中 [`v0.3.9`](https://github.com/rancher/fleet/releases/tag/v0.3.9) 之前的 Fleet 版本使用了该库的漏洞版本。此问题影响 Rancher 2.5.0 到 2.5.12(包括 2.5.12)以及 2.6.0 到 2.6.3(包括 2.6.3)。该问题由 Raft Engineering 的 Dagan Henderson 发现并报告。 | 2022 年 4 月 14 日 | [Rancher 2.6.4](https://github.com/rancher/rancher/releases/tag/v2.6.4) 和 [Rancher 2.5.13](https://github.com/rancher/rancher/releases/tag/v2.5.13) |
| [GHSA-wm2r-rp98-8pmh](https://github.com/rancher/rancher/security/advisories/GHSA-wm2r-rp98-8pmh) | 此漏洞仅影响使用经过认证的 Git 和/或 Helm 仓库通过 [Fleet](../../integrations-in-rancher/fleet/fleet.md) 进行持续交付的客户。在 [`v1.5.11`](https://github.com/hashicorp/go-getter/releases/tag/v1.5.11) 之前版本中的 `go-getter` 库中发现了一个问题,错误消息中没有删除 Base64 编码的 SSH 私钥,导致该信息暴露。Rancher 中 [`v0.3.9`](https://github.com/rancher/fleet/releases/tag/v0.3.9) 之前的 Fleet 版本使用了该库的漏洞版本。此问题影响 Rancher 2.5.0 到 2.5.12(包括 2.5.12)以及 2.6.0 到 2.6.3(包括 2.6.3)。该问题由 Raft Engineering 的 Dagan Henderson 发现并报告。 | 2022 年 4 月 14 日 | [Rancher 2.6.4](https://github.com/rancher/rancher/releases/tag/v2.6.4) 和 [Rancher 2.5.13](https://github.com/rancher/rancher/releases/tag/v2.5.13) |
| [CVE-2021-36778](https://github.com/rancher/rancher/security/advisories/GHSA-4fc7-hc63-7fjg) | 在 Rancher 2.5.0 到 2.5.11 和 Rancher 2.6.0 到 2.6.2 中发现了一个漏洞,当从配置的私有仓库下载 Helm Chart 时,对同源策略的检查不足可能导致仓库凭证暴露给第三方提供商。仅当用户在 Rancher 的`应用 & 应用市场 > 仓库`中配置私有仓库的访问凭证时才会出现此问题。该问题由 Martin Andreas Ullrich 发现并报告。 | 2022 年 4 月 14 日 | [Rancher 2.6.3](https://github.com/rancher/rancher/releases/tag/v2.6.3) 和 [Rancher 2.5.12](https://github.com/rancher/rancher/releases/tag/v2.5.12) |
| [GHSA-hwm2-4ph6-w6m5](https://github.com/rancher/rancher/security/advisories/GHSA-hwm2-4ph6-w6m5) | 在 Rancher 2.0 到 2.6.3 中发现了一个漏洞。Rancher 提供的 `restricted` Pod 安全策略(PSP)与 Kubernetes 提供的上游 `restricted` 策略有差别,因此 Rancher 的 PSP 将 `runAsUser` 设置为 `runAsAny`,而上游将 `runAsUser` 设置为 `MustRunAsNonRoot`。因此,即使 Rancher 的 `restricted` 策略是在项目或集群级别上强制执行的,容器也可以以任何用户身份运行,包括特权用户 (`root`)。 | 2022 年 3 月 31 日 | [Rancher 2.6.4](https://github.com/rancher/rancher/releases/tag/v2.6.4) |
| [CVE-2021-36775](https://github.com/rancher/rancher/security/advisories/GHSA-28g7-896h-695v) | 在 Rancher 2.4.17、2.5.11 和 2.6.2 以及更高的版本中发现了一个漏洞。从项目中删除与某个组关联的`项目角色`后,能让这些使用者访问集群级别资源的绑定(Binding)不会被删除。导致问题的原因是不完整的授权逻辑检查。如果用户是受影响组中的成员,且能对 Rancher 进行认证访问,那么用户可以利用此漏洞访问他们不应该能访问的资源。暴露级别取决于受影响项目角色的原始权限级别。此漏洞仅影响在 Rancher 中基于组进行身份验证的客户。 | 2022 年 3 月 31 日 | [Rancher 2.6.3](https://github.com/rancher/rancher/releases/tag/v2.6.3)、[Rancher 2.5.12](https://github.com/rancher/rancher/releases/tag/v2.5.12) 和 [Rancher 2.4.18](https://github.com/rancher/rancher/releases/tag/v2.4.18) |