|
本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。 |
安装适配器
| 如果您尝试重新安装适配器,您可能会遇到长达一个小时的错误不合规消息。 |
Rancher vs.适配器兼容性矩阵
|
重要说明:
不同版本的CSP适配器依赖于特定版本的Rancher中找到的功能。 为了成功部署和运行适配器,您需要确保其版本与所需的Rancher版本相对应。 |
| Rancher 版本 | 适配器版本 |
|---|---|
v2.14.2 |
v109.0.0+up9.0.0 |
v2.14.1 |
v109.0.0+up9.0.0 |
v2.13.3 |
v108.0.0+up8.0.0 |
v2.13.2 |
v108.0.0+up8.0.0 |
v2.13.1 |
v108.0.0+up8.0.0 |
v2.13.0 |
v108.0.0+up8.0.0 |
1.访问本地群集
| 只有管理员用户应有权访问本地群集。由于CSP适配器必须安装在本地群集中,因此此安装必须由管理员用户执行。 |
首先,单击本地群集并下载kubeconfig令牌。然后,您可以使用以下命令配置您的CLI以使用此新令牌,将`$TOKEN_PATH`替换为您 的文件系统中下载的令牌的路径:
export KUBECONFIG=$TOKEN_PATH
3.创建证书密钥
适配器需要访问Rancher用于与Rancher服务器通信的根CA。您可以在图表选项页面中阅读有关Rancher支持的证书选项的更多信息。
如果您的Rancher安装使用由受认可的证书颁发机构(如Let’s Encrypt)签署的证书,则可以安全地跳到第4步。
但是,如果您的Rancher安装使用自定义证书,例如Rancher生成的证书或由私有证书颁发机构签署的证书,则需要以PEM编码格式提供该机构的证书,以便适配器可以与Rancher通信。
首先,检索 Rancher 正在使用的证书,并将其放置在名为 ca-additional.pem 的文件中。如果您使用 Rancher 生成的证书选项,可以使用以下命令完成此操作:
kubectl get secret tls-rancher -n cattle-system -o jsonpath="{.data.tls\.crt}" | base64 -d >> ca-additional.pem
然后,创建一个使用此证书的密钥:
kubectl -n cattle-csp-adapter-system create secret generic tls-ca-additional --from-file=ca-additional.pem
| 请勿更改文件或创建的密钥的名称。更改这些值可能会导致适配器运行时出现错误。 |
4.安装 Chart
首先,使用以下命令添加 rancher/charts 仓库:
helm repo add rancher-charts https://charts.rancher.io
接下来,安装 CSP 适配器。您必须指定多个值,包括账户号码和在先决条件中创建的角色名称。
确保使用与您正在运行的 Rancher 版本匹配的 CSP 适配器版本,如 上面 所定义。
对于以下说明,将 $MY_ACC_NUM 替换为您的 AWS 账户号码,将 $MY_ROLE_NAME 替换为在先决条件中创建的角色名称。此外,将 $CSP_ADAPTER_VERSION 替换为与您的 Rancher 版本匹配的版本,参见 版本矩阵。
| 如果您使用 shell 变量,请勿指定引号。例如,MY_ACC_NUM=123456789012 将有效,但 MY_ACC_NUM="123456789012" 将失败。 |
使用 AWS Marketplace 列表的欧盟和英国账户需要指定额外的 --set image.repository=rancher/rancher-csp-adapter-eu 选项。要查看在安装适配器时您的账户是否需要此选项,请参考市场列表的使用说明。
|
-
Let’s Encrypt/公共证书颁发机构
-
私有 CA 机构 / Rancher 生成的证书
helm install rancher-csp-adapter rancher-charts/rancher-csp-adapter --namespace cattle-csp-adapter-system --set aws.enabled=true --set aws.roleName=$MY_ROLE_NAME --set-string aws.accountNumber=$MY_ACC_NUM --version $CSP_ADAPTER_VERSION
或者,您可以使用 values.yaml 并指定如下选项:
aws:
enabled: true
accountNumber: "$MY_ACC_NUM"
roleName: $MY_ROLE_NAME
| 账户号码需要以字符串格式指定,如上所示,否则安装将失败。 |
然后,您可以使用以下命令安装适配器:
helm install rancher-csp-adapter rancher-charts/rancher-csp-adapter -f values.yaml --version $CSP_ADAPTER_VERSION
helm install rancher-csp-adapter rancher-charts/rancher-csp-adapter --namespace cattle-csp-adapter-system --set aws.enabled=true --set aws.roleName=$MY_ROLE_NAME --set-string aws.accountNumber=$MY_ACC_NUM --set additionalTrustedCAs=true --version $CSP_ADAPTER_VERSION
或者,您可以使用一个 values.yaml 并指定以下选项:
aws:
enabled: true
accountNumber: "$MY_ACC_NUM"
roleName: $MY_ROLE_NAME
additionalTrustedCAs: true
| 账户号码需要以字符串格式指定,如上所示,否则安装将失败。 |
然后,您可以使用以下命令安装适配器:
helm install rancher-csp-adapter rancher-charts/rancher-csp-adapter -f values.yaml --version $CSP_ADAPTER_VERSION
5.管理证书更新
如果您需要在步骤 3中创建一个存储自定义证书的密钥,您需要随着证书的轮换而定期更新此密钥。
首先,使用以下命令删除 cattle-csp-adapter-system 名称空间中的原始密钥:
kubectl delete secret tls-ca-additional -n cattle-csp-adapter-system
然后,按照 步骤 3 中的原始安装步骤,用更新的值替换密钥的内容。
最后,重启 rancher-csp-adapter 部署,以确保更新的值可供适配器使用:
kubectl rollout restart deploy rancher-csp-adapter -n cattle-csp-adapter-system
| 像 cert-manager 的 信任操作员 这样的方式可以让您自动化其中一些任务。尽管这些方法没有官方支持,但它们可以减少您手动轮换证书的频率。 |