# EKS ALB {{tag>eks alb}} ### AWS Load Balancer Controller에 대한 OIDC 공급자 및 IAM 역할 생성 - region-code : ap-northeast-2 - cluster : eks-demo eksctl utils associate-iam-oidc-provider --region region-code \ --cluster your-cluster-name --approve eksctl utils associate-iam-oidc-provider --region ap-northeast-2 \ --cluster eks-demo --approve ### IAM 정책 다운로드 curl -o iam_policy.json https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.2.0/docs/install/iam_policy.json ### 정책 생성 aws iam create-policy --policy-name AWSLoadBalancerControllerIAMPolicy --policy-document file://iam_policy.json ### 서비스 계정 생성 eksctl create iamserviceaccount --cluster=eks-demo --namespace=kube-system --name=aws-load-balancer-controller --attach-policy-arn=arn:aws:iam::YOUR_AWS_ACCOUNT_ID:policy/AWSLoadBalancerControllerIAMPolicy --override-existing-serviceaccounts --approve ### AWS ALB Ingress Controller for Kubernetes 제거 ### 설치 확인 kubectl get deployment -n kube-system alb-ingress-controller ## Helm 3.0.0을 사용하여 AWS Load Balancer Controller 설치 kubectl apply -k "github.com/aws/eks-charts/stable/aws-load-balancer-controller//crds?ref=master" helm repo add eks https://aws.github.io/eks-charts helm upgrade -i aws-load-balancer-controller eks/aws-load-balancer-controller \ --set clusterName=eks-demo --set serviceAccount.create=false \ --set serviceAccount.name=aws-load-balancer-controller -n kube-system ### 설치 확인 kubectl get deployment -n kube-system aws-load-balancer-controller ## Links - https://aws.amazon.com/ko/premiumsupport/knowledge-center/eks-alb-ingress-aws-waf/