|
本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。 |
概述
架构图
下面是Rancher Turtles的关键组件及其与Rancher和Rancher Cluster Agent关系的可视化表示。理解这些组件对于深入了解Rancher如何利用CAPI操作符进行集群管理至关重要。
安全性
根据 软件工件供应链级别(SLSA)的定义,SLSA是一套可逐步采用的供应链安全指南,由行业共识建立。SLSA 制定的规范对软件生产者和消费者都很有用:生产者可以遵循 SLSA 的指南来增强他们的软件供应链安全性,而消费者可以使用 SLSA 来决定是否信任某个软件包。
Rancher Turtles符合 SLSA Level 3的要求,作为一个适当的强化构建平台,具有一致的构建流程和溯源分发。有关更多信息,请访问 SUSE® Rancher Prime: Cluster API安全文档。
先决条件
|
从Rancher v2.14开始,内置的`embedded-cluster-api`功能(也称为`rancher-provisioning-capi`图表)已被移除。https://documentation.suse.com/cloudnative/cluster-api/latest/en/index.html[SUSE® Rancher Prime: Cluster API]现在是与Rancher集成Cluster API的唯一支持方法。 如果您是从之前的Rancher版本(v2.13或更早版本)升级,则不再需要在安装SUSE® Rancher Prime: Cluster API之前手动禁用`embedded-cluster-api`功能标志或清理相关的webhook。 |
安装SUSE® Rancher Prime: Cluster API操作符
您可以通过Rancher UI或使用Helm安装Rancher Turtles操作符。第一种方法推荐用于大多数环境。
|
如果您已经在集群中安装了 Cluster API (CAPI) 操作符,则必须使用手动 Helm 安装方法。 |
通过Rancher UI安装
通过Rancher UI添加Turtles储存库,Rancher可以处理CAPI扩展的安装和配置。
-
单击*☰。在左侧导航菜单的*探索集群*下,选择*本地。
-
在*集群仪表板*的左侧导航菜单中,选择。
-
点击*创建*以添加新储存库。
-
输入以下内容:
-
名称: turtles
-
-
等待新储存库的状态为`Active`。
-
在左侧导航菜单中,选择。
-
在搜索过滤器中输入"turtles"以查找Turtles图表。
-
点击*Rancher Turtles - 集群API扩展*。
-
点击。
此过程使用Helm图表的默认值,这些值适用于大多数安装。如果您的配置需要覆盖其中一些默认值,您可以在Rancher UI中安装时指定这些值,或者您可以通过Helm手动安装图表。有关可用值的详细信息,请参见 集群API文档。
安装可能需要几分钟,完成后您可以在集群中看到以下新部署:
-
rancher-turtles-system/rancher-turtles-controller-manager -
rancher-turtles-system/rancher-turtles-cluster-api-operator -
capi-system/capi-controller-manager
通过Helm安装
有两种方法可以使用 Helm 安装 Rancher Turtles,具体取决于您是否将 CAPI 操作符作为依赖项:
安装 Rancher Turtles 需要 CAPI 操作符。您可以选择自己处理此依赖项,还是让Rancher Turtles Helm图表为您管理。将Turtles作为依赖项安装更简单,但您最佳的选择取决于您的具体配置。
CAPI 操作符允许使用声明性方法处理 CAPI提供者的生命周期,从而扩展`clusterctl`的能力。如果您想了解更多信息,可以参考 集群 API 操作符书籍。
安装SUSE® Rancher Prime: Cluster API时将`Cluster API (CAPI) Operator`作为Helm依赖项
-
将包含`rancher-turtles`图表的Helm仓库作为安装的第一步添加:
helm repo add turtles https://rancher.github.io/turtles helm repo update -
如前所述,安装 Rancher Turtles 需要 CAPI 操作符。Helm图表可以使用最少的标志自动安装它:
helm install rancher-turtles turtles/rancher-turtles --version <version> \ -n rancher-turtles-system \ --dependency-update \ --create-namespace --wait \ --timeout 180s -
此操作可能需要几分钟,完成后您可以查看下面列出的已安装控制器:
-
rancher-turtles-controller -
capi-operator-
如果集群中已经有`cert-manager`,请禁用其作为Rancher Turtles依赖项的安装。这可以防止依赖冲突:
--set cluster-api-operator.cert-manager.enabled=false -
有关Rancher Turtles版本的列表,请参阅 Turtles发布页面。
-
-
这是基本的推荐配置,负责在内核提供者名称空间中管理创建一个包含所需 CAPI 功能标志(启用 CLUSTER_TOPOLOGY、EXP_CLUSTER_RESOURCE_SET 和 EXP_MACHINE_POOL)的 secret。这些功能标志是启用额外CAPI功能所必需的。
如果您需要覆盖默认行为并使用现有的秘密(或添加自定义环境变量),可以传递秘密名称Helm标志。在这种情况下,作为用户,您负责管理秘密的创建及其内容,包括启用最低所需功能:CLUSTER_TOPOLOGY、EXP_CLUSTER_RESOURCE_SET`和`EXP_MACHINE_POOL。
helm install ...
# Passing secret name and namespace for additional environment variables
--set cluster-api-operator.cluster-api.configSecret.name=<secret-name>
以下是一个用户管理的秘密`cluster-api-operator.cluster-api.configSecret.name=variables`的示例,设置了`CLUSTER_TOPOLOGY`、`EXP_CLUSTER_RESOURCE_SET`和`EXP_MACHINE_POOL`功能标志,并添加了一个额外的自定义变量:
apiVersion: v1
kind: Secret
metadata:
name: variables
namespace: rancher-turtles-system
type: Opaque
stringData:
CLUSTER_TOPOLOGY: "true"
EXP_CLUSTER_RESOURCE_SET: "true"
EXP_MACHINE_POOL: "true"
CUSTOM_ENV_VAR: "false"
|
有关图表支持的值及其用法的详细信息,请参阅 Helm图表选项。 |
在没有SUSE® Rancher Prime: Cluster API作为Helm依赖项的情况下安装`Cluster API (CAPI) Operator`
|
请记住,如果您选择此安装选项,您必须自己管理CAPI Operator的安装。您可以在Cluster API文档中遵循手动安装指南以获取帮助。 |
-
将包含`rancher-turtles`图表的Helm储存库作为安装的第一步添加:
helm repo add turtles https://rancher.github.io/turtles helm repo update -
将图表安装到`rancher-turtles-system`名称空间中:
helm install rancher-turtles turtles/rancher-turtles --version <version> -n rancher-turtles-system --set cluster-api-operator.enabled=false --set cluster-api-operator.cluster-api.enabled=false --create-namespace --wait --dependency-update之前的命令告诉Helm忽略将`cluster-api-operator`作为依赖项进行安装。
-
此操作可能需要几分钟,完成后您可以查看下面列出的已安装控制器:
-
rancher-turtles-controller
-
卸装 SUSE® Rancher Prime: Cluster API
|
在您的Rancher环境中安装Rancher Turtles时,默认情况下,Rancher Turtles启用CAPI Operator清理。这包括清理特定于 CAPI 操作员的网络hooks和部署,这些会导致 Rancher 配置的问题。 为了简化通过 Rancher 或 Helm 命令卸载 Rancher Turtles,官方的 Rancher Turtles Helm 图表包含一个
|
要卸载 Rancher Turtles:
helm uninstall -n rancher-turtles-system rancher-turtles --cascade foreground --wait
此过程可能需要几分钟来完成。
|
请记住,如果您为安装使用了不同的名称或不同的名称空间,您可能需要根据您的具体配置自定义命令。 |