AWS EKS集群和节点创建IAM角色
AWS EKS集群和节点创建需要使用IAM角色进行授权。以下是创建IAM角色的示例代码:
resource "aws_iam_role" "eks_cluster_role" {
name = "eks_cluster_role"
assume_role_policy = jsonencode({
Version = "2012-10-17"
Statement = [
{
Action = "sts:AssumeRole"
Effect = "Allow"
Principal = {
Service = "ec2.amazonaws.com"
}
},
{
Action = "sts:AssumeRole"
Effect = "Allow"
Principal = {
Service = "eks.amazonaws.com"
}
}
]
})
}
resource "aws_iam_role_policy_attachment" "eks_cluster_policy_attachment" {
policy_arn = "arn:aws:iam::aws:policy/AmazonEKSClusterPolicy"
role = aws_iam_role.eks_cluster_role.name
}
resource "aws_iam_role_policy_attachment" "eks_worker_nodes_policy_attachment" {
policy_arn = "arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy"
role = aws_iam_role.eks_cluster_role.name
}
resource "aws_iam_role_policy_attachment" "eks_cni_policy_attachment" {
policy_arn = "arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy"
role = aws_iam_role.eks_cluster_role.name
}
该代码创建了一个名为eks_cluster_role的IAM角色,并将AmazonEKSClusterPolicy、AmazonEKSWorkerNodePolicy和AmazonEKS_CNI_Policy策略附加到该角色上,以授权AWS EKS集群和节点的创建。