【发布时间】:2020-10-17 10:12:44
【问题描述】:
我正在尝试使用 terraform 将沙盒 EKS 集群和节点组部署到 AWS,但在节点组方面我遇到了困难。
我的集群创建良好,但在尝试应用节点组时出现以下错误:
Ec2SubnetInvalidConfiguration: One or more Amazon EC2 Subnets of <subnet_id> for node group <node group name> does not automatically assign public IP addresses to instances launched into it.
这是我的模块中用于创建子组的代码:
resource "aws_eks_node_group" "default" {
count = var.create ? 1 : 0
cluster_name = local.eksclustername
node_group_name = "${local.eksclustername}-ng"
node_role_arn = aws_iam_role.node[0].arn
subnet_ids = var.subnet_ids
scaling_config {
desired_size = 3
max_size = 6
min_size = 3
}
depends_on = [
aws_iam_role_policy_attachment.AmazonEKSWorkerNodePolicy,
aws_iam_role_policy_attachment.AmazonEKS_CNI_Policy,
aws_iam_role_policy_attachment.AmazonEC2ContainerRegistryReadOnly,
aws_eks_cluster.default
]
}
我正在尝试将节点组部署到私有子网中,我假设这是此错误的根源。我知道使用 EKSCTL,您可以将节点组部署到私有子网,但我不确定如何使用 terraform。
我是否缺少配置中的标签、设置变量?
【问题讨论】:
-
这是 Terraform 中的一个问题,直到 5 月版本
2.63.0发布。该问题在GitHub 上进行了介绍。您可以尝试升级看看是否有帮助? -
我正在使用提供程序版本 2.68.0,但此问题仍然存在。我的子网需要设置在创建时创建 set IPv4,默认情况下设置为 false,因为它们是私有子网
标签: amazon-web-services terraform amazon-eks