本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
启动托管节点组的模板支持
eksctl 支持使用提供的启动模板启动托管节点组。EC2 这为节点组启用了多个自定义选项,包括提供自定义组 AMIs 和安全组,以及为节点引导传递用户数据。
使用提供的启动模板创建托管节点组
# managed-cluster.yaml # A cluster with two managed nodegroups --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: managed-cluster region: us-west-2 managedNodeGroups: - name: managed-ng-1 launchTemplate: id: lt-12345 version: "2" # optional (uses the default launch template version if unspecified) - name: managed-ng-2 minSize: 2 desiredCapacity: 2 maxSize: 4 labels: role: worker tags: nodegroup-name: managed-ng-2 privateNetworking: true launchTemplate: id: lt-12345
升级托管节点组以使用不同的启动模板版本
eksctl upgrade nodegroup --name=managed-ng-1 --cluster=managed-cluster --launch-template-version=3
注意
如果启动模板使用自定义 AMI,则新版本也应使用自定义 AMI,否则升级操作将失败
如果启动模板未使用自定义 AMI,也可以指定要升级到的 Kubernetes 版本:
eksctl upgrade nodegroup --name=managed-ng-1 --cluster=managed-cluster --launch-template-version=3 --kubernetes-version=1.17
关于自定义 AMI 和启动模板支持的注意事项
-
提供启动模板时,不支持以下字段:
instanceType
、、、、ami
、ssh.allow
、ssh.sourceSecurityGroupIds
、securityGroups
、instancePrefix
、instanceName
、ebsOptimized
、volumeEncrypted
、volumeKmsKeyID
、volumeIOPS
、maxPodsPerNode
、preBootstrapCommands
、overrideBootstrapCommand
和disableIMDSv1
。 -
使用自定义 AMI (
ami
) 时,还overrideBootstrapCommand
必须设置为执行引导。 -
overrideBootstrapCommand
只能在使用自定义 AMI 时进行设置。 -
提供启动模板时,节点组配置中指定的标签仅适用于 EKS Nodegroup 资源,不会传播到实例。 EC2