开始使用 Amazon EKS – eksctl
此指南可帮助您使用 eksctl
(用于在 Amazon EKS 上创建和管理 Kubernetes 集群的简单命令行实用程序)来安装开始使用 Amazon Elastic Kubernetes Service (Amazon EKS) 所需的所有资源。在本教程的最后,将为您提供一个运行中的 Amazon EKS 集群,您可向其部署应用程序。
本指南中的程序可自动为您创建在您使用 AWS Management Console 创建集群时必须手动创建的一些资源。如果您希望手动创建大多数资源并更好地了解它们之间的交互方式,请使用 AWS Management Console创建集群和执行计算。有关更多信息,请参阅 开始使用 Amazon EKS – AWS Management Console和 AWS CLI。
先决条件
在开始使用本教程之前,您必须按设置以使用 Amazon EKS 中所述安装并配置 AWS CLI、kubectl 和 eksctl 工具。
第 1 步:创建 Amazon EKS 集群和节点
重要
为了尽可能简单快速地入门,本主题包括创建具有原定设置的集群和节点的步骤。在创建用于生产使用的集群和节点之前,我们建议您熟悉所有设置,并使用符合您要求的设置部署集群和节点。有关更多信息,请参阅 创建 Amazon EKS 集群。 和 使用节点来管理计算资源。一些设置仅在创建集群和节点时可以启用。
您可以使用下列节点类型之一创建集群。要了解有关各个类型的更多信息,请参阅 使用节点来管理计算资源。部署集群后,您可以添加其他节点类型。
-
Fargate – Linux – 如果要在 使用 AWS Fargate 简化计算管理 上运行 Linux 应用程序,请选择此类型的节点。Fargate 是一种无服务器计算引擎,允许部署 Kubernetes Pods,而不管理 Amazon EC2 实例。
-
托管节点 – Linux – 如果要在 Amazon EC2 实例上运行Amazon Linux 应用程序,请选择此类型的节点。虽然本指南中未作介绍,但您还可以向集群添加 Windows 自托管节点和 Bottlerocket 节点。
使用以下命令创建 Amazon EKS 集群。将 my-cluster
替换为您自己的值。名称只能包含字母数字字符(区分大小写)和连字符。该名称必须以字母数字字符开头,且不得超过 100 个字符。对于您在其中创建集群的 AWS 区域和 AWS 账户,该名称必须在其内具有唯一性。请将 region-code
替换为 Amazon EKS 支持的任何 AWS 区域。有关 AWS 区域列表,请参阅《AWS 一般参考》指南中的 Amazon EKS 服务端点和配额。
创建集群需要几分钟时间。在创建过程中,您将看到几行输出。输出的最后一行类似于以下示例行。
[...] [✓] EKS cluster "my-cluster" in "`region-code`" region is ready
eksctl
在 ~/.kube/config
中创建了 kubectl
配置文件,或在计算机上 ~/.kube/config
中的现有配置文件中添加了新集群的配置。
完成集群创建后,在 AWS CloudFormation 控制台eksctl-
的 AWS CloudFormation 堆栈,查看创建的所有资源。my-cluster
-cluster
第 2 步:查看 Kubernetes 资源
-
查看您的集群节点。
kubectl get nodes -o wide
示例输出如下。
如需详细了解输出中显示的内容,请参阅 在 AWS Management Console中查看 Kubernetes 资源。
-
查看在集群上运行的工作负载。
kubectl get pods -A -o wide
示例输出如下。
如需详细了解输出中显示的内容,请参阅 在 AWS Management Console中查看 Kubernetes 资源。
第 3 步:删除集群和节点
在使用完成针对本教程而创建的集群和节点后,应使用下面的命令删除这些集群和节点,从而将它们清除。如果要在清除该集群前对其执行更多操作,请参阅 后续步骤。
eksctl delete cluster --name my-cluster --region region-code
后续步骤
以下文档主题可帮助您扩展集群的此功能。
-
将示例应用程序部署到您的集群。
-
创建集群的 IAM 主体是唯一可以使用
kubectl
或 AWS Management Console 调用 Kubernetes API 服务器的主体。如果您希望其他 IAM 主体拥有访问您的集群的权限,您需要添加它们。有关更多信息,请参阅向 IAM 用户和角色授予对 Kubernetes API 的访问权限 和所需的权限。 -
我们建议您先熟悉集群和节点的所有设置,然后再部署集群用于生产环境。创建集群时必须进行一些设置(例如启用 SSH 访问 Amazon EC2 节点)。
-
为了提高集群的安全性,请配置 Amazon VPC 容器网络接口插件以将 IAM 角色用于服务账户。