如何将 CloudWatchLogsFullAccess 附加到 EKS EC2 实例的 IAM 角色
How to attach CloudWatchLogsFullAccess to the IAM role of EKS EC2 instance
我使用模块,terraform-aws-modules/eks/aws 提供 EKS。默认情况下,该模块为 EKS EC2 IAM 角色提供三个策略:AmazonEKSWorkerNodePolicy、AmazonEC2ContainerRegistryReadOnly 和 AmazonEKS_CNI_Policy。我想附加一个附加策略 CloudWatchLogsFullAccess 到 IAM 角色。我读了文档。我没有找到附加它的方法。我必须登录到 AWS 控制台,手动将 CloudWatchLogsFullAccess 附加到 IAM 角色。当我使用此 EKS 模块配置 EKS 时,有没有办法使用 Terraform 代码附加它?
我添加了下面的代码。
resource "aws_iam_role_policy_attachment" "cloudWatch" {
role = module.eks.cluster_iam_role_arn
policy_arn = "arn:aws:iam::aws:policy/CloudWatchLogsFullAccess"
}
但是,它抱怨“角色名称的指定值无效”。
错误:将策略 arn:aws:iam::aws:policy/CloudWatchLogsFullAccess 附加到 IAM 角色 arn:aws:iam::678515134618:role/my-eks20210303061731134400000005 时出错:ValidationError:roleName 的指定值无效。它必须仅包含字母数字字符 and/or 以下内容:+=,.@_-
状态码:400,请求ID:aee57a35-ae72-499e-8653-e61e795818e4
创建 eks 集群后,您可以获得 cluster_iam_role_arn_from its outputs. Having the ARN you can attach extra policies to it using aws_iam_role_policy_attachment:
resource "aws_iam_role_policy_attachment" "test-attach" {
role = module.myeks.cluster_iam_role_arn
policy_arn = "arn:aws:iam::aws:policy/CloudWatchLogsFullAccess"
}
我使用模块,terraform-aws-modules/eks/aws 提供 EKS。默认情况下,该模块为 EKS EC2 IAM 角色提供三个策略:AmazonEKSWorkerNodePolicy、AmazonEC2ContainerRegistryReadOnly 和 AmazonEKS_CNI_Policy。我想附加一个附加策略 CloudWatchLogsFullAccess 到 IAM 角色。我读了文档。我没有找到附加它的方法。我必须登录到 AWS 控制台,手动将 CloudWatchLogsFullAccess 附加到 IAM 角色。当我使用此 EKS 模块配置 EKS 时,有没有办法使用 Terraform 代码附加它?
我添加了下面的代码。
resource "aws_iam_role_policy_attachment" "cloudWatch" {
role = module.eks.cluster_iam_role_arn
policy_arn = "arn:aws:iam::aws:policy/CloudWatchLogsFullAccess"
}
但是,它抱怨“角色名称的指定值无效”。 错误:将策略 arn:aws:iam::aws:policy/CloudWatchLogsFullAccess 附加到 IAM 角色 arn:aws:iam::678515134618:role/my-eks20210303061731134400000005 时出错:ValidationError:roleName 的指定值无效。它必须仅包含字母数字字符 and/or 以下内容:+=,.@_- 状态码:400,请求ID:aee57a35-ae72-499e-8653-e61e795818e4
创建 eks 集群后,您可以获得 cluster_iam_role_arn_from its outputs. Having the ARN you can attach extra policies to it using aws_iam_role_policy_attachment:
resource "aws_iam_role_policy_attachment" "test-attach" {
role = module.myeks.cluster_iam_role_arn
policy_arn = "arn:aws:iam::aws:policy/CloudWatchLogsFullAccess"
}