Update Chinese docs

This commit is contained in:
vickyhella
2023-07-05 09:52:42 +08:00
parent f7b3a8dbcb
commit 65ee90d677
78 changed files with 372 additions and 194 deletions
@@ -157,19 +157,19 @@ The above is an example, there may be more values from the previous step that ne
Alternatively, it's possible to export the current values to a file and reference that file during upgrade. For example, to only change the Rancher version:
1. Export the current values to a file:
```
helm get values rancher -n cattle-system -o yaml > values.yaml
```
```
helm get values rancher -n cattle-system -o yaml > values.yaml
```
1. Update only the Rancher version:
For Kubernetes v1.25 or later, set `global.cattle.psp.enabled` to `false` when using Rancher v2.7.2-v2.7.4. This is not necessary for Rancher v2.7.5 and above, but you can still manually set the option if you choose.
```
helm upgrade rancher rancher-<CHART_REPO>/rancher \
--namespace cattle-system \
-f values.yaml \
--version=2.6.8
```
```
helm upgrade rancher rancher-<CHART_REPO>/rancher \
--namespace cattle-system \
-f values.yaml \
--version=2.6.8
```
### 4. Verify the Upgrade
@@ -192,11 +192,13 @@ If the `updateStrategy` of `ingress-nginx` is `OnDelete`, you will need to delet
You can configure the scheduling fields and resource limits for the Cluster Agent and the cluster's Fleet Agent. You can use these fields to customize tolerations, affinity rules, and resource requirements. Additional tolerations are appended to a list of default tolerations and control plane node taints. If you define custom affinity rules, they override the global default affinity setting. Defining resource requirements sets requests or limits where there previously were none.
:::note
With this option, it's possible to override or remove rules that are required for the functioning of the cluster. We strongly recommend against removing or overriding these and any other affinity rules, as this may cause unwanted side effects:
- `affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution` for `cattle-cluster-agent`
- `cluster-agent-default-affinity` for `cattle-cluster-agent`
- `fleet-agent-default-affinity` for `fleet-agent`
:::
If you downgrade Rancher to v2.7.4 or below, your changes will be lost and the agents will re-deploy without your customizations. The Fleet agent will fallback to using its built-in default values when it re-deploys. If the Fleet version doesn't change during the downgrade, the re-deploy won't be immediate.
@@ -99,6 +99,8 @@ helm upgrade --install \
ingress-nginx ingress-nginx/ingress-nginx \
--namespace ingress-nginx \
--set controller.service.type=LoadBalancer \
--set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-health-probe-request-path"=/healthz \
--set controller.service.externalTrafficPolicy=Local \
--version 4.6.0 \
--create-namespace
```
@@ -184,12 +184,18 @@ ingress-nginx-controller LoadBalancer 10.3.244.156 35.233.206.34 80:3187
安装 Rancher 时,使用上一步获取的 DNS 名称作为 Rancher Server 的 URL。它可以作为 Helm 选项传递进来。例如,如果 DNS 名称是 `rancher.my.org`,你需要使用 `--set hostname=rancher.my.org` 选项来运行 Helm 安装命令。
**_v2.6.7 新功能_**
在此设置之上安装 Rancher 时,你还需要将以下值传递到 Rancher Helm 安装命令,以设置与 Rancher 的 Ingress 资源一起使用的 Ingress Controller 的名称:
在此设置之上安装 Rancher 时,你还需要设置与 Rancher 的 Ingress 资源一起使用的 Ingress Controller 的名称:
```
--set ingress.ingressClassName=nginx
```
请参阅[Helm 安装命令](../../../pages-for-subheaders/install-upgrade-on-a-kubernetes-cluster.md#5-根据你选择的证书选项通过-helm-安装-rancher)了解你的证书选项。
在 Rancher v2.7.5 中,如果你打算在集群上使用默认的 GKE Ingress 而不启用 VPC 原生的集群模式,则需要设置以下标志:
```
--set service.type=NodePort
```
此设置是必要的,这考虑了与 ClusterIP(`cattle-system/rancher` 的默认类型)之间的兼容性问题。
@@ -42,16 +42,6 @@ Rancher v2.6.4 将 cluster-api 模块从 v0.4.4 升级到 v1.0.2。反过来,c
:::
### 将 Rancher Deployment 规模扩展到 0
1. 在左上角,点击 **☰ > local**。
1. 在左侧主菜单中,点击**工作负载**。
1. 在**工作负载**下,点击 **Deployments**。
1. 点击上方下拉菜单以调整筛选条件。选择 **cattle-system** 作为筛选条件。
1. 找到 `rancher` deployment 的行,并点击**⋮ > 编辑配置**。
1. 将**副本数量**改为 0。
1. 滚动到底部并点击**保存**。
### 创建 Restore 自定义资源
1. 点击 **☰ > 集群管理**。
@@ -136,7 +136,7 @@ hostname: rancher.my.org
将上一步中的所有值用 `--set key=value` 追加到命令中。
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm upgrade rancher rancher-<CHART_REPO>/rancher \
@@ -153,19 +153,19 @@ helm upgrade rancher rancher-<CHART_REPO>/rancher \
另外,你也可以将当前的值导出到一个文件中,并在升级时引用该文件。例如,如果你只需要改变 Rancher 的版本:
1. 将当前值导出到文件:
```
helm get values rancher -n cattle-system -o yaml > values.yaml
```
```
helm get values rancher -n cattle-system -o yaml > values.yaml
```
1. 只更新 Rancher 版本:
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm upgrade rancher rancher-<CHART_REPO>/rancher \
--namespace cattle-system \
-f values.yaml \
--version=2.6.8
```
```
helm upgrade rancher rancher-<CHART_REPO>/rancher \
--namespace cattle-system \
-f values.yaml \
--version=2.6.8
```
### 4. 验证升级
@@ -58,7 +58,7 @@ keywords: [rancher helm chart, rancher helm 选项, rancher helm chart 选项, h
| `systemDefaultRegistry` | "" | `string` - 用于所有系统容器镜像的私有仓库,例如 http://registry.example.com/ |
| `tls` | "ingress" | `string` - 详情请参见[外部 TLS 终止](#外部-tls-终止)。- "ingress, external" |
| `useBundledSystemChart` | `false` | `bool` - 选择 Rancher Server 打包的 system-charts。此参数用于离线环境安装。 |
| `global.cattle.psp.enabled` | `true` | `bool` - 选择 "false" 以禁用 RKE/RKE2(K8s)`v1.25` 及以上版本的 PSP。 |
| `global.cattle.psp.enabled` | `true` | `bool` - 使用 Rancher v2.7.2-v2.7.4 时,选择 `false` 以禁用 Kubernetes v1.25 及更高版本的 PSP。使用 Rancher v2.7.5 及更高版本时,Rancher 会尝试检测集群是否运行不支持 PSP 的 Kubernetes 版本,如果确定集群不支持 PSP,则将默认 PSP 的使用设置为 false。你仍然可以通过显式提供此值的 `true` 或 `false` 来手动覆盖此值。在支持 PSP 的集群中(例如使用 Kubernetes v1.24 或更低版本的集群),Rancher 仍将默认使用 PSP。 |
### 引导密码
@@ -101,12 +101,6 @@ helm repo update
从 [Helm Chart 仓库](https://artifacthub.io/packages/helm/cert-manager/cert-manager)中获取最新可用的 cert-manager Chart:
:::note
v2.6.4 兼容 cert-manager 版本 1.6.2 和 1.7.1。推荐使用 v1.7.x,因为 v 1.6.x 将在 2022 年 3 月 30 日结束生命周期。
:::
```plain
helm fetch jetstack/cert-manager --version v1.11.0
```
@@ -173,7 +167,7 @@ kubectl create namespace cattle-system
然后安装 Rancher,并声明你选择的选项。参考下表来替换每个占位符。Rancher 需要配置为使用私有镜像仓库,以便配置所有 Rancher 启动的 Kubernetes 集群或 Rancher 工具。
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
| 占位符 | 描述 |
------------|-------------
@@ -204,7 +198,7 @@ kubectl create namespace cattle-system
安装 Rancher,并声明你选择的选项。参考下表来替换每个占位符。Rancher 需要配置为使用私有镜像仓库,以便配置所有 Rancher 启动的 Kubernetes 集群或 Rancher 工具。
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
| 占位符 | 描述 |
| -------------------------------- | ----------------------------------------------- |
@@ -126,7 +126,7 @@ helm install cert-manager jetstack/cert-manager `
要安装特定的 Rancher 版本,请使用 `--version` 标志(例如,`--version 2.6.6`)。否则,默认安装最新的 Rancher。请参阅[选择 Rancher 版本](../../installation-and-upgrade/resources/choose-a-rancher-version.md)。
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
请注意,密码至少需要 12 个字符。
@@ -2,6 +2,7 @@
title: 配置 Keycloak (OIDC)
description: 创建 Keycloak OpenID Connect (OIDC) 客户端并配置 Rancher 以使用 Keycloak。你的用户将能够使用他们的 Keycloak 登录名登录 Rancher。
---
如果你的组织使用 [Keycloak Identity Provider (IdP)](https://www.keycloak.org) 进行用户身份验证,你可以通过配置 Rancher 来允许用户使用 IdP 凭证登录。Rancher 支持使用 OpenID Connect (OIDC) 协议和 SAML 协议来集成 Keycloak。与 Rancher 一起使用时,这两种实现在功能上是等效的。本文描述了配置 Rancher 以通过 OIDC 协议与 Keycloak 一起使用的流程。
如果你更喜欢将 Keycloak 与 SAML 协议一起使用,请参见[此页面](configure-keycloak-saml.md)。
@@ -20,6 +20,8 @@ Okta 集成仅支持服务提供商发起的登录。
## 在 Rancher 中配置 Okta
你可以将 Okta 与 Rancher 集成,以便经过身份认证的用户通过组权限访问 Rancher 资源。Okta 会返回一个对用户进行身份认证的 SAML 断言,包括用户所属的组。
1. 在左上角,单击 **☰ > 用户 & 认证**。
1. 在左侧导航栏,单击**认证**。
1. 单击 **Okta**。
@@ -60,9 +62,46 @@ Okta 集成仅支持服务提供商发起的登录。
:::note SAML 身份提供商注意事项
- SAML 协议不支持搜索或查找用户或组。因此,将用户或组添加到 Rancher 时不会对其进行验证。
如果你在没有 OpenLDAP 的情况下配置 Okta,你将无法搜索或直接查找用户或组。相关的警告如下:
- 在 Rancher 中为用户和组分配权限时将不会验证用户和组。
- 添加用户时,必须正确输入确切的用户 ID(即 `UID` 字段)。键入用户 ID 时,将不会搜索可能匹配的其他用户 ID。
- 添加组时,必须从文本框旁边的下拉列表中选择组。Rancher 假定来自文本框的任何输入都是用户。
- 用户组下拉列表仅显示你所属的用户组。如果你不是某个组的成员,你将无法添加该组。
:::
## Okta 与 OpenLDAP 搜索
你可以添加 OpenLDAP 后端来协助用户和组搜索。Rancher 将显示来自 OpenLDAP 服务的其他用户和组。这允许你将权限分配给用户不属于的组。
### OpenLDAP 先决条件
如果你使用 Okta 作为 IdP,你可以[设置 LDAP 接口](https://help.okta.com/en-us/Content/Topics/Directory/LDAP-interface-main.htm)以供 Rancher 使用。你还可以配置外部 OpenLDAP Server。
你必须使用 LDAP 绑定帐户(也称为 ServiceAccount)来配置 Rancher,以便搜索和检索应具有访问权限的用户和组的 LDAP 条目。不要使用管理员帐户或个人帐户作为 LDAP 绑定帐户。在 OpenLDAP 中[创建](https://help.okta.com/en-us/Content/Topics/users-groups-profiles/usgp-add-users.htm)一个专用帐户,对搜索库下的用户和组具有只读访问权限。
:::warning 安全注意事项
OpenLDAP ServiceAccount 用于所有搜索。无论用户个人的 SAML 权限是什么,Rancher 用户都将看到 OpenLDAP ServiceAccount 可以查看的用户和组。
:::
> **使用 TLS?**
>
> 如果 OpenLDAP Server 使用的证书是自签名的或来自无法识别的证书颁发机构,则 Rancher 需要 PEM 格式的 CA 证书(包含所有中间证书)。你需要在配置期间提供此证书,以便 Rancher 能够验证证书链。
### 在 Rancher 中配置 OpenLDAP
[配置 OpenLDAP Server、组和用户的设置](../configure-openldap/openldap-config-reference.md)。请注意,不支持嵌套组成员。
> 在继续配置之前,请熟悉[外部身份认证配置和主要用户](../../../../pages-for-subheaders/authentication-config.md#外部身份验证配置和用户主体)。
1. 使用分配了 [administrator](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/global-permissions) 角色(即 _本地主体_)的本地用户登录到 Rancher。
1. 在左上角,单击 **☰ > 用户 & 认证**。
1. 在左侧导航栏,单击**认证**。
1. 单击 **Okta**,如果已配置 SAML,则单击**编辑配置**。
1. 在**用户和组搜索**下,选中**配置 OpenLDAP Server**。
如果你在测试与 OpenLDAP Server 的连接时遇到问题,请确保你输入了ServiceAccount 的凭证并正确配置了搜索库。你可以检查 Rancher 日志来查明根本原因。调试日志可能包含有关错误的更详细信息。请参阅[如何启用调试日志](../../../../faq/technical-items.md#如何启用调试日志记录)了解更多信息。
@@ -2,7 +2,7 @@
title: 本地身份验证
---
在配置外部验证提供程序之前,你将默认使用本地身份验证。本地身份验证指的是 Rancher 使用存储在本地的用户名和密码对用户进行验证,验证通过的用户可以登录到 Rancher。默认情况下,用于首次登录 Rancher 的 `admin` 用户就是一个本地用户。
在配置外部验证提供程序之前,你将默认使用本地身份验证。Rancher 将用户帐户信息(例如用户名和密码)存储在本地。默认情况下,用于首次登录 Rancher 的 `admin` 用户就是一个本地用户。
## 添加本地用户
@@ -2,7 +2,7 @@
title: 1. 在 Microsoft AD FS 中配置 Rancher
---
在配置 Rancher 以支持 AD FS 用户之前,你必须在 AD FS 中将 Rancher 添加为 [relying party trust](https://docs.microsoft.com/en-us/windows-server/identity/ad-fs/technical-reference/understanding-key-ad-fs-concepts)(信赖方信任)。
在配置 Rancher 以支持 Active Directory Federation Service (AD FS) 之前,你必须在 AD FS 中将 Rancher 添加为 [relying party trust](https://docs.microsoft.com/en-us/windows-server/identity/ad-fs/technical-reference/understanding-key-ad-fs-concepts)(信赖方信任)。
1. 以管理用户身份登录 AD 服务器。
@@ -2,7 +2,7 @@
title: 2. 在 Rancher 中配置 Microsoft AD FS
---
完成[在 Microsoft AD FS 中配置 Rancher](configure-ms-adfs-for-rancher.md) 后,将你的 AD FS 信息输入 Rancher,来允许 Rancher 通过 AD FS 进行身份验证。
完成[在 Microsoft AD FS 中配置 Rancher](configure-ms-adfs-for-rancher.md) 后,将你的 Active Directory Federation Service (AD FS) 信息输入 Rancher,以便 AD FS 用户可以通过 Rancher 进行身份认证。
:::note 配置 ADFS 服务器的重要说明:
@@ -2,9 +2,7 @@
title: OpenLDAP 配置参考
---
本文提供在 Rancher 中设置 OpenLDAP 身份验证的参考。
有关配置 OpenLDAP 的更多详细信息,请参见[官方文档](https://www.openldap.org/doc/)。
有关配置 OpenLDAP 认证的更多详细信息,请参见[官方文档](https://www.openldap.org/doc/)。
> 在开始之前,请熟悉[外部身份验证配置和主体用户](../../../../pages-for-subheaders/authentication-config.md#外部身份验证配置和用户主体)的概念。
@@ -2,8 +2,6 @@
title: Shibboleth 和 OpenLDAP 的组权限
---
本文为打算在 Rancher 中设置 Shibboleth 身份验证的用户提供背景信息和上下文。
由于 Shibboleth 是 SAML 提供者,因此它不支持搜索用户组的功能。虽然 Shibboleth 集成可以验证用户凭证,但是如果没有其他配置,Shibboleth 不能在 Rancher 中给用户组分配权限。
你可以通过配置 OpenLDAP 标识提供者来解决这个问题。如果让 Shibboleth 使用 OpenLDAP 后端,你将能够在 Rancher 中搜索组,并从 Rancher UI 将集群、项目或命名空间等资源分配给用户组。
@@ -2,26 +2,20 @@
title: 定制品牌
---
Rancher 2.6 开始支持自定义 Rancher 的品牌和导航链接。
## 更改品牌设置
:::note 先决条件:
## 先决条件
你至少需要拥有集群成员权限。
:::
## 品牌配置
要配置品牌设置:
1. 单击**☰ > 全局设置**。
2. 单击**公司品牌**。
## 品牌配置
### 自有品牌公司名称
此选项将大多数出现的 “Rancher” 替换为你提供的值。名称中需要包含 Rancher 的文件,例如 “rancher-compose.yml”,不会被更改。
此选项将大多数出现的 “Rancher” 替换为你提供的值。名称中需要包含 Rancher 的文件,例如 `rancher-compose.yml`,不会被更改。
### 支持链接
@@ -158,7 +158,7 @@ Kubernetes v1.22 是 Rancher 2.6.3 的实验功能,不支持使用 apiVersion
使用与第一个集群上使用的相同版本的 Helm 来安装 Rancher:
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```bash
helm install rancher rancher-latest/rancher \
@@ -1,5 +1,5 @@
---
title: '为高可用 K3s Kubernetes 集群设置基础设施'
title: 为高可用 K3s Kubernetes 集群设置基础设施
---
本教程旨在帮助你为 Rancher Management Server 配置底层基础设施。
@@ -1,5 +1,5 @@
---
title: '为高可用 RKE Kubernetes 集群设置基础设施'
title: 为高可用 RKE Kubernetes 集群设置基础设施
---
本教程旨在帮助你创建一个高可用的 RKE 集群,用于安装 Rancher Server。
@@ -1,5 +1,5 @@
---
title: '为高可用 RKE2 Kubernetes 集群设置基础设施'
title: 为高可用 RKE2 Kubernetes 集群设置基础设施
---
本教程旨在帮助你为 Rancher Management Server 配置底层基础设施。
@@ -1,7 +1,8 @@
---
title: 在 Amazon RDS 中创建 MySQL 数据库
---
本教程介绍如何在 Amazon RDS 中创建 MySQL 数据库。
本教程介绍如何在 Amazon Relational Database Service (RDS) 中创建 MySQL 数据库。
该数据库可用作高可用 K3s Kubernetes 集群的外部数据存储。
@@ -1,6 +1,7 @@
---
title: 创建 EKS 集群
---
Amazon EKS 为 Kubernetes 集群提供托管的 controlplane。Amazon EKS 跨多个可用区运行 Kubernetes controlplane 实例,以确保高可用性。Rancher 提供了一个直观的用户界面,用于管理和部署你运行在 Amazon EKS 中的 Kubernetes 集群。通过本指南,你将使用 Rancher 在你的 AWS 账户中快速轻松地启动 Amazon EKS Kubernetes 集群。有关 Amazon EKS 的更多信息,请参阅此[文档](https://docs.aws.amazon.com/eks/latest/userguide/what-is-eks.html)。
@@ -124,6 +125,7 @@ AWS 开源博客上的这篇[教程](https://aws.amazon.com/blogs/opensource/man
"ec2:DescribeAvailabilityZones",
"ec2:DescribeAccountAttributes",
"ec2:DeleteTags",
"ec2:DeleteLaunchTemplate",
"ec2:DeleteSecurityGroup",
"ec2:DeleteKeyPair",
"ec2:CreateTags",
@@ -7,8 +7,10 @@ title: 在 vSphere 控制台中创建凭证
下表列出了 vSphere 用户账号所需的权限:
| 特权组 | 操作 |
|:----------------------|:-----------------------------------------------------------------------|
|:-------------------------|:-----------------------------------------------------------------------|
| Cns Privileges | Searchable |
| Content library | Read Storage <br/> (Required only if deploying Template from Content Library) |
| Cryptographic operations | Direct Access |
| Datastore | AllocateSpace <br/> Browse <br/> FileManagement (Low level file operations) <br/> UpdateVirtualMachineFiles <br/> UpdateVirtualMachineMetadata |
| 全局 | Set custom attribute |
| 网络 | Assign |
@@ -16,6 +16,11 @@ title: 安装 Adapter
| Rancher 版本 | Adapter 版本 |
|-----------------|:---------------:|
| v2.7.0 | v2.0.0 |
| v2.7.1 | v2.0.0 |
| v2.7.2 | v2.0.1 |
| v2.7.3 | v2.0.1 |
| v2.7.4 | v2.0.1 |
| v2.7.5 | v2.0.2 |
### 1. 获取对 Local 集群的访问权限
@@ -94,7 +94,8 @@ SAML 协议不支持用户或用户组的搜索或查找。因此,如果你没
1. 使用初始的本地 `admin` 账号登录到 Rancher UI。
1. 在左上角,单击 **☰ > 用户 & 认证**。
1. 在左侧导航栏,单击**认证**。
1. 单击 **OpenLDAP**。将显示**配置 OpenLDAP 服务器**表单。
1. 单击 **Shibboleth**,如果已配置 SAML,则单击**编辑配置**。
1. 在**用户和组搜索**下,选中**配置 OpenLDAP Server**。
## 故障排除
@@ -34,7 +34,7 @@ Rancher 包含一些默认关闭的实验功能。在某些情况下,例如当
使用 Helm Chart 安装 Rancher 时,使用 `--set` 选项。下面的示例通过传递功能开关名称(用逗号分隔)来启用两个功能:
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm install rancher rancher-latest/rancher \
@@ -122,12 +122,6 @@ Rancher Management Server 默认需要 SSL/TLS 配置来保证访问的安全性
### 4. 安装 cert-manager
:::note
v2.6.4 兼容 cert-manager 版本 1.6.2 和 1.7.1。推荐使用 v1.7.x,因为 v 1.6.x 将在 2022 年 3 月 30 日结束生命周期。
:::
> 如果你使用自己的证书文件(`ingress.tls.source=secret`)或使用[外部负载均衡器的 TLS 终止](../getting-started/installation-and-upgrade/installation-references/helm-chart-options.md#外部-tls-终止),你可以跳过此步骤。
仅在使用 Rancher 生成的证书(`ingress.tls.source=rancher`)或 Let's Encrypt 颁发的证书(`ingress.tls.source=letsEncrypt`)时,才需要安装 cert-manager。
@@ -201,7 +195,7 @@ cert-manager-webhook-787858fcdb-nlzsq 1/1 Running 0 2m
- 将 `hostname` 设置为解析到你的负载均衡器的 DNS 名称。
- 将 `bootstrapPassword` 设置为 `admin` 用户独有的值。
- 如果你需要安装指定的 Rancher 版本,使用 `--version` 标志,例如 `--version 2.7.0`。
- 对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
- 对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm install rancher rancher-<CHART_REPO>/rancher \
@@ -242,7 +236,7 @@ deployment "rancher" successfully rolled out
- 将 `ingress.tls.source` 设置为 `letsEncrypt`。
- 将 `letsEncrypt.email` 设置为可通讯的电子邮件地址,用于发送通知(例如证书到期的通知)。
- 将 `letsEncrypt.ingress.class` 设为你的 Ingress Controller(例如 `traefik`,`nginx`,`haproxy`)
- 对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
- 对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm install rancher rancher-<CHART_REPO>/rancher \
@@ -285,7 +279,7 @@ deployment "rancher" successfully rolled out
- 设置 `hostname`。
- 将 `bootstrapPassword` 设置为 `admin` 用户独有的值。
- 将 `ingress.tls.source` 设置为 `secret`。
- 对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
- 对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm install rancher rancher-<CHART_REPO>/rancher \
@@ -98,6 +98,14 @@ title: K3s 集群配置参考
更改可用于 [NodePort 服务](https://kubernetes.io/docs/concepts/services-networking/service/#nodeport)的端口范围的选项。默认值为 `30000-32767`。
#### 截断主机名
将主机名截断为 15 个或更少字符。该字段只能在集群初始创建时设置。创建集群后,你无法再启用或禁用 15 个字符的限制。
此设置仅影响配置了机器的集群。由于自定义集群在创建节点时设置主机名(发生在 Rancher 之外),因此该字段不限制自定义集群的主机名长度。
截断集群中的主机名可提高与基于 Windows 的系统的兼容性。虽然 Kubernetes 允许最长的主机名长度为 63 个字符,但使用 NetBIOS 的系统将主机名限制为 15 个字符之内。
#### TLS 可选名称
在服务器 TLS 证书上添加其他主机名或 IPv4/IPv6 地址作为 Subject Alternative Name。
@@ -141,5 +149,3 @@ title: K3s 集群配置参考
高级用户可以创建一个 K3s 配置文件,而不是使用 Rancher UI 表单来为集群选择 Kubernetes 选项。配置文件允许你设置 K3s 安装中可用的任何[选项](https://rancher.com/docs/k3s/latest/en/installation/install-options/)。
要直接从 Rancher UI 编辑 K3s 配置文件,单击**以 YAML 文件编辑**。
@@ -183,6 +183,21 @@ Rancher v2.6 引入了[为 RKE 集群配置 ECR 镜像仓库](https://rancher.co
如果 `ingress-nginx` 的 `updateStrategy` 是 `OnDelete`,则需要删除这些 pod 以获得 deployment 正确的版本。
### Cluster Agent 配置和 Fleet Agent 配置
你可以为 Cluster Agent 和集群的 Fleet Agent 配置调度字段和资源限制。你可以使用这些字段来自定义容忍度、亲和性规则和资源要求。其他容忍度会被尾附到默认容忍度和 Control Plane 节点污点的列表中。如果你定义了自定义亲和性规则,它们将覆盖全局默认亲和性设置。定义资源要求会在以前没有的地方设置请求或限制。
:::note
有了这个选项,你可以覆盖或删除运行集群所需的规则。我们强烈建议你不要删除或覆盖这些规则和其他亲和性规则,因为这可能会导致不必要的影响:
- `affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution` 用于 `cattle-cluster-agent`
- `cluster-agent-default-affinity` 用于 `cattle-cluster-agent`
- `fleet-agent-default-affinity` 用于 `fleet-agent`
:::
如果将 Rancher 降级到 v2.7.4 或更低版本,你的更改将丢失,而且 Agent 将在没有你的自定义设置的情况下重新部署。重新部署时,Fleet Agent 将回退到使用内置默认值。如果降级期间 Fleet 版本没有更改,则不会立即重新部署。
## RKE 集群配置文件参考
@@ -343,4 +358,4 @@ local_cluster_auth_endpoint:
- [内嵌附加组件](https://rancher.com/docs/rke/latest/en/config-options/add-ons/user-defined-add-ons/#in-line-add-ons)
- [为附加组件引用 YAML 文件](https://rancher.com/docs/rke/latest/en/config-options/add-ons/user-defined-add-ons/#referencing-yaml-files-for-add-ons)
有关如何通过编辑 `cluster.yml` 来配置自定义网络插件的示例,请参阅 [RKE 文档](https://rancher.com/docs/rke/latest/en/config-options/add-ons/network-plugins/custom-network-plugin-example)。
有关如何通过编辑 `cluster.yml` 来配置自定义网络插件的示例,请参阅 [RKE 文档](https://rancher.com/docs/rke/latest/en/config-options/add-ons/network-plugins/custom-network-plugin-example)。
@@ -206,6 +206,14 @@ Rancher 与以下开箱即用的网络提供商兼容:
更改可用于 [NodePort 服务](https://kubernetes.io/docs/concepts/services-networking/service/#nodeport)的端口范围的选项。默认值为 `30000-32767`。
#### 截断主机名
将主机名截断为 15 个或更少字符。该字段只能在集群初始创建时设置。创建集群后,你无法再启用或禁用 15 个字符的限制。
此设置仅影响配置了机器的集群。由于自定义集群在创建节点时设置主机名(发生在 Rancher 之外),因此该字段不限制自定义集群的主机名长度。
截断集群中的主机名可提高与基于 Windows 的系统的兼容性。虽然 Kubernetes 允许最长的主机名长度为 63 个字符,但使用 NetBIOS 的系统将主机名限制为 15 个字符之内。
#### TLS 可选名称
在服务器 TLS 证书上添加其他主机名或 IPv4/IPv6 地址作为 Subject Alternative Name。
@@ -0,0 +1,36 @@
---
title: Rancher Webhook
---
Rancher-Webhook 是 Rancher 的重要组件,它与 Kubernetes 结合使用,用于增强安全性并为 Rancher 管理的集群启用关键功能。
如 [Kubernetes 文档](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/)中所述,它与 Kubernetes 的可扩展准入控制器集成,允许 Rancher-Webhook 检查发送到 Kubernetes API Server 的特定请求,添加自定义和 Rancher 相关的验证,以及 Rancher 相关请求的变化。Rancher-Webhook 使用 `rancher.cattle.io` `ValidatingWebhookConfiguration` 和 `rancher.cattle.io` `MutatingWebhookConfiguration` 管理要验证的资源,并覆盖任何手动编辑。
Rancher 将 Rancher-Webhook 作为单独的 deployment 和服务部署在 local 和下游集群中。Rancher 使用 Helm 管理 Rancher-Webhook。需要注意的是,Rancher 可能会覆盖用户对 Helm 版本所做的修改。
## 为什么我们需要它?
Rancher-Webhook 对于让 Rancher 保护集群免受恶意攻击并启用各种功能至关重要。
Rancher 依赖 Rancher-Webhook 作为其功能的组成部分。如果没有 Webhook,Rancher 将不是一个完整的产品。
它为 Rancher 管理的集群提供了必要的保护,防止安全漏洞并确保集群的一致性和稳定性。
## 常见问题
### 带有 Calico CNI 的 EKS 集群
当 Kubernetes API Server 尝试联系 Rancher-Webhook 时,使用 Calico CNI 运行 EKS 集群的用户可能会遇到错误。
根据 [Calico 文档](https://docs.tigera.io/calico/latest/getting-started/kubernetes/managed-public-cloud/eks#install-eks-with-calico-networking),此问题的解决方法是为 Webhook 部署设置 `hostNetwork=true`。用户可以在受影响的集群上使用下面的 Helm 命令更改此设置。
```bash
helm repo add rancher-charts https://charts.rancher.io
helm upgrade --reuse-values rancher-webhook rancher-chart/rancher-webhook -n cattle-system --set global.hostNetwork=true
```
**注意**:这个临时解决方法可能会违反环境的安全策略。此解决方法还要求主机网络上未使用端口 9443。
### 私有 GKE 集群
使用私有 GKE 集群时可能会发生错误,导致 Kubernetes API Server 无法与 Webhook 通信。以下错误消息可能会出现:
```
Internal error occurred: failed calling webhook "rancher.cattle.io.namespaces.create-non-kubesystem": failed to call webhook: Post "https://rancher-webhook.cattle-system.svc:443/v1/webhook/validation/namespaces?timeout=10s": context deadline exceeded
```
出现此问题的原因是防火墙规则限制了 API Server 与私有集群之间的通信。要解决此通信问题,你必须通过添加防火墙规则来允许 GKE Control Plane 通过端口 9443 与 Rancher-Webhook 进行通信。请参阅 [GKE 文档](https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters#add_firewall_rules),了解更新防火墙规则的详细信息和步骤。
@@ -98,6 +98,8 @@ helm upgrade --install \
ingress-nginx ingress-nginx/ingress-nginx \
--namespace ingress-nginx \
--set controller.service.type=LoadBalancer \
--set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-health-probe-request-path"=/healthz \
--set controller.service.externalTrafficPolicy=Local \
--version 4.5.2 \
--create-namespace
```
@@ -18,16 +18,6 @@ title: 回滚
:::
### 将 Rancher Deployment 规模扩展到 0
1. 在左上角,点击 **☰ > local**。
1. 在左侧主菜单中,点击**工作负载**。
1. 在**工作负载**下,点击 **Deployments**。
1. 点击上方下拉菜单以调整筛选条件。选择 **cattle-system** 作为筛选条件。
1. 找到 `rancher` deployment 的行,并点击**⋮ > 编辑配置**。
1. 将**副本数量**改为 0。
1. 滚动到底部并点击**保存**。
### 创建 Restore 自定义资源
1. 点击 **☰ > 集群管理**。
@@ -2,6 +2,7 @@
title: 配置 Keycloak (OIDC)
description: 创建 Keycloak OpenID Connect (OIDC) 客户端并配置 Rancher 以使用 Keycloak。你的用户将能够使用他们的 Keycloak 登录名登录 Rancher。
---
如果你的组织使用 [Keycloak Identity Provider (IdP)](https://www.keycloak.org) 进行用户身份验证,你可以通过配置 Rancher 来允许用户使用 IdP 凭证登录。Rancher 支持使用 OpenID Connect (OIDC) 协议和 SAML 协议来集成 Keycloak。与 Rancher 一起使用时,这两种实现在功能上是等效的。本文描述了配置 Rancher 以通过 OIDC 协议与 Keycloak 一起使用的流程。
如果你更喜欢将 Keycloak 与 SAML 协议一起使用,请参见[此页面](configure-keycloak-saml.md)。
@@ -2,7 +2,7 @@
title: 本地身份验证
---
在配置外部验证提供程序之前,你将默认使用本地身份验证。本地身份验证指的是 Rancher 使用存储在本地的用户名和密码对用户进行验证,验证通过的用户可以登录到 Rancher。默认情况下,用于首次登录 Rancher 的 `admin` 用户就是一个本地用户。
在配置外部验证提供程序之前,你将默认使用本地身份验证。Rancher 将用户帐户信息(例如用户名和密码)存储在本地。默认情况下,用于首次登录 Rancher 的 `admin` 用户就是一个本地用户。
## 添加本地用户
@@ -2,7 +2,7 @@
title: 1. 在 Microsoft AD FS 中配置 Rancher
---
在配置 Rancher 以支持 AD FS 用户之前,你必须在 AD FS 中将 Rancher 添加为 [relying party trust](https://docs.microsoft.com/en-us/windows-server/identity/ad-fs/technical-reference/understanding-key-ad-fs-concepts)(信赖方信任)。
在配置 Rancher 以支持 Active Directory Federation Service (AD FS) 之前,你必须在 AD FS 中将 Rancher 添加为 [relying party trust](https://docs.microsoft.com/en-us/windows-server/identity/ad-fs/technical-reference/understanding-key-ad-fs-concepts)(信赖方信任)。
1. 以管理用户身份登录 AD 服务器。
@@ -2,7 +2,7 @@
title: 2. 在 Rancher 中配置 Microsoft AD FS
---
完成[在 Microsoft AD FS 中配置 Rancher](configure-ms-adfs-for-rancher.md) 后,将你的 AD FS 信息输入 Rancher,来允许 Rancher 通过 AD FS 进行身份验证。
完成[在 Microsoft AD FS 中配置 Rancher](configure-ms-adfs-for-rancher.md) 后,将你的 Active Directory Federation Service (AD FS) 信息输入 Rancher,以便 AD FS 用户可以通过 Rancher 进行身份认证。
:::note 配置 ADFS 服务器的重要说明:
@@ -2,9 +2,7 @@
title: OpenLDAP 配置参考
---
本文提供在 Rancher 中设置 OpenLDAP 身份验证的参考。
有关配置 OpenLDAP 的更多详细信息,请参见[官方文档](https://www.openldap.org/doc/)。
有关配置 OpenLDAP 认证的更多详细信息,请参见[官方文档](https://www.openldap.org/doc/)。
> 在开始之前,请熟悉[外部身份验证配置和主体用户](../../../../pages-for-subheaders/authentication-config.md#外部身份验证配置和用户主体)的概念。
@@ -2,8 +2,6 @@
title: Shibboleth 和 OpenLDAP 的组权限
---
本文为打算在 Rancher 中设置 Shibboleth 身份验证的用户提供背景信息和上下文。
由于 Shibboleth 是 SAML 提供者,因此它不支持搜索用户组的功能。虽然 Shibboleth 集成可以验证用户凭证,但是如果没有其他配置,Shibboleth 不能在 Rancher 中给用户组分配权限。
你可以通过配置 OpenLDAP 标识提供者来解决这个问题。如果让 Shibboleth 使用 OpenLDAP 后端,你将能够在 Rancher 中搜索组,并从 Rancher UI 将集群、项目或命名空间等资源分配给用户组。
@@ -4,24 +4,20 @@ title: 定制品牌
Rancher 2.6 开始支持自定义 Rancher 的品牌和导航链接。
## 更改品牌设置
:::note 先决条件:
## 先决条件:
你至少需要拥有集群成员权限。
:::
## 品牌配置
要配置品牌设置:
1. 单击**☰ > 全局设置**。
2. 单击**公司品牌**。
## 品牌配置
### 自有品牌公司名称
此选项将大多数出现的 “Rancher” 替换为你提供的值。名称中需要包含 Rancher 的文件,例如 “rancher-compose.yml”,不会被更改。
此选项将大多数出现的 “Rancher” 替换为你提供的值。名称中需要包含 Rancher 的文件,例如 `rancher-compose.yml`,不会被更改。
### 支持链接
@@ -1,5 +1,5 @@
---
title: '为高可用 K3s Kubernetes 集群设置基础设施'
title: 为高可用 K3s Kubernetes 集群设置基础设施
---
本教程旨在帮助你为 Rancher Management Server 配置底层基础设施。
@@ -1,5 +1,5 @@
---
title: '为高可用 RKE Kubernetes 集群设置基础设施'
title: 为高可用 RKE Kubernetes 集群设置基础设施
---
本教程旨在帮助你创建一个高可用的 RKE 集群,用于安装 Rancher Server。
@@ -1,5 +1,5 @@
---
title: '为高可用 RKE2 Kubernetes 集群设置基础设施'
title: 为高可用 RKE2 Kubernetes 集群设置基础设施
---
本教程旨在帮助你为 Rancher Management Server 配置底层基础设施。
@@ -1,7 +1,8 @@
---
title: 在 Amazon RDS 中创建 MySQL 数据库
---
本教程介绍如何在 Amazon RDS 中创建 MySQL 数据库。
本教程介绍如何在 Amazon Relational Database Service (RDS) 中创建 MySQL 数据库。
该数据库可用作高可用 K3s Kubernetes 集群的外部数据存储。
@@ -1,6 +1,7 @@
---
title: 创建 EKS 集群
---
Amazon EKS 为 Kubernetes 集群提供托管的 controlplane。Amazon EKS 跨多个可用区运行 Kubernetes controlplane 实例,以确保高可用性。Rancher 提供了一个直观的用户界面,用于管理和部署你运行在 Amazon EKS 中的 Kubernetes 集群。通过本指南,你将使用 Rancher 在你的 AWS 账户中快速轻松地启动 Amazon EKS Kubernetes 集群。有关 Amazon EKS 的更多信息,请参阅此[文档](https://docs.aws.amazon.com/eks/latest/userguide/what-is-eks.html)。
@@ -123,6 +124,7 @@ AWS 开源博客上的这篇[教程](https://aws.amazon.com/blogs/opensource/man
"ec2:DescribeAvailabilityZones",
"ec2:DescribeAccountAttributes",
"ec2:DeleteTags",
"ec2:DeleteLaunchTemplate",
"ec2:DeleteSecurityGroup",
"ec2:DeleteKeyPair",
"ec2:CreateTags",
@@ -7,8 +7,10 @@ title: 在 vSphere 控制台中创建凭证
下表列出了 vSphere 用户账号所需的权限:
| 特权组 | 操作 |
|:----------------------|:-----------------------------------------------------------------------|
|:-------------------------|:-----------------------------------------------------------------------|
| Cns Privileges | Searchable |
| Content library | Read Storage <br/> (Required only if deploying Template from Content Library) |
| Cryptographic operations | Direct Access |
| Datastore | AllocateSpace <br/> Browse <br/> FileManagement (Low level file operations) <br/> UpdateVirtualMachineFiles <br/> UpdateVirtualMachineMetadata |
| 全局 | Set custom attribute |
| 网络 | Assign |
@@ -99,6 +99,8 @@ helm upgrade --install \
ingress-nginx ingress-nginx/ingress-nginx \
--namespace ingress-nginx \
--set controller.service.type=LoadBalancer \
--set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-health-probe-request-path"=/healthz \
--set controller.service.externalTrafficPolicy=Local \
--version 4.6.0 \
--create-namespace
```
@@ -184,12 +184,18 @@ ingress-nginx-controller LoadBalancer 10.3.244.156 35.233.206.34 80:3187
安装 Rancher 时,使用上一步获取的 DNS 名称作为 Rancher Server 的 URL。它可以作为 Helm 选项传递进来。例如,如果 DNS 名称是 `rancher.my.org`,你需要使用 `--set hostname=rancher.my.org` 选项来运行 Helm 安装命令。
**_v2.6.7 新功能_**
在此设置之上安装 Rancher 时,你还需要将以下值传递到 Rancher Helm 安装命令,以设置与 Rancher 的 Ingress 资源一起使用的 Ingress Controller 的名称:
在此设置之上安装 Rancher 时,你还需要设置与 Rancher 的 Ingress 资源一起使用的 Ingress Controller 的名称:
```
--set ingress.ingressClassName=nginx
```
请参阅[Helm 安装命令](../../../pages-for-subheaders/install-upgrade-on-a-kubernetes-cluster.md#5-根据你选择的证书选项通过-helm-安装-rancher)了解你的证书选项。
在 Rancher v2.7.5 中,如果你打算在集群上使用默认的 GKE Ingress 而不启用 VPC 原生的集群模式,则需要设置以下标志:
```
--set service.type=NodePort
```
此设置是必要的,这考虑了与 ClusterIP(`cattle-system/rancher` 的默认类型)之间的兼容性问题。
@@ -42,16 +42,6 @@ Rancher v2.6.4 将 cluster-api 模块从 v0.4.4 升级到 v1.0.2。反过来,c
:::
### 将 Rancher Deployment 规模扩展到 0
1. 在左上角,点击 **☰ > local**。
1. 在左侧主菜单中,点击**工作负载**。
1. 在**工作负载**下,点击 **Deployments**。
1. 点击上方下拉菜单以调整筛选条件。选择 **cattle-system** 作为筛选条件。
1. 找到 `rancher` deployment 的行,并点击**⋮ > 编辑配置**。
1. 将**副本数量**改为 0。
1. 滚动到底部并点击**保存**。
### 创建 Restore 自定义资源
1. 点击 **☰ > 集群管理**。
@@ -136,7 +136,7 @@ hostname: rancher.my.org
将上一步中的所有值用 `--set key=value` 追加到命令中。
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm upgrade rancher rancher-<CHART_REPO>/rancher \
@@ -153,19 +153,19 @@ helm upgrade rancher rancher-<CHART_REPO>/rancher \
另外,你也可以将当前的值导出到一个文件中,并在升级时引用该文件。例如,如果你只需要改变 Rancher 的版本:
1. 将当前值导出到文件:
```
helm get values rancher -n cattle-system -o yaml > values.yaml
```
```
helm get values rancher -n cattle-system -o yaml > values.yaml
```
1. 只更新 Rancher 版本:
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm upgrade rancher rancher-<CHART_REPO>/rancher \
--namespace cattle-system \
-f values.yaml \
--version=2.6.8
```
```
helm upgrade rancher rancher-<CHART_REPO>/rancher \
--namespace cattle-system \
-f values.yaml \
--version=2.6.8
```
### 4. 验证升级
@@ -58,7 +58,7 @@ keywords: [rancher helm chart, rancher helm 选项, rancher helm chart 选项, h
| `systemDefaultRegistry` | "" | `string` - 用于所有系统容器镜像的私有仓库,例如 http://registry.example.com/ |
| `tls` | "ingress" | `string` - 详情请参见[外部 TLS 终止](#外部-tls-终止)。- "ingress, external" |
| `useBundledSystemChart` | `false` | `bool` - 选择 Rancher Server 打包的 system-charts。此参数用于离线环境安装。 |
| `global.cattle.psp.enabled` | `true` | `bool` - 选择 "false" 以禁用 RKE/RKE2(K8s)`v1.25` 及以上版本的 PSP。 |
| `global.cattle.psp.enabled` | `true` | `bool` - 使用 Rancher v2.7.2-v2.7.4 时,选择 `false` 以禁用 Kubernetes v1.25 及更高版本的 PSP。使用 Rancher v2.7.5 及更高版本时,Rancher 会尝试检测集群是否运行不支持 PSP 的 Kubernetes 版本,如果确定集群不支持 PSP,则将默认 PSP 的使用设置为 false。你仍然可以通过显式提供此值的 `true` 或 `false` 来手动覆盖此值。在支持 PSP 的集群中(例如使用 Kubernetes v1.24 或更低版本的集群),Rancher 仍将默认使用 PSP。 |
### 引导密码
@@ -101,12 +101,6 @@ helm repo update
从 [Helm Chart 仓库](https://artifacthub.io/packages/helm/cert-manager/cert-manager)中获取最新可用的 cert-manager Chart:
:::note
v2.6.4 兼容 cert-manager 版本 1.6.2 和 1.7.1。推荐使用 v1.7.x,因为 v 1.6.x 将在 2022 年 3 月 30 日结束生命周期。
:::
```plain
helm fetch jetstack/cert-manager --version v1.11.0
```
@@ -173,7 +167,7 @@ kubectl create namespace cattle-system
然后安装 Rancher,并声明你选择的选项。参考下表来替换每个占位符。Rancher 需要配置为使用私有镜像仓库,以便配置所有 Rancher 启动的 Kubernetes 集群或 Rancher 工具。
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
| 占位符 | 描述 |
------------|-------------
@@ -204,7 +198,7 @@ kubectl create namespace cattle-system
安装 Rancher,并声明你选择的选项。参考下表来替换每个占位符。Rancher 需要配置为使用私有镜像仓库,以便配置所有 Rancher 启动的 Kubernetes 集群或 Rancher 工具。
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
| 占位符 | 描述 |
| -------------------------------- | ----------------------------------------------- |
@@ -126,7 +126,7 @@ helm install cert-manager jetstack/cert-manager `
要安装特定的 Rancher 版本,请使用 `--version` 标志(例如,`--version 2.6.6`)。否则,默认安装最新的 Rancher。请参阅[选择 Rancher 版本](../../installation-and-upgrade/resources/choose-a-rancher-version.md)。
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
请注意,密码至少需要 12 个字符。
@@ -2,6 +2,7 @@
title: 配置 Keycloak (OIDC)
description: 创建 Keycloak OpenID Connect (OIDC) 客户端并配置 Rancher 以使用 Keycloak。你的用户将能够使用他们的 Keycloak 登录名登录 Rancher。
---
如果你的组织使用 [Keycloak Identity Provider (IdP)](https://www.keycloak.org) 进行用户身份验证,你可以通过配置 Rancher 来允许用户使用 IdP 凭证登录。Rancher 支持使用 OpenID Connect (OIDC) 协议和 SAML 协议来集成 Keycloak。与 Rancher 一起使用时,这两种实现在功能上是等效的。本文描述了配置 Rancher 以通过 OIDC 协议与 Keycloak 一起使用的流程。
如果你更喜欢将 Keycloak 与 SAML 协议一起使用,请参见[此页面](configure-keycloak-saml.md)。
@@ -20,6 +20,8 @@ Okta 集成仅支持服务提供商发起的登录。
## 在 Rancher 中配置 Okta
你可以将 Okta 与 Rancher 集成,以便经过身份认证的用户通过组权限访问 Rancher 资源。Okta 会返回一个对用户进行身份认证的 SAML 断言,包括用户所属的组。
1. 在左上角,单击 **☰ > 用户 & 认证**。
1. 在左侧导航栏,单击**认证**。
1. 单击 **Okta**。
@@ -60,9 +62,46 @@ Okta 集成仅支持服务提供商发起的登录。
:::note SAML 身份提供商注意事项
- SAML 协议不支持搜索或查找用户或组。因此,将用户或组添加到 Rancher 时不会对其进行验证。
如果你在没有 OpenLDAP 的情况下配置 Okta,你将无法搜索或直接查找用户或组。相关的警告如下:
- 在 Rancher 中为用户和组分配权限时将不会验证用户和组。
- 添加用户时,必须正确输入确切的用户 ID(即 `UID` 字段)。键入用户 ID 时,将不会搜索可能匹配的其他用户 ID。
- 添加组时,必须从文本框旁边的下拉列表中选择组。Rancher 假定来自文本框的任何输入都是用户。
- 用户组下拉列表仅显示你所属的用户组。如果你不是某个组的成员,你将无法添加该组。
:::
## Okta 与 OpenLDAP 搜索
你可以添加 OpenLDAP 后端来协助用户和组搜索。Rancher 将显示来自 OpenLDAP 服务的其他用户和组。这允许你将权限分配给用户不属于的组。
### OpenLDAP 先决条件
如果你使用 Okta 作为 IdP,你可以[设置 LDAP 接口](https://help.okta.com/en-us/Content/Topics/Directory/LDAP-interface-main.htm)以供 Rancher 使用。你还可以配置外部 OpenLDAP Server。
你必须使用 LDAP 绑定帐户(也称为 ServiceAccount)来配置 Rancher,以便搜索和检索应具有访问权限的用户和组的 LDAP 条目。不要使用管理员帐户或个人帐户作为 LDAP 绑定帐户。在 OpenLDAP 中[创建](https://help.okta.com/en-us/Content/Topics/users-groups-profiles/usgp-add-users.htm)一个专用帐户,对搜索库下的用户和组具有只读访问权限。
:::warning 安全注意事项
OpenLDAP ServiceAccount 用于所有搜索。无论用户个人的 SAML 权限是什么,Rancher 用户都将看到 OpenLDAP ServiceAccount 可以查看的用户和组。
:::
> **使用 TLS?**
>
> 如果 OpenLDAP Server 使用的证书是自签名的或来自无法识别的证书颁发机构,则 Rancher 需要 PEM 格式的 CA 证书(包含所有中间证书)。你需要在配置期间提供此证书,以便 Rancher 能够验证证书链。
### 在 Rancher 中配置 OpenLDAP
[配置 OpenLDAP Server、组和用户的设置](../configure-openldap/openldap-config-reference.md)。请注意,不支持嵌套组成员。
> 在继续配置之前,请熟悉[外部身份认证配置和主要用户](../../../../pages-for-subheaders/authentication-config.md#外部身份验证配置和用户主体)。
1. 使用分配了 [administrator](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/manage-role-based-access-control-rbac/global-permissions) 角色(即 _本地主体_)的本地用户登录到 Rancher。
1. 在左上角,单击 **☰ > 用户 & 认证**。
1. 在左侧导航栏,单击**认证**。
1. 单击 **Okta**,如果已配置 SAML,则单击**编辑配置**。
1. 在**用户和组搜索**下,选中**配置 OpenLDAP Server**。
如果你在测试与 OpenLDAP Server 的连接时遇到问题,请确保你输入了ServiceAccount 的凭证并正确配置了搜索库。你可以检查 Rancher 日志来查明根本原因。调试日志可能包含有关错误的更详细信息。请参阅[如何启用调试日志](../../../../faq/technical-items.md#如何启用调试日志记录)了解更多信息。
@@ -2,7 +2,7 @@
title: 本地身份验证
---
在配置外部验证提供程序之前,你将默认使用本地身份验证。本地身份验证指的是 Rancher 使用存储在本地的用户名和密码对用户进行验证,验证通过的用户可以登录到 Rancher。默认情况下,用于首次登录 Rancher 的 `admin` 用户就是一个本地用户。
在配置外部验证提供程序之前,你将默认使用本地身份验证。Rancher 将用户帐户信息(例如用户名和密码)存储在本地。默认情况下,用于首次登录 Rancher 的 `admin` 用户就是一个本地用户。
## 添加本地用户
@@ -2,7 +2,7 @@
title: 2. 在 Rancher 中配置 Microsoft AD FS
---
完成[在 Microsoft AD FS 中配置 Rancher](configure-ms-adfs-for-rancher.md) 后,将你的 AD FS 信息输入 Rancher,来允许 Rancher 通过 AD FS 进行身份验证。
完成[在 Microsoft AD FS 中配置 Rancher](configure-ms-adfs-for-rancher.md) 后,将你的 Active Directory Federation Service (AD FS) 信息输入 Rancher,以便 AD FS 用户可以通过 Rancher 进行身份认证。
:::note 配置 ADFS 服务器的重要说明:
@@ -2,9 +2,7 @@
title: OpenLDAP 配置参考
---
本文提供在 Rancher 中设置 OpenLDAP 身份验证的参考。
有关配置 OpenLDAP 的更多详细信息,请参见[官方文档](https://www.openldap.org/doc/)。
有关配置 OpenLDAP 认证的更多详细信息,请参见[官方文档](https://www.openldap.org/doc/)。
> 在开始之前,请熟悉[外部身份验证配置和主体用户](../../../../pages-for-subheaders/authentication-config.md#外部身份验证配置和用户主体)的概念。
@@ -2,8 +2,6 @@
title: Shibboleth 和 OpenLDAP 的组权限
---
本文为打算在 Rancher 中设置 Shibboleth 身份验证的用户提供背景信息和上下文。
由于 Shibboleth 是 SAML 提供者,因此它不支持搜索用户组的功能。虽然 Shibboleth 集成可以验证用户凭证,但是如果没有其他配置,Shibboleth 不能在 Rancher 中给用户组分配权限。
你可以通过配置 OpenLDAP 标识提供者来解决这个问题。如果让 Shibboleth 使用 OpenLDAP 后端,你将能够在 Rancher 中搜索组,并从 Rancher UI 将集群、项目或命名空间等资源分配给用户组。
@@ -2,26 +2,20 @@
title: 定制品牌
---
Rancher 2.6 开始支持自定义 Rancher 的品牌和导航链接。
## 更改品牌设置
:::note 先决条件:
## 先决条件
你至少需要拥有集群成员权限。
:::
## 品牌配置
要配置品牌设置:
1. 单击**☰ > 全局设置**。
2. 单击**公司品牌**。
## 品牌配置
### 自有品牌公司名称
此选项将大多数出现的 “Rancher” 替换为你提供的值。名称中需要包含 Rancher 的文件,例如 “rancher-compose.yml”,不会被更改。
此选项将大多数出现的 “Rancher” 替换为你提供的值。名称中需要包含 Rancher 的文件,例如 `rancher-compose.yml`,不会被更改。
### 支持链接
@@ -158,7 +158,7 @@ Kubernetes v1.22 是 Rancher 2.6.3 的实验功能,不支持使用 apiVersion
使用与第一个集群上使用的相同版本的 Helm 来安装 Rancher:
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```bash
helm install rancher rancher-latest/rancher \
@@ -1,5 +1,5 @@
---
title: '为高可用 K3s Kubernetes 集群设置基础设施'
title: 为高可用 K3s Kubernetes 集群设置基础设施
---
本教程旨在帮助你为 Rancher Management Server 配置底层基础设施。
@@ -1,5 +1,5 @@
---
title: '为高可用 RKE Kubernetes 集群设置基础设施'
title: 为高可用 RKE Kubernetes 集群设置基础设施
---
本教程旨在帮助你创建一个高可用的 RKE 集群,用于安装 Rancher Server。
@@ -1,5 +1,5 @@
---
title: '为高可用 RKE2 Kubernetes 集群设置基础设施'
title: 为高可用 RKE2 Kubernetes 集群设置基础设施
---
本教程旨在帮助你为 Rancher Management Server 配置底层基础设施。
@@ -1,7 +1,8 @@
---
title: 在 Amazon RDS 中创建 MySQL 数据库
---
本教程介绍如何在 Amazon RDS 中创建 MySQL 数据库。
本教程介绍如何在 Amazon Relational Database Service (RDS) 中创建 MySQL 数据库。
该数据库可用作高可用 K3s Kubernetes 集群的外部数据存储。
@@ -1,6 +1,7 @@
---
title: 创建 EKS 集群
---
Amazon EKS 为 Kubernetes 集群提供托管的 controlplane。Amazon EKS 跨多个可用区运行 Kubernetes controlplane 实例,以确保高可用性。Rancher 提供了一个直观的用户界面,用于管理和部署你运行在 Amazon EKS 中的 Kubernetes 集群。通过本指南,你将使用 Rancher 在你的 AWS 账户中快速轻松地启动 Amazon EKS Kubernetes 集群。有关 Amazon EKS 的更多信息,请参阅此[文档](https://docs.aws.amazon.com/eks/latest/userguide/what-is-eks.html)。
@@ -124,6 +125,7 @@ AWS 开源博客上的这篇[教程](https://aws.amazon.com/blogs/opensource/man
"ec2:DescribeAvailabilityZones",
"ec2:DescribeAccountAttributes",
"ec2:DeleteTags",
"ec2:DeleteLaunchTemplate",
"ec2:DeleteSecurityGroup",
"ec2:DeleteKeyPair",
"ec2:CreateTags",
@@ -7,8 +7,10 @@ title: 在 vSphere 控制台中创建凭证
下表列出了 vSphere 用户账号所需的权限:
| 特权组 | 操作 |
|:----------------------|:-----------------------------------------------------------------------|
|:-------------------------|:-----------------------------------------------------------------------|
| Cns Privileges | Searchable |
| Content library | Read Storage <br/> (Required only if deploying Template from Content Library) |
| Cryptographic operations | Direct Access |
| Datastore | AllocateSpace <br/> Browse <br/> FileManagement (Low level file operations) <br/> UpdateVirtualMachineFiles <br/> UpdateVirtualMachineMetadata |
| 全局 | Set custom attribute |
| 网络 | Assign |
@@ -16,6 +16,11 @@ title: 安装 Adapter
| Rancher 版本 | Adapter 版本 |
|-----------------|:---------------:|
| v2.7.0 | v2.0.0 |
| v2.7.1 | v2.0.0 |
| v2.7.2 | v2.0.1 |
| v2.7.3 | v2.0.1 |
| v2.7.4 | v2.0.1 |
| v2.7.5 | v2.0.2 |
### 1. 获取对 Local 集群的访问权限
@@ -147,4 +152,4 @@ kubectl delete secret tls-ca-additional -n cattle-csp-adapter-system
kubectl rollout restart deploy rancher-csp-adapter -n cattle-csp-adapter-system
```
> **注意**:有一些方法(例如 cert-manager 的 [trust operator](https://cert-manager.io/docs/projects/trust/))可以帮助你减少手动轮换任务的数量。这些选项不受官方支持,但可能对想要自动化某些任务的用户有用。
> **注意**:有一些方法(例如 cert-manager 的 [trust operator](https://cert-manager.io/docs/projects/trust/))可以帮助你减少手动轮换任务的数量。这些选项不受官方支持,但可能对想要自动化某些任务的用户有用。
@@ -94,8 +94,9 @@ SAML 协议不支持用户或用户组的搜索或查找。因此,如果你没
1. 使用初始的本地 `admin` 账号登录到 Rancher UI。
1. 在左上角,单击 **☰ > 用户 & 认证**。
1. 在左侧导航栏,单击**认证**。
1. 单击 **OpenLDAP**。将显示**配置 OpenLDAP 服务器**表单。
1. 单击 **Shibboleth**,如果已配置 SAML,则单击**编辑配置**。
1. 在**用户和组搜索**下,选中**配置 OpenLDAP Server**。
## 故障排除
如果在测试与 OpenLDAP 服务器的连接时遇到问题,请首先仔细检查为 ServiceAccount 输入的凭证以及搜索库配置。你还可以检查 Rancher 日志来查明问题的原因。调试日志可能包含有关错误的更详细信息。详情请参见[如何启用调试日志](../faq/technical-items.md#如何启用调试日志记录)。
如果在测试与 OpenLDAP 服务器的连接时遇到问题,请首先仔细检查为 ServiceAccount 输入的凭证以及搜索库配置。你还可以检查 Rancher 日志来查明问题的原因。调试日志可能包含有关错误的更详细信息。详情请参见[如何启用调试日志](../faq/technical-items.md#如何启用调试日志记录)。
@@ -34,7 +34,7 @@ Rancher 包含一些默认关闭的实验功能。在某些情况下,例如当
使用 Helm Chart 安装 Rancher 时,使用 `--set` 选项。下面的示例通过传递功能开关名称(用逗号分隔)来启用两个功能:
对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm install rancher rancher-latest/rancher \
@@ -122,12 +122,6 @@ Rancher Management Server 默认需要 SSL/TLS 配置来保证访问的安全性
### 4. 安装 cert-manager
:::note
v2.6.4 兼容 cert-manager 版本 1.6.2 和 1.7.1。推荐使用 v1.7.x,因为 v 1.6.x 将在 2022 年 3 月 30 日结束生命周期。
:::
> 如果你使用自己的证书文件(`ingress.tls.source=secret`)或使用[外部负载均衡器的 TLS 终止](../getting-started/installation-and-upgrade/installation-references/helm-chart-options.md#外部-tls-终止),你可以跳过此步骤。
仅在使用 Rancher 生成的证书(`ingress.tls.source=rancher`)或 Let's Encrypt 颁发的证书(`ingress.tls.source=letsEncrypt`)时,才需要安装 cert-manager。
@@ -201,7 +195,7 @@ cert-manager-webhook-787858fcdb-nlzsq 1/1 Running 0 2m
- 将 `hostname` 设置为解析到你的负载均衡器的 DNS 名称。
- 将 `bootstrapPassword` 设置为 `admin` 用户独有的值。
- 如果你需要安装指定的 Rancher 版本,使用 `--version` 标志,例如 `--version 2.7.0`。
- 对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
- 对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm install rancher rancher-<CHART_REPO>/rancher \
@@ -242,7 +236,7 @@ deployment "rancher" successfully rolled out
- 将 `ingress.tls.source` 设置为 `letsEncrypt`。
- 将 `letsEncrypt.email` 设置为可通讯的电子邮件地址,用于发送通知(例如证书到期的通知)。
- 将 `letsEncrypt.ingress.class` 设为你的 Ingress Controller(例如 `traefik`,`nginx`,`haproxy`)
- 对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
- 对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm install rancher rancher-<CHART_REPO>/rancher \
@@ -285,7 +279,7 @@ deployment "rancher" successfully rolled out
- 设置 `hostname`。
- 将 `bootstrapPassword` 设置为 `admin` 用户独有的值。
- 将 `ingress.tls.source` 设置为 `secret`。
- 对于 Kubernetes v1.25 或更高版本,将 `global.cattle.psp.enabled` 设置为 `false`。
- 对于 Kubernetes v1.25 或更高版本,使用 Rancher v2.7.2-v2.7.4 时,将 `global.cattle.psp.enabled` 设置为 `false`。对于 Rancher v2.7.5 及更高版本来说,这不是必需的,但你仍然可以手动设置该选项。
```
helm install rancher rancher-<CHART_REPO>/rancher \
@@ -98,6 +98,14 @@ title: K3s 集群配置参考
更改可用于 [NodePort 服务](https://kubernetes.io/docs/concepts/services-networking/service/#nodeport)的端口范围的选项。默认值为 `30000-32767`。
#### 截断主机名
将主机名截断为 15 个或更少字符。该字段只能在集群初始创建时设置。创建集群后,你无法再启用或禁用 15 个字符的限制。
此设置仅影响配置了机器的集群。由于自定义集群在创建节点时设置主机名(发生在 Rancher 之外),因此该字段不限制自定义集群的主机名长度。
截断集群中的主机名可提高与基于 Windows 的系统的兼容性。虽然 Kubernetes 允许最长的主机名长度为 63 个字符,但使用 NetBIOS 的系统将主机名限制为 15 个字符之内。
#### TLS 可选名称
在服务器 TLS 证书上添加其他主机名或 IPv4/IPv6 地址作为 Subject Alternative Name。
@@ -141,5 +149,3 @@ title: K3s 集群配置参考
高级用户可以创建一个 K3s 配置文件,而不是使用 Rancher UI 表单来为集群选择 Kubernetes 选项。配置文件允许你设置 K3s 安装中可用的任何[选项](https://rancher.com/docs/k3s/latest/en/installation/install-options/)。
要直接从 Rancher UI 编辑 K3s 配置文件,单击**以 YAML 文件编辑**。
@@ -183,6 +183,21 @@ Rancher v2.6 引入了[为 RKE 集群配置 ECR 镜像仓库](https://rancher.co
如果 `ingress-nginx` 的 `updateStrategy` 是 `OnDelete`,则需要删除这些 pod 以获得 deployment 正确的版本。
### Cluster Agent 配置和 Fleet Agent 配置
你可以为 Cluster Agent 和集群的 Fleet Agent 配置调度字段和资源限制。你可以使用这些字段来自定义容忍度、亲和性规则和资源要求。其他容忍度会被尾附到默认容忍度和 Control Plane 节点污点的列表中。如果你定义了自定义亲和性规则,它们将覆盖全局默认亲和性设置。定义资源要求会在以前没有的地方设置请求或限制。
:::note
有了这个选项,你可以覆盖或删除运行集群所需的规则。我们强烈建议你不要删除或覆盖这些规则和其他亲和性规则,因为这可能会导致不必要的影响:
- `affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution` 用于 `cattle-cluster-agent`
- `cluster-agent-default-affinity` 用于 `cattle-cluster-agent`
- `fleet-agent-default-affinity` 用于 `fleet-agent`
:::
如果将 Rancher 降级到 v2.7.4 或更低版本,你的更改将丢失,而且 Agent 将在没有你的自定义设置的情况下重新部署。重新部署时,Fleet Agent 将回退到使用内置默认值。如果降级期间 Fleet 版本没有更改,则不会立即重新部署。
## RKE 集群配置文件参考
@@ -343,4 +358,4 @@ local_cluster_auth_endpoint:
- [内嵌附加组件](https://rancher.com/docs/rke/latest/en/config-options/add-ons/user-defined-add-ons/#in-line-add-ons)
- [为附加组件引用 YAML 文件](https://rancher.com/docs/rke/latest/en/config-options/add-ons/user-defined-add-ons/#referencing-yaml-files-for-add-ons)
有关如何通过编辑 `cluster.yml` 来配置自定义网络插件的示例,请参阅 [RKE 文档](https://rancher.com/docs/rke/latest/en/config-options/add-ons/network-plugins/custom-network-plugin-example)。
有关如何通过编辑 `cluster.yml` 来配置自定义网络插件的示例,请参阅 [RKE 文档](https://rancher.com/docs/rke/latest/en/config-options/add-ons/network-plugins/custom-network-plugin-example)。
@@ -206,6 +206,14 @@ Rancher 与以下开箱即用的网络提供商兼容:
更改可用于 [NodePort 服务](https://kubernetes.io/docs/concepts/services-networking/service/#nodeport)的端口范围的选项。默认值为 `30000-32767`。
#### 截断主机名
将主机名截断为 15 个或更少字符。该字段只能在集群初始创建时设置。创建集群后,你无法再启用或禁用 15 个字符的限制。
此设置仅影响配置了机器的集群。由于自定义集群在创建节点时设置主机名(发生在 Rancher 之外),因此该字段不限制自定义集群的主机名长度。
截断集群中的主机名可提高与基于 Windows 的系统的兼容性。虽然 Kubernetes 允许最长的主机名长度为 63 个字符,但使用 NetBIOS 的系统将主机名限制为 15 个字符之内。
#### TLS 可选名称
在服务器 TLS 证书上添加其他主机名或 IPv4/IPv6 地址作为 Subject Alternative Name。
@@ -0,0 +1,36 @@
---
title: Rancher Webhook
---
Rancher-Webhook 是 Rancher 的重要组件,它与 Kubernetes 结合使用,用于增强安全性并为 Rancher 管理的集群启用关键功能。
如 [Kubernetes 文档](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/)中所述,它与 Kubernetes 的可扩展准入控制器集成,允许 Rancher-Webhook 检查发送到 Kubernetes API Server 的特定请求,添加自定义和 Rancher 相关的验证,以及 Rancher 相关请求的变化。Rancher-Webhook 使用 `rancher.cattle.io` `ValidatingWebhookConfiguration` 和 `rancher.cattle.io` `MutatingWebhookConfiguration` 管理要验证的资源,并覆盖任何手动编辑。
Rancher 将 Rancher-Webhook 作为单独的 deployment 和服务部署在 local 和下游集群中。Rancher 使用 Helm 管理 Rancher-Webhook。需要注意的是,Rancher 可能会覆盖用户对 Helm 版本所做的修改。
## 为什么我们需要它?
Rancher-Webhook 对于让 Rancher 保护集群免受恶意攻击并启用各种功能至关重要。
Rancher 依赖 Rancher-Webhook 作为其功能的组成部分。如果没有 Webhook,Rancher 将不是一个完整的产品。
它为 Rancher 管理的集群提供了必要的保护,防止安全漏洞并确保集群的一致性和稳定性。
## 常见问题
### 带有 Calico CNI 的 EKS 集群
当 Kubernetes API Server 尝试联系 Rancher-Webhook 时,使用 Calico CNI 运行 EKS 集群的用户可能会遇到错误。
根据 [Calico 文档](https://docs.tigera.io/calico/latest/getting-started/kubernetes/managed-public-cloud/eks#install-eks-with-calico-networking),此问题的解决方法是为 Webhook 部署设置 `hostNetwork=true`。用户可以在受影响的集群上使用下面的 Helm 命令更改此设置。
```bash
helm repo add rancher-charts https://charts.rancher.io
helm upgrade --reuse-values rancher-webhook rancher-chart/rancher-webhook -n cattle-system --set global.hostNetwork=true
```
**注意**:这个临时解决方法可能会违反环境的安全策略。此解决方法还要求主机网络上未使用端口 9443。
### 私有 GKE 集群
使用私有 GKE 集群时可能会发生错误,导致 Kubernetes API Server 无法与 Webhook 通信。以下错误消息可能会出现:
```
Internal error occurred: failed calling webhook "rancher.cattle.io.namespaces.create-non-kubesystem": failed to call webhook: Post "https://rancher-webhook.cattle-system.svc:443/v1/webhook/validation/namespaces?timeout=10s": context deadline exceeded
```
出现此问题的原因是防火墙规则限制了 API Server 与私有集群之间的通信。要解决此通信问题,你必须通过添加防火墙规则来允许 GKE Control Plane 通过端口 9443 与 Rancher-Webhook 进行通信。请参阅 [GKE 文档](https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters#add_firewall_rules),了解更新防火墙规则的详细信息和步骤。
@@ -157,19 +157,19 @@ The above is an example, there may be more values from the previous step that ne
Alternatively, it's possible to export the current values to a file and reference that file during upgrade. For example, to only change the Rancher version:
1. Export the current values to a file:
```
helm get values rancher -n cattle-system -o yaml > values.yaml
```
```
helm get values rancher -n cattle-system -o yaml > values.yaml
```
1. Update only the Rancher version:
For Kubernetes v1.25 or later, set `global.cattle.psp.enabled` to `false` when using Rancher v2.7.2-v2.7.4. This is not necessary for Rancher v2.7.5 and above, but you can still manually set the option if you choose.
For Kubernetes v1.25 or later, set `global.cattle.psp.enabled` to `false` when using Rancher v2.7.2-v2.7.4. This is not necessary for Rancher v2.7.5 and above, but you can still manually set the option if you choose.
```
helm upgrade rancher rancher-<CHART_REPO>/rancher \
--namespace cattle-system \
-f values.yaml \
--version=2.6.8
```
```
helm upgrade rancher rancher-<CHART_REPO>/rancher \
--namespace cattle-system \
-f values.yaml \
--version=2.6.8
```
### 4. Verify the Upgrade
@@ -192,11 +192,13 @@ If the `updateStrategy` of `ingress-nginx` is `OnDelete`, you will need to delet
You can configure the scheduling fields and resource limits for the Cluster Agent and the cluster's Fleet Agent. You can use these fields to customize tolerations, affinity rules, and resource requirements. Additional tolerations are appended to a list of default tolerations and control plane node taints. If you define custom affinity rules, they override the global default affinity setting. Defining resource requirements sets requests or limits where there previously were none.
:::note
With this option, it's possible to override or remove rules that are required for the functioning of the cluster. We strongly recommend against removing or overriding these and any other affinity rules, as this may cause unwanted side effects:
- `affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution` for `cattle-cluster-agent`
- `cluster-agent-default-affinity` for `cattle-cluster-agent`
- `fleet-agent-default-affinity` for `fleet-agent`
:::
If you downgrade Rancher to v2.7.4 or below, your changes will be lost and the agents will re-deploy without your customizations. The Fleet agent will fallback to using its built-in default values when it re-deploys. If the Fleet version doesn't change during the downgrade, the re-deploy won't be immediate.