在 Amazon Outposts 上部署 Amazon EKS 集群 - Amazon EKS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

在 Amazon Outposts 上部署 Amazon EKS 集群

本主题概述了在 Outpost 上运行本地集群时需要考虑的事项。本主题还提供了有关如何在 Outpost 上部署本地集群的说明。

重要
  • 相关的 Amazon EKS 文档中没有重复这些注意事项。若其他 Amazon EKS 文档主题与本文的考虑事项冲突,则遵从本文的考虑事项。

  • 这些注意事项可能会经常更改。因此,我们建议您定期查看本主题。

  • 很多注意事项与在 Amazon 云上创建集群的注意事项不同。

  • 本地集群仅支持 Outpost 机架。单个本地集群可跨构成单个逻辑 Outpost 的多个物理 Outpost 机架运行。单个本地集群不能跨多个逻辑 Outpost 运行。每个逻辑 Outpost 都有一个 Outpost ARN。

  • 本地集群运行和管理 Outpost 上您的账户中的 Kubernetes 控制面板。您不能在 Kubernetes 控制面板实例上运行工作负载或对 Kubernetes 控制面板组件进行修改。这些节点由 Amazon EKS 服务管理。对 Kubernetes 控制面板的更改不会在自动 Amazon EKS 管理操作(如修补)期间一直持续存在。

  • 本地集群支持自行管理的附加组件和自行管理的 Amazon Linux 节点组。适用于 Kubernetes 的 Amazon VPC CNI 插件kube-proxyCoreDNS 附加组件会自动安装在本地集群上。

  • 本地集群需要使用 Outpost 上的 Amazon EBS。您的 Outpost 必须拥有可用于 Kubernetes 控制面板存储的 Amazon EBS。

  • 本地集群使用 Outpost 上的 Amazon EBS。您的 Outpost 必须拥有可用于 Kubernetes 控制面板存储的 Amazon EBS。Outpost 仅支持 Amazon EBS gp2 卷。

  • 使用 Amazon EBS CSI 驱动程序支持 Amazon EBS 支持的 Kubernetes PersistentVolumes

  • 熟悉 Outposts 部署选项根据容量因素为 Amazon Outposts 上的 Amazon EKS 集群选择实例类型和置放群组以及 VPC 要求和注意事项

  • 一个现有的 Outpost。有关更多信息,请参阅什么是 Amazon Outposts

  • 计算机或 Amazon CloudShell 上安装了 kubectl 命令行工具。该版本可以与集群的 Kubernetes 版本相同,或者最多早于或晚于该版本一个次要版本。例如,如果您的集群版本为 1.29,则可以将 kubectl1.281.291.30 版本与之配合使用。要安装或升级 kubectl,请参阅 设置 kubectl 和 eksctl

  • 在您的设备或 Amazon CloudShell 上安装和配置 Amazon 命令行界面(Amazon CLI)的版本 2.12.3 或更高版本,或版本 1.27.160 或更高版本。要查看当前版本,请使用 aws --version | cut -d / -f2 | cut -d ' ' -f1。软件包管理器(如 yumapt-get 或适用于 macOS 的 Homebrew)通常比 Amazon CLI 的最新版本落后几个版本。要安装最新版本,请参阅《Amazon 命令行界面用户指南》中的安装使用 aws configure 快速配置。Amazon CloudShell 中安装的 Amazon CLI 版本也可能比最新版本落后几个版本。要对其进行更新,请参阅《Amazon CloudShell 用户指南》中的将 Amazon CLI 安装到您的主目录

  • 具有 createdescribe Amazon EKS 集群权限的 IAM 主体(用户或角色)。有关更多信息,请参阅在 Outpost 上创建本地 Kubernetes 集群列出或描述所有集群

创建本地 Amazon EKS 集群后,创建集群的 IAM 主体将永久添加。主体将作为管理员专门添加到 Kubernetes RBAC 授权表。该实体具有 system:masters 权限。此实体的身份在您的集群配置中不可见。因此,重要的是要注意创建集群的实体并确保永远不会删除它。最初,仅创建服务器的主体可以使用 kubectl 调用 Kubernetes API 服务器。如果使用控制台创建集群,请确保在集群上运行 kubectl 命令时,相同的 IAM 凭证位于 Amazon SDK 凭证链中。创建集群后,您可以向其他 IAM 主体授予对集群的访问权限。