I checked out this code and ran it without any changes.
Just by checking the AWS console, It seems like the Kubernetes cluster node group hasn't been created, even though I can see the 3 VMs being span up (2 t2.small, one t2.medium). See logs below.
$ terraform apply
data.aws_availability_zones.available: Refreshing state...
module.eks.data.aws_iam_policy_document.cluster_assume_role_policy: Refreshing state...
module.eks.data.aws_ami.eks_worker: Refreshing state...
module.eks.data.aws_partition.current: Refreshing state...
module.eks.data.aws_caller_identity.current: Refreshing state...
module.eks.data.aws_ami.eks_worker_windows: Refreshing state...
module.eks.data.aws_iam_policy_document.cluster_elb_sl_role_creation[0]: Refreshing state...
module.eks.data.aws_iam_policy_document.workers_assume_role_policy: Refreshing state...
An execution plan has been generated and is shown below.
Resource actions are indicated with the following symbols:
+ create
<= read (data resources)
Terraform will perform the following actions:
# data.aws_eks_cluster.cluster will be read during apply
# (config refers to values not yet known)
<= data "aws_eks_cluster" "cluster" {
+ arn = (known after apply)
+ certificate_authority = (known after apply)
+ created_at = (known after apply)
+ enabled_cluster_log_types = (known after apply)
+ endpoint = (known after apply)
+ id = (known after apply)
+ identity = (known after apply)
+ name = (known after apply)
+ platform_version = (known after apply)
+ role_arn = (known after apply)
+ status = (known after apply)
+ tags = (known after apply)
+ version = (known after apply)
+ vpc_config = (known after apply)
}
# data.aws_eks_cluster_auth.cluster will be read during apply
# (config refers to values not yet known)
<= data "aws_eks_cluster_auth" "cluster" {
+ id = (known after apply)
+ name = (known after apply)
+ token = (sensitive value)
}
# aws_security_group.all_worker_mgmt will be created
+ resource "aws_security_group" "all_worker_mgmt" {
+ arn = (known after apply)
+ description = "Managed by Terraform"
+ egress = (known after apply)
+ id = (known after apply)
+ ingress = [
+ {
+ cidr_blocks = [
+ "10.0.0.0/8",
+ "172.16.0.0/12",
+ "192.168.0.0/16",
]
+ description = ""
+ from_port = 22
+ ipv6_cidr_blocks = []
+ prefix_list_ids = []
+ protocol = "tcp"
+ security_groups = []
+ self = false
+ to_port = 22
},
]
+ name = (known after apply)
+ name_prefix = "all_worker_management"
+ owner_id = (known after apply)
+ revoke_rules_on_delete = false
+ vpc_id = (known after apply)
}
# aws_security_group.worker_group_mgmt_one will be created
+ resource "aws_security_group" "worker_group_mgmt_one" {
+ arn = (known after apply)
+ description = "Managed by Terraform"
+ egress = (known after apply)
+ id = (known after apply)
+ ingress = [
+ {
+ cidr_blocks = [
+ "10.0.0.0/8",
]
+ description = ""
+ from_port = 22
+ ipv6_cidr_blocks = []
+ prefix_list_ids = []
+ protocol = "tcp"
+ security_groups = []
+ self = false
+ to_port = 22
},
]
+ name = (known after apply)
+ name_prefix = "worker_group_mgmt_one"
+ owner_id = (known after apply)
+ revoke_rules_on_delete = false
+ vpc_id = (known after apply)
}
# aws_security_group.worker_group_mgmt_two will be created
+ resource "aws_security_group" "worker_group_mgmt_two" {
+ arn = (known after apply)
+ description = "Managed by Terraform"
+ egress = (known after apply)
+ id = (known after apply)
+ ingress = [
+ {
+ cidr_blocks = [
+ "192.168.0.0/16",
]
+ description = ""
+ from_port = 22
+ ipv6_cidr_blocks = []
+ prefix_list_ids = []
+ protocol = "tcp"
+ security_groups = []
+ self = false
+ to_port = 22
},
]
+ name = (known after apply)
+ name_prefix = "worker_group_mgmt_two"
+ owner_id = (known after apply)
+ revoke_rules_on_delete = false
+ vpc_id = (known after apply)
}
# random_string.suffix will be created
+ resource "random_string" "suffix" {
+ id = (known after apply)
+ length = 8
+ lower = true
+ min_lower = 0
+ min_numeric = 0
+ min_special = 0
+ min_upper = 0
+ number = true
+ result = (known after apply)
+ special = false
+ upper = true
}
# module.eks.data.template_file.userdata[0] will be read during apply
# (config refers to values not yet known)
<= data "template_file" "userdata" {
+ id = (known after apply)
+ rendered = (known after apply)
+ template = (known after apply)
+ vars = (known after apply)
}
# module.eks.data.template_file.userdata[1] will be read during apply
# (config refers to values not yet known)
<= data "template_file" "userdata" {
+ id = (known after apply)
+ rendered = (known after apply)
+ template = (known after apply)
+ vars = (known after apply)
}
# module.eks.aws_autoscaling_group.workers[0] will be created
+ resource "aws_autoscaling_group" "workers" {
+ arn = (known after apply)
+ availability_zones = (known after apply)
+ default_cooldown = (known after apply)
+ desired_capacity = (known after apply)
+ enabled_metrics = (known after apply)
+ force_delete = (known after apply)
+ health_check_grace_period = (known after apply)
+ health_check_type = (known after apply)
+ id = (known after apply)
+ launch_configuration = (known after apply)
+ load_balancers = (known after apply)
+ max_instance_lifetime = (known after apply)
+ max_size = (known after apply)
+ metrics_granularity = "1Minute"
+ min_size = (known after apply)
+ name = (known after apply)
+ name_prefix = (known after apply)
+ placement_group = (known after apply)
+ protect_from_scale_in = (known after apply)
+ service_linked_role_arn = (known after apply)
+ suspended_processes = (known after apply)
+ target_group_arns = (known after apply)
+ termination_policies = (known after apply)
+ vpc_zone_identifier = (known after apply)
+ wait_for_capacity_timeout = "10m"
+ tag {
+ key = (known after apply)
+ propagate_at_launch = (known after apply)
+ value = (known after apply)
}
}
# module.eks.aws_autoscaling_group.workers[1] will be created
+ resource "aws_autoscaling_group" "workers" {
+ arn = (known after apply)
+ availability_zones = (known after apply)
+ default_cooldown = (known after apply)
+ desired_capacity = (known after apply)
+ enabled_metrics = (known after apply)
+ force_delete = (known after apply)
+ health_check_grace_period = (known after apply)
+ health_check_type = (known after apply)
+ id = (known after apply)
+ launch_configuration = (known after apply)
+ load_balancers = (known after apply)
+ max_instance_lifetime = (known after apply)
+ max_size = (known after apply)
+ metrics_granularity = "1Minute"
+ min_size = (known after apply)
+ name = (known after apply)
+ name_prefix = (known after apply)
+ placement_group = (known after apply)
+ protect_from_scale_in = (known after apply)
+ service_linked_role_arn = (known after apply)
+ suspended_processes = (known after apply)
+ target_group_arns = (known after apply)
+ termination_policies = (known after apply)
+ vpc_zone_identifier = (known after apply)
+ wait_for_capacity_timeout = "10m"
+ tag {
+ key = (known after apply)
+ propagate_at_launch = (known after apply)
+ value = (known after apply)
}
}
# module.eks.aws_eks_cluster.this[0] will be created
+ resource "aws_eks_cluster" "this" {
+ arn = (known after apply)
+ certificate_authority = (known after apply)
+ created_at = (known after apply)
+ endpoint = (known after apply)
+ id = (known after apply)
+ identity = (known after apply)
+ name = (known after apply)
+ platform_version = (known after apply)
+ role_arn = (known after apply)
+ status = (known after apply)
+ tags = {
+ "Environment" = "training"
+ "GithubOrg" = "terraform-aws-modules"
+ "GithubRepo" = "terraform-aws-eks"
}
+ version = "1.17"
+ timeouts {
+ create = "30m"
+ delete = "15m"
}
+ vpc_config {
+ cluster_security_group_id = (known after apply)
+ endpoint_private_access = false
+ endpoint_public_access = true
+ public_access_cidrs = [
+ "0.0.0.0/0",
]
+ security_group_ids = (known after apply)
+ subnet_ids = (known after apply)
+ vpc_id = (known after apply)
}
}
# module.eks.aws_iam_instance_profile.workers[0] will be created
+ resource "aws_iam_instance_profile" "workers" {
+ arn = (known after apply)
+ create_date = (known after apply)
+ id = (known after apply)
+ name = (known after apply)
+ name_prefix = (known after apply)
+ path = "/"
+ role = (known after apply)
+ unique_id = (known after apply)
}
# module.eks.aws_iam_instance_profile.workers[1] will be created
+ resource "aws_iam_instance_profile" "workers" {
+ arn = (known after apply)
+ create_date = (known after apply)
+ id = (known after apply)
+ name = (known after apply)
+ name_prefix = (known after apply)
+ path = "/"
+ role = (known after apply)
+ unique_id = (known after apply)
}
# module.eks.aws_iam_policy.cluster_elb_sl_role_creation[0] will be created
+ resource "aws_iam_policy" "cluster_elb_sl_role_creation" {
+ arn = (known after apply)
+ description = "Permissions for EKS to create AWSServiceRoleForElasticLoadBalancing service-linked role"
+ id = (known after apply)
+ name = (known after apply)
+ name_prefix = (known after apply)
+ path = "/"
+ policy = jsonencode(
{
+ Statement = [
+ {
+ Action = [
+ "ec2:DescribeInternetGateways",
+ "ec2:DescribeAccountAttributes",
]
+ Effect = "Allow"
+ Resource = "*"
+ Sid = ""
},
]
+ Version = "2012-10-17"
}
)
}
# module.eks.aws_iam_role.cluster[0] will be created
+ resource "aws_iam_role" "cluster" {
+ arn = (known after apply)
+ assume_role_policy = jsonencode(
{
+ Statement = [
+ {
+ Action = "sts:AssumeRole"
+ Effect = "Allow"
+ Principal = {
+ Service = "eks.amazonaws.com"
}
+ Sid = "EKSClusterAssumeRole"
},
]
+ Version = "2012-10-17"
}
)
+ create_date = (known after apply)
+ force_detach_policies = true
+ id = (known after apply)
+ max_session_duration = 3600
+ name = (known after apply)
+ name_prefix = (known after apply)
+ path = "/"
+ tags = {
+ "Environment" = "training"
+ "GithubOrg" = "terraform-aws-modules"
+ "GithubRepo" = "terraform-aws-eks"
}
+ unique_id = (known after apply)
}
# module.eks.aws_iam_role.workers[0] will be created
+ resource "aws_iam_role" "workers" {
+ arn = (known after apply)
+ assume_role_policy = jsonencode(
{
+ Statement = [
+ {
+ Action = "sts:AssumeRole"
+ Effect = "Allow"
+ Principal = {
+ Service = "ec2.amazonaws.com"
}
+ Sid = "EKSWorkerAssumeRole"
},
]
+ Version = "2012-10-17"
}
)
+ create_date = (known after apply)
+ force_detach_policies = true
+ id = (known after apply)
+ max_session_duration = 3600
+ name = (known after apply)
+ name_prefix = (known after apply)
+ path = "/"
+ tags = {
+ "Environment" = "training"
+ "GithubOrg" = "terraform-aws-modules"
+ "GithubRepo" = "terraform-aws-eks"
}
+ unique_id = (known after apply)
}
# module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSClusterPolicy[0] will be created
+ resource "aws_iam_role_policy_attachment" "cluster_AmazonEKSClusterPolicy" {
+ id = (known after apply)
+ policy_arn = "arn:aws:iam::aws:policy/AmazonEKSClusterPolicy"
+ role = (known after apply)
}
# module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSServicePolicy[0] will be created
+ resource "aws_iam_role_policy_attachment" "cluster_AmazonEKSServicePolicy" {
+ id = (known after apply)
+ policy_arn = "arn:aws:iam::aws:policy/AmazonEKSServicePolicy"
+ role = (known after apply)
}
# module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSVPCResourceControllerPolicy[0] will be created
+ resource "aws_iam_role_policy_attachment" "cluster_AmazonEKSVPCResourceControllerPolicy" {
+ id = (known after apply)
+ policy_arn = "arn:aws:iam::aws:policy/AmazonEKSVPCResourceController"
+ role = (known after apply)
}
# module.eks.aws_iam_role_policy_attachment.cluster_elb_sl_role_creation[0] will be created
+ resource "aws_iam_role_policy_attachment" "cluster_elb_sl_role_creation" {
+ id = (known after apply)
+ policy_arn = (known after apply)
+ role = (known after apply)
}
# module.eks.aws_iam_role_policy_attachment.workers_AmazonEC2ContainerRegistryReadOnly[0] will be created
+ resource "aws_iam_role_policy_attachment" "workers_AmazonEC2ContainerRegistryReadOnly" {
+ id = (known after apply)
+ policy_arn = "arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"
+ role = (known after apply)
}
# module.eks.aws_iam_role_policy_attachment.workers_AmazonEKSWorkerNodePolicy[0] will be created
+ resource "aws_iam_role_policy_attachment" "workers_AmazonEKSWorkerNodePolicy" {
+ id = (known after apply)
+ policy_arn = "arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy"
+ role = (known after apply)
}
# module.eks.aws_iam_role_policy_attachment.workers_AmazonEKS_CNI_Policy[0] will be created
+ resource "aws_iam_role_policy_attachment" "workers_AmazonEKS_CNI_Policy" {
+ id = (known after apply)
+ policy_arn = "arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy"
+ role = (known after apply)
}
# module.eks.aws_launch_configuration.workers[0] will be created
+ resource "aws_launch_configuration" "workers" {
+ arn = (known after apply)
+ associate_public_ip_address = (known after apply)
+ ebs_optimized = (known after apply)
+ enable_monitoring = (known after apply)
+ iam_instance_profile = (known after apply)
+ id = (known after apply)
+ image_id = (known after apply)
+ instance_type = (known after apply)
+ key_name = (known after apply)
+ name = (known after apply)
+ name_prefix = (known after apply)
+ placement_tenancy = (known after apply)
+ security_groups = (known after apply)
+ spot_price = (known after apply)
+ user_data_base64 = (known after apply)
+ ebs_block_device {
+ delete_on_termination = (known after apply)
+ device_name = (known after apply)
+ encrypted = (known after apply)
+ iops = (known after apply)
+ snapshot_id = (known after apply)
+ volume_size = (known after apply)
+ volume_type = (known after apply)
}
+ root_block_device {
+ delete_on_termination = true
+ encrypted = (known after apply)
+ iops = (known after apply)
+ volume_size = (known after apply)
+ volume_type = (known after apply)
}
}
# module.eks.aws_launch_configuration.workers[1] will be created
+ resource "aws_launch_configuration" "workers" {
+ arn = (known after apply)
+ associate_public_ip_address = (known after apply)
+ ebs_optimized = (known after apply)
+ enable_monitoring = (known after apply)
+ iam_instance_profile = (known after apply)
+ id = (known after apply)
+ image_id = (known after apply)
+ instance_type = (known after apply)
+ key_name = (known after apply)
+ name = (known after apply)
+ name_prefix = (known after apply)
+ placement_tenancy = (known after apply)
+ security_groups = (known after apply)
+ spot_price = (known after apply)
+ user_data_base64 = (known after apply)
+ ebs_block_device {
+ delete_on_termination = (known after apply)
+ device_name = (known after apply)
+ encrypted = (known after apply)
+ iops = (known after apply)
+ snapshot_id = (known after apply)
+ volume_size = (known after apply)
+ volume_type = (known after apply)
}
+ root_block_device {
+ delete_on_termination = true
+ encrypted = (known after apply)
+ iops = (known after apply)
+ volume_size = (known after apply)
+ volume_type = (known after apply)
}
}
# module.eks.aws_security_group.cluster[0] will be created
+ resource "aws_security_group" "cluster" {
+ arn = (known after apply)
+ description = "EKS cluster security group."
+ egress = (known after apply)
+ id = (known after apply)
+ ingress = (known after apply)
+ name = (known after apply)
+ name_prefix = (known after apply)
+ owner_id = (known after apply)
+ revoke_rules_on_delete = false
+ tags = (known after apply)
+ vpc_id = (known after apply)
}
# module.eks.aws_security_group.workers[0] will be created
+ resource "aws_security_group" "workers" {
+ arn = (known after apply)
+ description = "Security group for all nodes in the cluster."
+ egress = (known after apply)
+ id = (known after apply)
+ ingress = (known after apply)
+ name = (known after apply)
+ name_prefix = (known after apply)
+ owner_id = (known after apply)
+ revoke_rules_on_delete = false
+ tags = (known after apply)
+ vpc_id = (known after apply)
}
# module.eks.aws_security_group_rule.cluster_egress_internet[0] will be created
+ resource "aws_security_group_rule" "cluster_egress_internet" {
+ cidr_blocks = [
+ "0.0.0.0/0",
]
+ description = "Allow cluster egress access to the Internet."
+ from_port = 0
+ id = (known after apply)
+ protocol = "-1"
+ security_group_id = (known after apply)
+ self = false
+ source_security_group_id = (known after apply)
+ to_port = 0
+ type = "egress"
}
# module.eks.aws_security_group_rule.cluster_https_worker_ingress[0] will be created
+ resource "aws_security_group_rule" "cluster_https_worker_ingress" {
+ description = "Allow pods to communicate with the EKS cluster API."
+ from_port = 443
+ id = (known after apply)
+ protocol = "tcp"
+ security_group_id = (known after apply)
+ self = false
+ source_security_group_id = (known after apply)
+ to_port = 443
+ type = "ingress"
}
# module.eks.aws_security_group_rule.workers_egress_internet[0] will be created
+ resource "aws_security_group_rule" "workers_egress_internet" {
+ cidr_blocks = [
+ "0.0.0.0/0",
]
+ description = "Allow nodes all egress to the Internet."
+ from_port = 0
+ id = (known after apply)
+ protocol = "-1"
+ security_group_id = (known after apply)
+ self = false
+ source_security_group_id = (known after apply)
+ to_port = 0
+ type = "egress"
}
# module.eks.aws_security_group_rule.workers_ingress_cluster[0] will be created
+ resource "aws_security_group_rule" "workers_ingress_cluster" {
+ description = "Allow workers pods to receive communication from the cluster control plane."
+ from_port = 1025
+ id = (known after apply)
+ protocol = "tcp"
+ security_group_id = (known after apply)
+ self = false
+ source_security_group_id = (known after apply)
+ to_port = 65535
+ type = "ingress"
}
# module.eks.aws_security_group_rule.workers_ingress_cluster_https[0] will be created
+ resource "aws_security_group_rule" "workers_ingress_cluster_https" {
+ description = "Allow pods running extension API servers on port 443 to receive communication from cluster control plane."
+ from_port = 443
+ id = (known after apply)
+ protocol = "tcp"
+ security_group_id = (known after apply)
+ self = false
+ source_security_group_id = (known after apply)
+ to_port = 443
+ type = "ingress"
}
# module.eks.aws_security_group_rule.workers_ingress_self[0] will be created
+ resource "aws_security_group_rule" "workers_ingress_self" {
+ description = "Allow node to communicate with each other."
+ from_port = 0
+ id = (known after apply)
+ protocol = "-1"
+ security_group_id = (known after apply)
+ self = false
+ source_security_group_id = (known after apply)
+ to_port = 65535
+ type = "ingress"
}
# module.eks.kubernetes_config_map.aws_auth[0] will be created
+ resource "kubernetes_config_map" "aws_auth" {
+ data = (known after apply)
+ id = (known after apply)
+ metadata {
+ generation = (known after apply)
+ name = "aws-auth"
+ namespace = "kube-system"
+ resource_version = (known after apply)
+ self_link = (known after apply)
+ uid = (known after apply)
}
}
# module.eks.local_file.kubeconfig[0] will be created
+ resource "local_file" "kubeconfig" {
+ content = (known after apply)
+ directory_permission = "0755"
+ file_permission = "0644"
+ filename = (known after apply)
+ id = (known after apply)
}
# module.eks.null_resource.wait_for_cluster[0] will be created
+ resource "null_resource" "wait_for_cluster" {
+ id = (known after apply)
}
# module.eks.random_pet.workers[0] will be created
+ resource "random_pet" "workers" {
+ id = (known after apply)
+ keepers = (known after apply)
+ length = 2
+ separator = "-"
}
# module.eks.random_pet.workers[1] will be created
+ resource "random_pet" "workers" {
+ id = (known after apply)
+ keepers = (known after apply)
+ length = 2
+ separator = "-"
}
# module.vpc.aws_eip.nat[0] will be created
+ resource "aws_eip" "nat" {
+ allocation_id = (known after apply)
+ association_id = (known after apply)
+ customer_owned_ip = (known after apply)
+ domain = (known after apply)
+ id = (known after apply)
+ instance = (known after apply)
+ network_interface = (known after apply)
+ private_dns = (known after apply)
+ private_ip = (known after apply)
+ public_dns = (known after apply)
+ public_ip = (known after apply)
+ public_ipv4_pool = (known after apply)
+ tags = (known after apply)
+ vpc = true
}
# module.vpc.aws_internet_gateway.this[0] will be created
+ resource "aws_internet_gateway" "this" {
+ arn = (known after apply)
+ id = (known after apply)
+ owner_id = (known after apply)
+ tags = (known after apply)
+ vpc_id = (known after apply)
}
# module.vpc.aws_nat_gateway.this[0] will be created
+ resource "aws_nat_gateway" "this" {
+ allocation_id = (known after apply)
+ id = (known after apply)
+ network_interface_id = (known after apply)
+ private_ip = (known after apply)
+ public_ip = (known after apply)
+ subnet_id = (known after apply)
+ tags = (known after apply)
}
# module.vpc.aws_route.private_nat_gateway[0] will be created
+ resource "aws_route" "private_nat_gateway" {
+ destination_cidr_block = "0.0.0.0/0"
+ destination_prefix_list_id = (known after apply)
+ egress_only_gateway_id = (known after apply)
+ gateway_id = (known after apply)
+ id = (known after apply)
+ instance_id = (known after apply)
+ instance_owner_id = (known after apply)
+ local_gateway_id = (known after apply)
+ nat_gateway_id = (known after apply)
+ network_interface_id = (known after apply)
+ origin = (known after apply)
+ route_table_id = (known after apply)
+ state = (known after apply)
+ timeouts {
+ create = "5m"
}
}
# module.vpc.aws_route.public_internet_gateway[0] will be created
+ resource "aws_route" "public_internet_gateway" {
+ destination_cidr_block = "0.0.0.0/0"
+ destination_prefix_list_id = (known after apply)
+ egress_only_gateway_id = (known after apply)
+ gateway_id = (known after apply)
+ id = (known after apply)
+ instance_id = (known after apply)
+ instance_owner_id = (known after apply)
+ local_gateway_id = (known after apply)
+ nat_gateway_id = (known after apply)
+ network_interface_id = (known after apply)
+ origin = (known after apply)
+ route_table_id = (known after apply)
+ state = (known after apply)
+ timeouts {
+ create = "5m"
}
}
# module.vpc.aws_route_table.private[0] will be created
+ resource "aws_route_table" "private" {
+ id = (known after apply)
+ owner_id = (known after apply)
+ propagating_vgws = (known after apply)
+ route = (known after apply)
+ tags = (known after apply)
+ vpc_id = (known after apply)
}
# module.vpc.aws_route_table.public[0] will be created
+ resource "aws_route_table" "public" {
+ id = (known after apply)
+ owner_id = (known after apply)
+ propagating_vgws = (known after apply)
+ route = (known after apply)
+ tags = (known after apply)
+ vpc_id = (known after apply)
}
# module.vpc.aws_route_table_association.private[0] will be created
+ resource "aws_route_table_association" "private" {
+ id = (known after apply)
+ route_table_id = (known after apply)
+ subnet_id = (known after apply)
}
# module.vpc.aws_route_table_association.private[1] will be created
+ resource "aws_route_table_association" "private" {
+ id = (known after apply)
+ route_table_id = (known after apply)
+ subnet_id = (known after apply)
}
# module.vpc.aws_route_table_association.private[2] will be created
+ resource "aws_route_table_association" "private" {
+ id = (known after apply)
+ route_table_id = (known after apply)
+ subnet_id = (known after apply)
}
# module.vpc.aws_route_table_association.public[0] will be created
+ resource "aws_route_table_association" "public" {
+ id = (known after apply)
+ route_table_id = (known after apply)
+ subnet_id = (known after apply)
}
# module.vpc.aws_route_table_association.public[1] will be created
+ resource "aws_route_table_association" "public" {
+ id = (known after apply)
+ route_table_id = (known after apply)
+ subnet_id = (known after apply)
}
# module.vpc.aws_route_table_association.public[2] will be created
+ resource "aws_route_table_association" "public" {
+ id = (known after apply)
+ route_table_id = (known after apply)
+ subnet_id = (known after apply)
}
# module.vpc.aws_subnet.private[0] will be created
+ resource "aws_subnet" "private" {
+ arn = (known after apply)
+ assign_ipv6_address_on_creation = false
+ availability_zone = "us-east-2a"
+ availability_zone_id = (known after apply)
+ cidr_block = "10.0.1.0/24"
+ id = (known after apply)
+ ipv6_cidr_block_association_id = (known after apply)
+ map_public_ip_on_launch = false
+ owner_id = (known after apply)
+ tags = (known after apply)
+ vpc_id = (known after apply)
}
# module.vpc.aws_subnet.private[1] will be created
+ resource "aws_subnet" "private" {
+ arn = (known after apply)
+ assign_ipv6_address_on_creation = false
+ availability_zone = "us-east-2b"
+ availability_zone_id = (known after apply)
+ cidr_block = "10.0.2.0/24"
+ id = (known after apply)
+ ipv6_cidr_block_association_id = (known after apply)
+ map_public_ip_on_launch = false
+ owner_id = (known after apply)
+ tags = (known after apply)
+ vpc_id = (known after apply)
}
# module.vpc.aws_subnet.private[2] will be created
+ resource "aws_subnet" "private" {
+ arn = (known after apply)
+ assign_ipv6_address_on_creation = false
+ availability_zone = "us-east-2c"
+ availability_zone_id = (known after apply)
+ cidr_block = "10.0.3.0/24"
+ id = (known after apply)
+ ipv6_cidr_block_association_id = (known after apply)
+ map_public_ip_on_launch = false
+ owner_id = (known after apply)
+ tags = (known after apply)
+ vpc_id = (known after apply)
}
# module.vpc.aws_subnet.public[0] will be created
+ resource "aws_subnet" "public" {
+ arn = (known after apply)
+ assign_ipv6_address_on_creation = false
+ availability_zone = "us-east-2a"
+ availability_zone_id = (known after apply)
+ cidr_block = "10.0.4.0/24"
+ id = (known after apply)
+ ipv6_cidr_block_association_id = (known after apply)
+ map_public_ip_on_launch = true
+ owner_id = (known after apply)
+ tags = (known after apply)
+ vpc_id = (known after apply)
}
# module.vpc.aws_subnet.public[1] will be created
+ resource "aws_subnet" "public" {
+ arn = (known after apply)
+ assign_ipv6_address_on_creation = false
+ availability_zone = "us-east-2b"
+ availability_zone_id = (known after apply)
+ cidr_block = "10.0.5.0/24"
+ id = (known after apply)
+ ipv6_cidr_block_association_id = (known after apply)
+ map_public_ip_on_launch = true
+ owner_id = (known after apply)
+ tags = (known after apply)
+ vpc_id = (known after apply)
}
# module.vpc.aws_subnet.public[2] will be created
+ resource "aws_subnet" "public" {
+ arn = (known after apply)
+ assign_ipv6_address_on_creation = false
+ availability_zone = "us-east-2c"
+ availability_zone_id = (known after apply)
+ cidr_block = "10.0.6.0/24"
+ id = (known after apply)
+ ipv6_cidr_block_association_id = (known after apply)
+ map_public_ip_on_launch = true
+ owner_id = (known after apply)
+ tags = (known after apply)
+ vpc_id = (known after apply)
}
# module.vpc.aws_vpc.this[0] will be created
+ resource "aws_vpc" "this" {
+ arn = (known after apply)
+ assign_generated_ipv6_cidr_block = false
+ cidr_block = "10.0.0.0/16"
+ default_network_acl_id = (known after apply)
+ default_route_table_id = (known after apply)
+ default_security_group_id = (known after apply)
+ dhcp_options_id = (known after apply)
+ enable_classiclink = (known after apply)
+ enable_classiclink_dns_support = (known after apply)
+ enable_dns_hostnames = true
+ enable_dns_support = true
+ id = (known after apply)
+ instance_tenancy = "default"
+ ipv6_association_id = (known after apply)
+ ipv6_cidr_block = (known after apply)
+ main_route_table_id = (known after apply)
+ owner_id = (known after apply)
+ tags = (known after apply)
}
Plan: 54 to add, 0 to change, 0 to destroy.
Warning: Interpolation-only expressions are deprecated
on .terraform/modules/vpc/outputs.tf line 353, in output "vpc_endpoint_sqs_id":
353: value = "${element(concat(aws_vpc_endpoint.sqs.*.id, list("")), 0)}"
Terraform 0.11 and earlier required all non-constant expressions to be
provided via interpolation syntax, but this pattern is now deprecated. To
silence this warning, remove the "${ sequence from the start and the }"
sequence from the end of this expression, leaving just the inner expression.
Template interpolation syntax is still used to construct strings from
expressions when the template includes multiple interpolation sequences or a
mixture of literal strings and interpolations. This deprecation applies only
to templates that consist entirely of a single interpolation sequence.
(and 11 more similar warnings elsewhere)
Do you want to perform these actions?
Terraform will perform the actions described above.
Only 'yes' will be accepted to approve.
Enter a value: yes
random_string.suffix: Creating...
random_string.suffix: Creation complete after 0s [id=auUstq2U]
module.eks.aws_iam_role.cluster[0]: Creating...
module.eks.aws_iam_policy.cluster_elb_sl_role_creation[0]: Creating...
module.vpc.aws_vpc.this[0]: Creating...
module.vpc.aws_eip.nat[0]: Creating...
module.eks.aws_iam_role.cluster[0]: Creation complete after 1s [id=training-eks-auUstq2U20201023082434283600000001]
module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSServicePolicy[0]: Creating...
module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSVPCResourceControllerPolicy[0]: Creating...
module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSClusterPolicy[0]: Creating...
module.eks.aws_iam_policy.cluster_elb_sl_role_creation[0]: Creation complete after 2s [id=arn:aws:iam::320707539151:policy/training-eks-auUstq2U-elb-sl-role-creation20201023082434284300000002]
module.eks.aws_iam_role_policy_attachment.cluster_elb_sl_role_creation[0]: Creating...
module.vpc.aws_eip.nat[0]: Creation complete after 2s [id=eipalloc-057050c23a686ae35]
module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSVPCResourceControllerPolicy[0]: Creation complete after 1s [id=training-eks-auUstq2U20201023082434283600000001-20201023082435800100000005]
module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSServicePolicy[0]: Creation complete after 1s [id=training-eks-auUstq2U20201023082434283600000001-20201023082435792600000004]
module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSClusterPolicy[0]: Creation complete after 1s [id=training-eks-auUstq2U20201023082434283600000001-20201023082435786500000003]
module.eks.aws_iam_role_policy_attachment.cluster_elb_sl_role_creation[0]: Creation complete after 1s [id=training-eks-auUstq2U20201023082434283600000001-20201023082436142200000006]
module.vpc.aws_vpc.this[0]: Creation complete after 6s [id=vpc-00e017ab156ecf9ba]
module.vpc.aws_internet_gateway.this[0]: Creating...
module.vpc.aws_route_table.private[0]: Creating...
module.vpc.aws_subnet.public[2]: Creating...
module.vpc.aws_route_table.public[0]: Creating...
module.vpc.aws_subnet.private[0]: Creating...
module.vpc.aws_subnet.public[0]: Creating...
module.vpc.aws_subnet.private[1]: Creating...
aws_security_group.worker_group_mgmt_one: Creating...
aws_security_group.all_worker_mgmt: Creating...
aws_security_group.worker_group_mgmt_two: Creating...
module.vpc.aws_route_table.private[0]: Creation complete after 1s [id=rtb-038b34575027b15ba]
module.vpc.aws_subnet.public[1]: Creating...
module.vpc.aws_route_table.public[0]: Creation complete after 2s [id=rtb-0592297a8b0f655da]
module.vpc.aws_subnet.private[2]: Creating...
module.vpc.aws_subnet.private[0]: Creation complete after 2s [id=subnet-0460b61059b06492c]
module.eks.aws_security_group.cluster[0]: Creating...
module.vpc.aws_subnet.private[1]: Creation complete after 2s [id=subnet-0b5733c754e31662b]
module.eks.aws_security_group.workers[0]: Creating...
module.vpc.aws_subnet.public[2]: Creation complete after 2s [id=subnet-064502a2b20efacfe]
module.vpc.aws_subnet.public[0]: Creation complete after 2s [id=subnet-00ba793c73ab79e40]
module.vpc.aws_internet_gateway.this[0]: Creation complete after 2s [id=igw-028de28b22296799a]
module.vpc.aws_route.public_internet_gateway[0]: Creating...
module.vpc.aws_subnet.private[2]: Creation complete after 1s [id=subnet-012f1b5e655b9ccea]
module.vpc.aws_route_table_association.private[0]: Creating...
module.vpc.aws_route_table_association.private[2]: Creating...
module.vpc.aws_route_table_association.private[1]: Creating...
aws_security_group.worker_group_mgmt_one: Creation complete after 4s [id=sg-0c0a1dbe208750d97]
aws_security_group.all_worker_mgmt: Creation complete after 4s [id=sg-0eb6946fdd982274a]
module.vpc.aws_subnet.public[1]: Creation complete after 3s [id=subnet-071a3ebbe56a7e7e7]
module.vpc.aws_route_table_association.public[0]: Creating...
module.vpc.aws_route_table_association.public[1]: Creating...
module.vpc.aws_route_table_association.public[2]: Creating...
aws_security_group.worker_group_mgmt_two: Creation complete after 4s [id=sg-049ddd821bcd02eff]
module.vpc.aws_nat_gateway.this[0]: Creating...
module.vpc.aws_route_table_association.private[0]: Creation complete after 1s [id=rtbassoc-06117d231be287de1]
module.vpc.aws_route_table_association.private[2]: Creation complete after 1s [id=rtbassoc-034596eaf7abed0b2]
module.vpc.aws_route_table_association.private[1]: Creation complete after 1s [id=rtbassoc-067e35c391e782c0c]
module.vpc.aws_route.public_internet_gateway[0]: Creation complete after 2s [id=r-rtb-0592297a8b0f655da1080289494]
module.vpc.aws_route_table_association.public[0]: Creation complete after 0s [id=rtbassoc-0d02905f7deb3fae4]
module.vpc.aws_route_table_association.public[2]: Creation complete after 0s [id=rtbassoc-0f843945c010d2beb]
module.vpc.aws_route_table_association.public[1]: Creation complete after 0s [id=rtbassoc-0d683d65e6feea3af]
module.eks.aws_security_group.workers[0]: Creation complete after 3s [id=sg-0f8f21bc617e47c24]
module.eks.aws_security_group_rule.workers_ingress_self[0]: Creating...
module.eks.aws_security_group_rule.workers_egress_internet[0]: Creating...
module.eks.aws_security_group.cluster[0]: Creation complete after 3s [id=sg-0b23abd48f0596625]
module.eks.aws_security_group_rule.workers_ingress_cluster[0]: Creating...
module.eks.aws_security_group_rule.workers_ingress_cluster_https[0]: Creating...
module.eks.aws_security_group_rule.cluster_egress_internet[0]: Creating...
module.eks.aws_security_group_rule.cluster_https_worker_ingress[0]: Creating...
module.eks.aws_security_group_rule.workers_ingress_self[0]: Creation complete after 1s [id=sgrule-2634587791]
module.eks.aws_security_group_rule.cluster_https_worker_ingress[0]: Creation complete after 1s [id=sgrule-2217905385]
module.eks.aws_security_group_rule.workers_egress_internet[0]: Creation complete after 3s [id=sgrule-1787898607]
module.eks.aws_security_group_rule.cluster_egress_internet[0]: Creation complete after 3s [id=sgrule-3029531549]
module.eks.aws_eks_cluster.this[0]: Creating...
module.eks.aws_security_group_rule.workers_ingress_cluster[0]: Creation complete after 4s [id=sgrule-3691370097]
module.eks.aws_security_group_rule.workers_ingress_cluster_https[0]: Creation complete after 5s [id=sgrule-1760037517]
module.vpc.aws_nat_gateway.this[0]: Still creating... [10s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [10s elapsed]
module.vpc.aws_nat_gateway.this[0]: Still creating... [20s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [20s elapsed]
module.vpc.aws_nat_gateway.this[0]: Still creating... [30s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [30s elapsed]
module.vpc.aws_nat_gateway.this[0]: Still creating... [40s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [40s elapsed]
module.vpc.aws_nat_gateway.this[0]: Still creating... [50s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [50s elapsed]
module.vpc.aws_nat_gateway.this[0]: Still creating... [1m0s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [1m0s elapsed]
module.vpc.aws_nat_gateway.this[0]: Still creating... [1m10s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [1m10s elapsed]
module.vpc.aws_nat_gateway.this[0]: Still creating... [1m20s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [1m20s elapsed]
module.vpc.aws_nat_gateway.this[0]: Still creating... [1m30s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [1m30s elapsed]
module.vpc.aws_nat_gateway.this[0]: Still creating... [1m40s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [1m40s elapsed]
module.vpc.aws_nat_gateway.this[0]: Still creating... [1m50s elapsed]
module.vpc.aws_nat_gateway.this[0]: Creation complete after 1m51s [id=nat-06ee6136cd599207f]
module.vpc.aws_route.private_nat_gateway[0]: Creating...
module.vpc.aws_route.private_nat_gateway[0]: Creation complete after 2s [id=r-rtb-038b34575027b15ba1080289494]
module.eks.aws_eks_cluster.this[0]: Still creating... [1m50s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [2m0s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [2m10s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [2m20s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [2m30s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [2m40s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [2m50s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [3m0s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [3m10s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [3m20s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [3m30s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [3m40s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [3m50s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [4m0s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [4m10s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [4m20s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [4m30s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [4m40s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [4m50s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [5m0s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [5m10s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [5m20s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [5m30s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [5m40s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [5m50s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [6m0s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [6m10s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [6m20s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [6m30s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [6m40s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [6m50s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [7m0s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [7m10s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [7m20s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [7m30s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [7m40s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [7m50s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [8m0s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [8m10s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [8m20s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [8m30s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [8m40s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [8m50s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [9m0s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [9m10s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [9m20s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [9m30s elapsed]
module.eks.aws_eks_cluster.this[0]: Still creating... [9m40s elapsed]
module.eks.aws_eks_cluster.this[0]: Creation complete after 9m46s [id=training-eks-auUstq2U]
module.eks.data.template_file.userdata[1]: Reading...
module.eks.data.template_file.userdata[0]: Reading...
module.eks.null_resource.wait_for_cluster[0]: Creating...
module.eks.aws_iam_role.workers[0]: Creating...
module.eks.data.template_file.userdata[1]: Read complete after 0s [id=ef589e77497839a64827abc41c3442c6b4897aafd6c25082ccaca50a55d7da45]
module.eks.data.template_file.userdata[0]: Read complete after 0s [id=ef589e77497839a64827abc41c3442c6b4897aafd6c25082ccaca50a55d7da45]
module.eks.null_resource.wait_for_cluster[0]: Provisioning with 'local-exec'...
module.eks.null_resource.wait_for_cluster[0] (local-exec): Executing: ["/bin/sh" "-c" "for i in `seq 1 60`; do if `command -v wget > /dev/null`; then wget --no-check-certificate -O - -q $ENDPOINT/healthz >/dev/null && exit 0 || true; else curl -k -s $ENDPOINT/healthz >/dev/null && exit 0 || true;fi; sleep 5; done; echo TIMEOUT && exit 1"]
module.eks.local_file.kubeconfig[0]: Creating...
module.eks.local_file.kubeconfig[0]: Creation complete after 0s [id=0b8e6b92b40fb314ff7f01a74731c1233c997c67]
module.eks.aws_iam_role.workers[0]: Creation complete after 1s [id=training-eks-auUstq2U2020102308343361120000000c]
module.eks.aws_iam_role_policy_attachment.workers_AmazonEKSWorkerNodePolicy[0]: Creating...
module.eks.aws_iam_role_policy_attachment.workers_AmazonEKS_CNI_Policy[0]: Creating...
module.eks.aws_iam_role_policy_attachment.workers_AmazonEC2ContainerRegistryReadOnly[0]: Creating...
module.eks.aws_iam_instance_profile.workers[1]: Creating...
module.eks.aws_iam_instance_profile.workers[0]: Creating...
module.eks.aws_iam_role_policy_attachment.workers_AmazonEKSWorkerNodePolicy[0]: Creation complete after 1s [id=training-eks-auUstq2U2020102308343361120000000c-2020102308343517760000000f]
module.eks.aws_iam_role_policy_attachment.workers_AmazonEC2ContainerRegistryReadOnly[0]: Creation complete after 1s [id=training-eks-auUstq2U2020102308343361120000000c-20201023083435299600000011]
module.eks.aws_iam_role_policy_attachment.workers_AmazonEKS_CNI_Policy[0]: Creation complete after 1s [id=training-eks-auUstq2U2020102308343361120000000c-20201023083435258200000010]
module.eks.aws_iam_instance_profile.workers[0]: Creation complete after 1s [id=training-eks-auUstq2U2020102308343453850000000e]
module.eks.aws_iam_instance_profile.workers[1]: Creation complete after 1s [id=training-eks-auUstq2U2020102308343453840000000d]
module.eks.aws_launch_configuration.workers[0]: Creating...
module.eks.aws_launch_configuration.workers[1]: Creating...
module.eks.null_resource.wait_for_cluster[0]: Still creating... [10s elapsed]
module.eks.aws_launch_configuration.workers[1]: Creation complete after 8s [id=training-eks-auUstq2U-worker-group-220201023083437061300000013]
module.eks.aws_launch_configuration.workers[0]: Still creating... [10s elapsed]
module.eks.aws_launch_configuration.workers[0]: Creation complete after 12s [id=training-eks-auUstq2U-worker-group-120201023083437050500000012]
module.eks.random_pet.workers[1]: Creating...
module.eks.random_pet.workers[0]: Creating...
module.eks.random_pet.workers[0]: Creation complete after 0s [id=set-worm]
module.eks.random_pet.workers[1]: Creation complete after 0s [id=immortal-mouse]
module.eks.aws_autoscaling_group.workers[1]: Creating...
module.eks.aws_autoscaling_group.workers[0]: Creating...
module.eks.null_resource.wait_for_cluster[0]: Still creating... [20s elapsed]
module.eks.aws_autoscaling_group.workers[1]: Still creating... [10s elapsed]
module.eks.aws_autoscaling_group.workers[0]: Still creating... [10s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [30s elapsed]
module.eks.aws_autoscaling_group.workers[1]: Still creating... [20s elapsed]
module.eks.aws_autoscaling_group.workers[0]: Still creating... [20s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [40s elapsed]
module.eks.aws_autoscaling_group.workers[1]: Still creating... [30s elapsed]
module.eks.aws_autoscaling_group.workers[0]: Still creating... [30s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [50s elapsed]
module.eks.aws_autoscaling_group.workers[1]: Still creating... [40s elapsed]
module.eks.aws_autoscaling_group.workers[0]: Still creating... [40s elapsed]
module.eks.aws_autoscaling_group.workers[0]: Creation complete after 42s [id=training-eks-auUstq2U-worker-group-120201023083448449100000015]
module.eks.aws_autoscaling_group.workers[1]: Creation complete after 42s [id=training-eks-auUstq2U-worker-group-220201023083448448900000014]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [1m0s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [1m10s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [1m20s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [1m30s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [1m40s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [1m50s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [2m0s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [2m10s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [2m20s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [2m30s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [2m40s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [2m50s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [3m0s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [3m10s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [3m20s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [3m30s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [3m40s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [3m50s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [4m0s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [4m10s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [4m20s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [4m30s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [4m40s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [4m50s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [5m0s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [5m10s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [5m20s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [5m30s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [5m40s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [5m50s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [6m0s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [6m10s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [6m20s elapsed]
module.eks.null_resource.wait_for_cluster[0]: Still creating... [6m30s elapsed]
module.eks.null_resource.wait_for_cluster[0] (local-exec): TIMEOUT
Error: Error running command 'for i in `seq 1 60`; do if `command -v wget > /dev/null`; then wget --no-check-certificate -O - -q $ENDPOINT/healthz >/dev/null && exit 0 || true; else curl -k -s $ENDPOINT/healthz >/dev/null && exit 0 || true;fi; sleep 5; done; echo TIMEOUT && exit 1': exit status 1. Output: TIMEOUT
$ terraform plan
Refreshing Terraform state in-memory prior to plan...
The refreshed state will be used to calculate this plan, but will not be
persisted to local or remote state storage.
random_string.suffix: Refreshing state... [id=auUstq2U]
module.eks.data.aws_caller_identity.current: Refreshing state... [id=2020-10-23 08:23:25.324727 +0000 UTC]
module.eks.data.aws_partition.current: Refreshing state... [id=aws]
module.eks.data.aws_iam_policy_document.cluster_assume_role_policy: Refreshing state... [id=2764486067]
module.vpc.aws_vpc.this[0]: Refreshing state... [id=vpc-00e017ab156ecf9ba]
data.aws_availability_zones.available: Refreshing state... [id=us-east-2]
module.eks.data.aws_ami.eks_worker_windows: Refreshing state... [id=ami-05057ad276b1ef1d3]
module.eks.data.aws_ami.eks_worker: Refreshing state... [id=ami-0135903686f192ffe]
module.eks.data.aws_iam_policy_document.cluster_elb_sl_role_creation[0]: Refreshing state... [id=3407219844]
module.eks.aws_iam_role.cluster[0]: Refreshing state... [id=training-eks-auUstq2U20201023082434283600000001]
module.eks.data.aws_iam_policy_document.workers_assume_role_policy: Refreshing state... [id=3778018924]
module.eks.aws_iam_policy.cluster_elb_sl_role_creation[0]: Refreshing state... [id=arn:aws:iam::320707539151:policy/training-eks-auUstq2U-elb-sl-role-creation20201023082434284300000002]
module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSVPCResourceControllerPolicy[0]: Refreshing state... [id=training-eks-auUstq2U20201023082434283600000001-20201023082435800100000005]
module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSClusterPolicy[0]: Refreshing state... [id=training-eks-auUstq2U20201023082434283600000001-20201023082435786500000003]
module.eks.aws_iam_role_policy_attachment.cluster_AmazonEKSServicePolicy[0]: Refreshing state... [id=training-eks-auUstq2U20201023082434283600000001-20201023082435792600000004]
module.vpc.aws_eip.nat[0]: Refreshing state... [id=eipalloc-057050c23a686ae35]
module.eks.aws_iam_role_policy_attachment.cluster_elb_sl_role_creation[0]: Refreshing state... [id=training-eks-auUstq2U20201023082434283600000001-20201023082436142200000006]
aws_security_group.all_worker_mgmt: Refreshing state... [id=sg-0eb6946fdd982274a]
aws_security_group.worker_group_mgmt_one: Refreshing state... [id=sg-0c0a1dbe208750d97]
module.eks.aws_security_group.cluster[0]: Refreshing state... [id=sg-0b23abd48f0596625]
aws_security_group.worker_group_mgmt_two: Refreshing state... [id=sg-049ddd821bcd02eff]
module.eks.aws_security_group.workers[0]: Refreshing state... [id=sg-0f8f21bc617e47c24]
module.vpc.aws_route_table.public[0]: Refreshing state... [id=rtb-0592297a8b0f655da]
module.vpc.aws_internet_gateway.this[0]: Refreshing state... [id=igw-028de28b22296799a]
module.vpc.aws_route_table.private[0]: Refreshing state... [id=rtb-038b34575027b15ba]
module.vpc.aws_subnet.public[1]: Refreshing state... [id=subnet-071a3ebbe56a7e7e7]
module.vpc.aws_subnet.public[2]: Refreshing state... [id=subnet-064502a2b20efacfe]
module.vpc.aws_subnet.public[0]: Refreshing state... [id=subnet-00ba793c73ab79e40]
module.vpc.aws_subnet.private[2]: Refreshing state... [id=subnet-012f1b5e655b9ccea]
module.vpc.aws_subnet.private[1]: Refreshing state... [id=subnet-0b5733c754e31662b]
module.vpc.aws_subnet.private[0]: Refreshing state... [id=subnet-0460b61059b06492c]
module.vpc.aws_route.public_internet_gateway[0]: Refreshing state... [id=r-rtb-0592297a8b0f655da1080289494]
module.eks.aws_security_group_rule.cluster_egress_internet[0]: Refreshing state... [id=sgrule-3029531549]
module.eks.aws_security_group_rule.cluster_https_worker_ingress[0]: Refreshing state... [id=sgrule-2217905385]
module.eks.aws_security_group_rule.workers_ingress_cluster[0]: Refreshing state... [id=sgrule-3691370097]
module.eks.aws_security_group_rule.workers_ingress_self[0]: Refreshing state... [id=sgrule-2634587791]
module.eks.aws_security_group_rule.workers_egress_internet[0]: Refreshing state... [id=sgrule-1787898607]
module.eks.aws_security_group_rule.workers_ingress_cluster_https[0]: Refreshing state... [id=sgrule-1760037517]
module.vpc.aws_route_table_association.public[0]: Refreshing state... [id=rtbassoc-0d02905f7deb3fae4]
module.vpc.aws_route_table_association.public[1]: Refreshing state... [id=rtbassoc-0d683d65e6feea3af]
module.vpc.aws_route_table_association.public[2]: Refreshing state... [id=rtbassoc-0f843945c010d2beb]
module.vpc.aws_nat_gateway.this[0]: Refreshing state... [id=nat-06ee6136cd599207f]
module.vpc.aws_route_table_association.private[1]: Refreshing state... [id=rtbassoc-067e35c391e782c0c]
module.vpc.aws_route_table_association.private[2]: Refreshing state... [id=rtbassoc-034596eaf7abed0b2]
module.vpc.aws_route_table_association.private[0]: Refreshing state... [id=rtbassoc-06117d231be287de1]
module.eks.aws_eks_cluster.this[0]: Refreshing state... [id=training-eks-auUstq2U]
module.vpc.aws_route.private_nat_gateway[0]: Refreshing state... [id=r-rtb-038b34575027b15ba1080289494]
module.eks.aws_iam_role.workers[0]: Refreshing state... [id=training-eks-auUstq2U2020102308343361120000000c]
module.eks.data.template_file.userdata[0]: Refreshing state... [id=ef589e77497839a64827abc41c3442c6b4897aafd6c25082ccaca50a55d7da45]
module.eks.data.template_file.userdata[1]: Refreshing state... [id=ef589e77497839a64827abc41c3442c6b4897aafd6c25082ccaca50a55d7da45]
module.eks.null_resource.wait_for_cluster[0]: Refreshing state... [id=1605586206173714438]
module.eks.local_file.kubeconfig[0]: Refreshing state... [id=0b8e6b92b40fb314ff7f01a74731c1233c997c67]
data.aws_eks_cluster_auth.cluster: Refreshing state...
data.aws_eks_cluster.cluster: Refreshing state...
module.eks.aws_iam_role_policy_attachment.workers_AmazonEC2ContainerRegistryReadOnly[0]: Refreshing state... [id=training-eks-auUstq2U2020102308343361120000000c-20201023083435299600000011]
module.eks.aws_iam_role_policy_attachment.workers_AmazonEKSWorkerNodePolicy[0]: Refreshing state... [id=training-eks-auUstq2U2020102308343361120000000c-2020102308343517760000000f]
module.eks.aws_iam_role_policy_attachment.workers_AmazonEKS_CNI_Policy[0]: Refreshing state... [id=training-eks-auUstq2U2020102308343361120000000c-20201023083435258200000010]
module.eks.aws_iam_instance_profile.workers[0]: Refreshing state... [id=training-eks-auUstq2U2020102308343453850000000e]
module.eks.aws_iam_instance_profile.workers[1]: Refreshing state... [id=training-eks-auUstq2U2020102308343453840000000d]
module.eks.aws_launch_configuration.workers[0]: Refreshing state... [id=training-eks-auUstq2U-worker-group-120201023083437050500000012]
module.eks.aws_launch_configuration.workers[1]: Refreshing state... [id=training-eks-auUstq2U-worker-group-220201023083437061300000013]
module.eks.random_pet.workers[0]: Refreshing state... [id=set-worm]
module.eks.random_pet.workers[1]: Refreshing state... [id=immortal-mouse]
module.eks.aws_autoscaling_group.workers[1]: Refreshing state... [id=training-eks-auUstq2U-worker-group-220201023083448448900000014]
module.eks.aws_autoscaling_group.workers[0]: Refreshing state... [id=training-eks-auUstq2U-worker-group-120201023083448449100000015]
------------------------------------------------------------------------
An execution plan has been generated and is shown below.
Resource actions are indicated with the following symbols:
+ create
+/- create replacement and then destroy
Terraform will perform the following actions:
# module.eks.kubernetes_config_map.aws_auth[0] will be created
+ resource "kubernetes_config_map" "aws_auth" {
+ data = {
+ "mapAccounts" = jsonencode([])
+ "mapRoles" = <<~EOT
- "groups":
- "system:bootstrappers"
- "system:nodes"
"rolearn": "arn:aws:iam::320707539151:role/training-eks-auUstq2U2020102308343361120000000c"
"username": "system:node:{{EC2PrivateDNSName}}"
EOT
+ "mapUsers" = jsonencode([])
}
+ id = (known after apply)
+ metadata {
+ generation = (known after apply)
+ name = "aws-auth"
+ namespace = "kube-system"
+ resource_version = (known after apply)
+ self_link = (known after apply)
+ uid = (known after apply)
}
}
# module.eks.null_resource.wait_for_cluster[0] is tainted, so must be replaced
+/- resource "null_resource" "wait_for_cluster" {
~ id = "1605586206173714438" -> (known after apply)
}
Plan: 2 to add, 0 to change, 1 to destroy.
Changes to Outputs:
+ config_map_aws_auth = [
+ {
+ binary_data = null
+ data = {
+ "mapAccounts" = jsonencode([])
+ "mapRoles" = <<~EOT
- "groups":
- "system:bootstrappers"
- "system:nodes"
"rolearn": "arn:aws:iam::320707539151:role/training-eks-auUstq2U2020102308343361120000000c"
"username": "system:node:{{EC2PrivateDNSName}}"
EOT
+ "mapUsers" = jsonencode([])
}
+ id = (known after apply)
+ metadata = [
+ {
+ annotations = null
+ generate_name = null
+ generation = (known after apply)
+ labels = null
+ name = "aws-auth"
+ namespace = "kube-system"
+ resource_version = (known after apply)
+ self_link = (known after apply)
+ uid = (known after apply)
},
]
},
]
Warning: Interpolation-only expressions are deprecated
on .terraform/modules/vpc/outputs.tf line 353, in output "vpc_endpoint_sqs_id":
353: value = "${element(concat(aws_vpc_endpoint.sqs.*.id, list("")), 0)}"
Terraform 0.11 and earlier required all non-constant expressions to be
provided via interpolation syntax, but this pattern is now deprecated. To
silence this warning, remove the "${ sequence from the start and the }"
sequence from the end of this expression, leaving just the inner expression.
Template interpolation syntax is still used to construct strings from
expressions when the template includes multiple interpolation sequences or a
mixture of literal strings and interpolations. This deprecation applies only
to templates that consist entirely of a single interpolation sequence.
(and 11 more similar warnings elsewhere)
------------------------------------------------------------------------
Note: You didn't specify an "-out" parameter to save this plan, so Terraform
can't guarantee that exactly these actions will be performed if
"terraform apply" is subsequently run.
$ terraform version
Terraform v0.13.4
+ provider registry.terraform.io/hashicorp/aws v3.12.0
+ provider registry.terraform.io/hashicorp/kubernetes v1.13.2
+ provider registry.terraform.io/hashicorp/local v1.4.0
+ provider registry.terraform.io/hashicorp/null v2.1.2
+ provider registry.terraform.io/hashicorp/random v2.3.0
+ provider registry.terraform.io/hashicorp/template v2.2.0