View a markdown version of this page

节点组 - Eksctl 用户指南

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

节点组

本章包含有关如何使用 Eksctl 创建和配置节点组的信息。节点组是连接到 EKS 集群的 EC2 实例组。

主题:

  • Spot 实例

    • 使用托管节点组创建和管理带有竞价型实例的 EKS 集群

    • 使用为非托管节点组配置竞价型实例 MixedInstancesPolicy

    • 使用 node-lifecycle Kubernetes 标签区分 Spot 和 On-Demand 实例

  • Auto Scaling

    • 通过创建允许使用集群自动扩缩器的 IAM 角色的集群或节点组,启用 Kubernetes 集群节点的自动扩展

    • 配置节点组定义以包括必要的标签和注释,以便集群自动扩缩器扩展节点组

    • 如果工作负载具有特定区域的要求,例如特定区域的存储或关联性规则,则为每个可用区创建单独的节点组

  • EKS 管理的节点组

    • 为 Amazon EKS Kubernetes 集群预置和管理 EC2 实例(节点)

    • 轻松将错误修复、安全补丁和更新节点应用到最新的 Kubernetes 版本

  • EKS 混合节点

    • 使用与 AWS 云中相同的 AWS EKS 集群、功能和工具,支持在客户管理的基础设施上运行本地和边缘应用程序

    • 使用 AWS VP Site-to-Site N 或 AWS Direct Connect 等选项配置网络以将本地网络连接到 AWS VPC

    • 使用 AWS Systems Manager (SSM) 或 AWS IAM 角色为远程节点设置证书,以便通过 EKS 集群进行身份验证

  • 支持 EKS 托管节点组的节点修复配置

    • 启用 EKS 托管节点组的节点修复以自动监视和替换或重启不健康的工作节点

  • ARM 支持

    • 使用 ARM-based Graviton 实例创建 EKS 集群以提高性能和成本效益

  • 污点

    • 向 Kubernetes 集群中的特定节点组应用污点

    • 根据污点密钥、值和效果控制 Pod 的调度和驱逐

  • 启动对托管节点组的模板支持

    • 使用提供的 EC2 启动模板启动托管节点组

    • 升级托管节点组以使用其他版本的启动模板

    • 了解在托管节点组中使用自定义 AMI 和启动模板时的限制和注意事项

  • 使用节点组

    • 启用对节点组中的 EC2 实例的 SSH 访问

    • 向上或向下扩展节点组中的节点数量

  • 自定义子网

    • 使用新子网扩展现有 VPC 并向该子网添加节点组

  • 节点引导

    • 了解 2023 年引入的新节点初始化流程 (nodeadm) AmazonLinux

    • 了解 eksctl 为自我管理和节点应用的默认 NodeConfig 设置 EKS-managed

    • 通过使用自定义选项提供替代BootstrapCommand 来自定义节点引导过程 NodeConfig

  • 非托管节点组

    • 在 EKS 集群中创建或更新非托管节点组

    • 更新默认 Kubernetes 插件,例如 kube-proxy、aws-node 和 CoreDNS

  • GPU 支持

    • Eksctl 支持为节点组选择 GPU 实例类型,从而允许在 EKS 集群上使用 GPU-accelerated 工作负载。

    • 选择 GPU-enabled 实例类型后,Eksctl 会自动安装 NVIDIA Kubernetes 设备插件,从而便于在集群中使用 GPU 资源。

    • 用户可以使用提供的命令禁用自动插件安装并手动安装特定版本的 NVIDIA Kubernetes 设备插件。

  • 实例选择器

    • 根据 vCPU、内存、GPU 和 CPU 架构等资源标准,自动生成合适的 EC2 实例类型列表

    • 使用符合指定实例选择条件的实例类型创建集群和节点组

    • 在创建节点组之前,进行试运行以检查和修改实例选择器匹配的实例类型

  • 其他卷映射

    • 为 EKS 集群中的托管节点组配置其他卷映射

    • 为额外卷自定义卷的大小、类型、加密、IOPS 和吞吐量等卷属性

    • 将现有 EBS 快照作为附加卷连接到节点组

  • Windows 工作节点

    • 将 Windows 节点组添加到现有 Linux Kubernetes 集群以支持运行 Windows 工作负载

    • 使用基于kubernetes.io/os和kubernetes.io/arch标签的节点选择器在相应的操作系统(Windows 或 Linux)上调度工作负载

  • 自定义 AMI 支持

    • 使用该--node-ami标志为节点组指定自定义 AMI,向 AWS 查询 AMI 以获取最新的 EKS-optimized AMI,或使用 AWS 系统管理器参数存储来查找 AMI。

    • 设置该--node-ami-family标志以指定节点组 AMI 的操作系统系列,例如 AmazonLinux 2、Ubuntu2204 或。 WindowsServer2022CoreContainer

    • 对于 Windows 节点组,请指定自定义 AMI 并通过提供 PowerShell 引导脚本。overrideBootstrapCommand

  • 自定义 DNS

    • 覆盖用于内部和外部 DNS 查询的 DNS 服务器 IP 地址