节点组 - Eksctl 用户指南

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

节点组

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

主题:

  • Spot 实例

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

    • 使用为非托管节点组配置 Spot 实例 MixedInstancesPolicy

    • 使用 node-lifecycle Kubernetes 标签区分竞价型实例和按需实例

  • Auto Scaling

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

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

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

  • EKS 托管的节点组

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

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

  • EKS 混合节点

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

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

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

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

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

  • ARM Support

    • 使用基于 ARM 的 Graviton 实例创建 EKS 集群,以提高性能和成本效益

  • 污点

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

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

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

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

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

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

  • 使用节点组

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

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

  • 自定义子网

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

  • 节点引导

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

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

    • 通过提供自定义,自定义节点引导流程 overrideBootstrapCommand NodeConfig

  • 非托管节点组

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

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

  • GPU 支持

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

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

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

  • 实例选择器

    • 根据资源标准( EC2 例如 v CPUs、内存和 CPU 架构)自动生成合适的实例类型列表 GPUs

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

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

  • 其他卷映射

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

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

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

  • Windows 工作节点

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

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

  • 自定义 AMI 支持

    • 使用该--node-ami标志为节点组指定自定义 AMI,向 AWS 查询最新 EKS 优化的 AMI,或者使用 AWS Systems Manager Parameter Systems Store 查找 AMI。

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

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

  • 自定义 DNS

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