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

在 Amazon EC2 中设置节点

在本教程中,您将学习一种为 Rancher 管理服务器设置 Linux 节点的方法。这些节点将满足 操作系统、Docker、硬件和网络 的节点要求。

如果 Rancher 服务器将安装在 RKE Kubernetes 集群上,您应该配置三个实例。

如果 Rancher 服务器将安装在 K3s Kubernetes 集群上,您只需配置两个实例。

如果 Rancher 服务器安装在单个 Docker 容器中,您只需一个实例。

1.可选准备

  • *创建 IAM 角色:*为了允许 Rancher 操作 AWS 资源,例如配置新的存储或新节点,您需要将 Amazon 配置为云提供商。在 EC2 上设置云提供商需要做几件事情,但这个过程的一部分是为 Rancher 服务器节点设置 IAM 角色。有关设置云提供商的完整详细信息,请参阅此 页面。

  • *创建安全组:*我们还建议为 Rancher 节点设置一个符合 端口要求 的安全组。

2.配置实例

  1. 登录到 Amazon AWS EC2 控制台 开始。请确保记下您的 EC2 实例(Linux 节点)创建的 区域,因为 Rancher 管理服务器的所有基础设施应位于同一区域。

  2. 在左侧面板中,单击 实例

  3. 单击 启动实例

  4. 在名为 步骤 1:的部分中。选择一个 Amazon 机器镜像(AMI),*我们将使用 Ubuntu 18.04 作为 Linux 操作系统,使用 ami-0d1cd67c26f5fca19 (64-bit x86)。前往 Ubuntu AMI 并单击 *选择

  5. 在 *步骤 2:。在选择实例类型*部分,选择 t2.medium 类型。

  6. 单击 下一步:配置实例细节

  7. 实例数量 字段中,输入实例的数量。高可用性 K3s 集群只需要两个实例,而高可用性 RKE 集群需要三个实例。

  8. 可选:如果您为 Rancher 创建了一个 IAM 角色以操作 AWS 资源,请在 IAM 角色 字段中选择新的 IAM 角色。

  9. 单击 下一步:添加存储, 下一步:添加标签,下一步:配置安全组

  10. 在 *步骤 6:。配置安全组,*选择符合 端口要求 的安全组,以便用于 Rancher 节点。

  11. 单击 查看并启动

  12. 点击 启动

  13. 选择一个新的或现有的密钥对,以便您稍后连接到实例。如果您使用的是现有的密钥对,请确保您已经拥有私钥的访问权限。

  14. 单击 启动实例

*结果:*您已创建满足操作系统、硬件和网络要求的 Rancher 节点。

如果节点用于 RKE Kubernetes 集群,请在下一步中在每个节点上安装 Docker。对于 K3s Kubernetes 集群,节点现在已准备好安装 K3s。

3.安装 Docker 并为 RKE Kubernetes 集群节点创建用户

  1. AWS EC2 控制台, 中,点击左侧面板的 实例

  2. 前往您想要安装 Docker 的实例。选择该实例并点击 操作  连接

  3. 按照出现的屏幕上的说明连接到该实例。复制该实例的公共 DNS。SSH 连接到该实例的示例命令如下:

    sudo ssh -i [path-to-private-key] ubuntu@[public-DNS-of-instance]
  4. 在实例上运行以下命令,以使用 Rancher 的安装脚本之一安装 Docker:

    curl https://releases.rancher.com/install-docker/18.09.sh | sh
  5. 连接到实例后,在实例上运行以下命令以创建用户:

    sudo usermod -aG docker ubuntu
  6. 重复这些步骤,以便在每个最终将运行 Rancher 管理服务器的节点上安装 Docker。

要查找是否有可用于安装特定 Docker 版本的脚本,请参考此 GitHub 储存库,,其中包含所有 Rancher 的 Docker 安装脚本。

*结果:*您已设置满足操作系统、Docker、硬件和网络所有节点要求的 Rancher 服务器节点。

RKE Kubernetes 集群节点的后续步骤

如果您打算在新节点上安装 RKE 集群,请注意每个节点的 IPv4 公共 IP私有 IP。此信息可以在每个节点创建后,在 描述 标签中找到。公共和私有 IP 将用于填充 RKE 集群配置文件 rancher-cluster.yml 中每个节点的 addressinternal_address

RKE 还需要访问私钥以连接到每个节点。因此,您可能想要记下连接到节点的私钥路径,这也可以包含在每个节点的 rancher-cluster.yml 下的 ssh_key_path 指令中。