问题描述
我正在尝试使用 Python CDK 部署我的 EKS 集群。我正在关注此(https://github.com/pahud/aws-cdk-python-workshop/tree/master/Lab6)链接以进行实施。 一切正常,但是当我执行“cdk deploy”时,它显示以下错误:
在 Cloudformation 控制台上,它显示以下错误:
我尝试通过以下方式将 cdk_pycon_eks_stack.py 中的版本更改为 1.20、1.20.4、1.16、1.16.5 等(https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html),
...................
# create the cluster
cluster = aws_eks.Cluster(self,'cluster',masters_role=eks_admin_role,vpc=vpc,default_capacity=0,version='1.20',output_cluster_name=True
)
...........................................
任何帮助将不胜感激! 谢谢
编辑:
在评论/答案中供参考的其他图像:
version = aws_eks.Kubernetesversion.of("v1_20")
对于version = aws_eks.Kubernetesversion().V1_20
解决方法
这里的代码正在寻找一个完整的 KubernetesVersion 对象,而不是一个字符串。
看看:https://docs.aws.amazon.com/cdk/api/latest/python/aws_cdk.aws_eks/KubernetesVersion.html#aws_cdk.aws_eks.KubernetesVersion
因此,您可以执行以下操作(请原谅我这是未经测试的,因为我通常将 TypeScript 用于 CDK):
version = aws_eks.KubernetesVersion().V1_20
或者也许:
version = aws_eks.KubernetesVersion.of("v1_20") #string may be something else,try it and see