本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。

在 SUSE Rancher PrimeAmazon EKS 上安装

本页面介绍如何在 Amazon EKS 集群上安装 Rancher。 您也可以通过 AWS Marketplace 安装 Rancher

如果您已经有一个 EKS Kubernetes 集群,请跳到关于 安装 Ingress 的步骤。然后按照 本页面上的说明安装 Rancher Helm 图表。

为 Rancher 服务器创建 EKS 集群

在本节中,您将使用命令行工具安装带有 Ingress 的 EKS 集群。如果您想在 EKS 上试用 Rancher 时使用更少的资源,本指南可能会很有用。

先决条件:
  • 您应该已经拥有一个 AWS 账户。

  • 建议使用 IAM 用户而不是 root AWS 账户。您需要 IAM 用户的访问密钥和秘密密钥来配置 AWS 命令行界面。

  • IAM 用户需要官方 eksctl 文档中描述的最小 IAM 策略。

1.准备您的工作站

在您的工作站上安装以下命令行工具:

2.配置 AWS CLI

要配置 AWS CLI,请运行以下命令:

aws configure

然后输入以下值:

说明

AWS 访问密钥 ID

具有 EKS 权限的 IAM 用户的访问密钥凭证。

AWS 秘密访问密钥

具有 EKS 权限的 IAM 用户的秘密密钥凭证。

默认区域名称

集群节点所在的 AWS 区域

默认输出格式

输入 json

3.创建 EKS 集群

要创建 EKS 集群,请运行以下命令。使用适用于您用例的 AWS 区域。选择 Kubernetes 版本时,请务必先查阅 支持矩阵,以找到已为您的 Rancher 版本验证的最高 Kubernetes 版本。

eksctl create cluster \
  --name rancher-server \
  --version <VERSION> \
  --region us-west-2 \
  --nodegroup-name ranchernodes \
  --nodes 3 \
  --nodes-min 1 \
  --nodes-max 4 \
  --managed

集群通过 CloudFormation 部署可能需要一些时间。

4.测试集群

要测试集群,请运行:

eksctl get cluster

结果应如下所示:

eksctl get cluster
2021-03-18 15:09:35 [ℹ]  eksctl version 0.40.0
2021-03-18 15:09:35 [ℹ]  using region us-west-2
NAME        REGION        EKSCTL CREATED
rancher-server-cluster        us-west-2    True

5.安装 Ingress

集群需要一个 Ingress,以便从集群外部访问 Rancher。安装 Ingress 需要分配一个公共 IP 地址。确保您有足够的配额,否则将无法分配 IP 地址。每个订阅的公共 IP 地址限制适用于区域级别。您可以使用 AWS 提供的托管 Ingress 控制器(ALB)或像 Traefik 这样的第三方 Ingress 控制器。

如果已经在使用托管 Ingress 控制器,则不建议安装像 Traefik 这样的第三方 Ingress 控制器。

Ingress-NGINX 终止服务:社区 ingress-nginx 控制器将于 2026 年 3 月终止服务。此页面使用 Traefik,这是 Rancher 环境推荐的迁移路径。

Traefik 包含一个原生的 Ingress NGINX 提供程序。这使您可以在不重写现有 Ingress 对象的情况下从 NGINX 迁移,因为 Traefik 会自动解释 nginx.ingress.kubernetes.io 注释。如果您正在升级已经使用 ingress-nginx 的集群,请遵循此 指南 以获取更多信息。

要安装 Traefik,我们强烈建议使用 Rancher Prime 应用程序集合 中的 Traefik 应用程序。查看他们的 文档以与 Rancher 管理器集成

6.获取负载均衡器 IP

要获取负载均衡器的地址,请运行:

kubectl get service traefik --namespace=traefik

结果应类似如下内容:

NAME                       TYPE           CLUSTER-IP     EXTERNAL-IP                                                              PORT(S)
 AGE
traefik  LoadBalancer   10.0.116.18    40.31.180.83   80:31229/TCP,443:31050/TCP 27m

保存 EXTERNAL-IP

7.设置 DNS

外部流量需要指向您创建的负载均衡器。

为您保存的外部 IP 设置 DNS 记录。此 DNS 将用作 Rancher 服务器 URL.

有很多有效的方法来设置 DNS。如需帮助,请参阅 AWS 文档中关于 将流量路由到 ELB 负载均衡器 的说明。

8.安装 Rancher Helm Chart

接下来,按照 此页面 上的说明安装 Rancher Helm Chart。Helm 的说明在任何 Kubernetes 发行版上安装 Rancher 时均相同。

在安装 Rancher 时,请使用上一步中的 DNS 名称作为 Rancher 服务器 URL。它可以作为 Helm 选项传递。例如,如果 DNS 名称是 rancher.my.org,您可以使用选项 --set hostname=rancher.my.org 运行 Helm 安装命令。

在此设置上安装 Rancher 时,您还需要将下面的值传递给 Rancher Helm 安装命令,以便设置将与 Rancher 的 Ingress 资源一起使用的 Ingress 控制器的名称:

--set ingress.ingressClassName=traefik

请参阅 此处的 Helm 安装命令 以获取您选择的证书选项。