【问题标题】:Terraform: How to add Windows worker nodes to eks cluster?Terraform:如何将 Windows 工作节点添加到 eks 集群?
【发布时间】:2021-01-12 22:13:51
【问题描述】:

我在 AWS (Linux) 上使用带有工作节点的 terraform 代码预置 EKS 集群 (1.16)。以下代码用于创建 eks 工作节点(Linux):

resource "aws_eks_node_group" "default-worker-nodes-group" {
  cluster_name    = "${var.eks_cluster_name}"
  node_group_name = "${var.eks_cluster_node_group_name}"
  node_role_arn   = "${var.eks_worker_node_role_arn}"
  subnet_ids      = ["${var.eks_worker_subnet_ids}"]
  ami_type        = "${var.ami_type}"
  instance_types  = "${var.instance_type}"
  disk_size       = "${var.volume_size}"
  release_version = "${var.release_version}"
  version         = "${var.eks_cluster_version}"

  remote_access {
    ec2_ssh_key               = "${var.ec2_ssh_key}"
    source_security_group_ids = ["${var.eks_worker_security_groups_ids}"]
  }

 
}

我想添加额外的 Windows 工作节点。怎么做?

我在下面定义了 Linux 节点实例角色的 ARN。对于 Windows,我可以使用与 Linux 相同的角色吗?也就是说,Windows节点实例角色的ARN和Linux节点实例角色的ARN是一样的吗?

#eks workers roles
resource "aws_iam_role" "eks-workernode-role" {
  name = "${var.eks_workernode_iam_role_name}"

  assume_role_policy = <<POLICY
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "ec2.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
POLICY
}

data:
  mapRoles: |
    - rolearn: ${aws_iam_role.eks-workernode-role.arn}
      username: system:node:{{EC2PrivateDNSName}}
      groups:
        - system:bootstrappers
        - system:nodes

【问题讨论】:

    标签: terraform amazon-eks


    【解决方案1】:

    您需要使用属于 Windows-AMI 的 AMI,请参阅Amazon EKS optimized Windows AMIs

    您还需要aws-auth ConfigMap 中的角色略有不同,如Launching self-managed Windows nodes 中所述,与mapRoles 类似

          groups:
            - system:bootstrappers
            - system:nodes
            - eks:kube-proxy-windows
    

    【讨论】:

    • 您好琼,感谢您的回答。我更新了我的问题。往上看。我在上面的代码中定义了 Linux 节点实例角色的 ARN。对于 Windows,我可以使用与 Linux 相同的角色吗?也就是说,Windows节点实例角色的ARN和Linux节点实例角色的ARN一样吗?
    • 我使用资源“aws_eks_node_group”来配置 eks 工作节点组。在 Argument Reference 中,我使用 ami_type (AL2_x86_64) 和实例类型。没有我可以使用的 AMI ID 参数。我无法使用 Amazon EKS 优化的 Windows AMI 中的 Windows AMI。
    猜你喜欢
    • 2021-07-20
    • 2022-11-01
    • 2020-04-23
    • 2021-07-21
    • 2021-03-16
    • 2021-06-21
    • 1970-01-01
    • 2020-08-19
    • 1970-01-01
    相关资源
    最近更新 更多