ebs-csi-add-on.tf
module "ebs_csi_irsa" {
source = "terraform-aws-modules/iam/aws//modules/iam-role-for-service-accounts-eks"
role_name = "ebs-csi"
attach_ebs_csi_policy = true
oidc_providers = {
main = {
provider_arn = module.eks.oidc_provider_arn
namespace_service_accounts = ["kube-system:ebs-csi-controller-sa"]
}
}
}
resource "aws_eks_addon" "ebs-csi" {
cluster_name = module.eks.cluster_name
addon_name = "aws-ebs-csi-driver"
service_account_role_arn = module.ebs_csi_irsa.iam_role_arn
tags = {
"eks_addon" = "ebs-csi"
"terraform" = "true"
}
}
이것도 로드밸런서 컨트롤러와 마찬가지이다. irsa 를 생성하고 생성한 eks 계정과 역할을 연결하는 것인데
service_account_role_arn = module.ebs_csi_irsa.iam_role_arn 성격이 다르다. 왜냐하면 ebs-csi 는 aws 내부 리소스 이기 때문에 eks 내부에 sa 와 ebs-csi role 을 매핑 해주는 것이기 때문이다.
생성된 eks
eks ebs-csi 계정에 주석이 달린 모습니다. ebs-csi 역할이 부착되어있다.
aws-load-balancer 컨트롤러와 역할이 제대로 동작하는 모습이다.
만들어본 테라폼 - eks : drogva/terraform-eks-self-made- (github.com)
EKS - jenkins - ArgoCD 인프라 구축 -Terraform -(2) (0) | 2024.04.18 |
---|---|
EKS - jenkins - ArgoCD 인프라 구축 -Terraform (0) | 2024.04.18 |
테라폼으로 eks 구축하기 (0) | 2024.03.31 |