Amazon web services EksCtl:通过群集配置文件更新节点定义无效
我正在使用Amazon web services EksCtl:通过群集配置文件更新节点定义无效,amazon-web-services,kubernetes,amazon-vpc,amazon-eks,eksctl,Amazon Web Services,Kubernetes,Amazon Vpc,Amazon Eks,Eksctl,我正在使用eksctl创建我们的EKS集群 对于第一次运行,它的效果很好,但是如果我以后想升级集群配置,它就不起作用了 我随身携带一个集群配置文件,但对它所做的任何更改都不会通过更新/升级命令反映出来 我错过了什么 Cluster.yaml: apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: supplier-service region: eu-central-1 vpc: subnets:
eksctl
创建我们的EKS
集群
对于第一次运行,它的效果很好,但是如果我以后想升级集群配置
,它就不起作用了
我随身携带一个集群配置
文件,但对它所做的任何更改都不会通过更新
/升级
命令反映出来
我错过了什么
Cluster.yaml:
apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig
metadata:
name: supplier-service
region: eu-central-1
vpc:
subnets:
public:
eu-central-1a: {id: subnet-1}
eu-central-1b: {id: subnet-2}
eu-central-1c: {id: subnet-2}
nodeGroups:
- name: ng-1
instanceType: t2.medium
desiredCapacity: 3
ssh:
allow: true
securityGroups:
withShared: true
withLocal: true
attachIDs: ['sg-1', 'sg-2']
iam:
withAddonPolicies:
autoScaler: true
现在,如果将来我想更改instance.type或复制副本,我必须销毁整个集群并重新创建…这将变得相当麻烦
如何使用由
EksCtl
创建的集群进行就地升级?谢谢。要使用eksctl升级群集,请执行以下操作:
eksctl create nodegroup--config file=dev cluster.yaml
[1]
[0]
[1] 我正在调查与你完全相同的问题 在对Internet进行了一系列搜索之后,我发现现在还不可能在EKS中升级现有的节点组 首先,
eksctl update
已被弃用。当我执行eksctl升级--help
时,它给出了如下警告:
DEPRECATED: use 'upgrade cluster' instead. Upgrade control plane to the next version.
其次,如和中所述,到目前为止,eksctl升级节点组
仅用于升级托管节点组的版本
因此,不幸的是,您必须创建一个新的节点组来应用您的更改,迁移您的工作负载/将您的流量切换到新的节点组,并使旧的节点组退役。在您的情况下,无需对整个集群进行核爆并重新创建
如果您希望在最少/零停机时间的情况下实现无缝升级/迁移,我建议您尝试一下,在这种情况下,优雅地释放工作负载似乎很有希望:
Node updates and terminations gracefully drain nodes to ensure that your applications stay available.
注意:在上面的配置文件中,如果指定nodegroup
而不是managedNodeGroups
,则将设置非托管节点组
然而,不要失去希望。已提交in以添加
eksctl应用
选项。现阶段尚未发布。如果这真的成为现实,那就太好了。请显示错误日志好吗?@Yasen无错误,它说配置是最新的。:-)不分析更改。