- Create the underlying infrastructure (VPC, subnets, route tables, internet gateway, nat gateway, security groups).
- Create EKS cluster role with policies - AmazonEKSClusterPolicy, AmazonEKSVPCResourceController.
- Create EKS node group role with policies - AmazonEKSWorkerNodePolicy, AmazonEC2ContainerRegistryReadOnly, AmazonEKS_CNI_Policy.
- Create the EKS cluster.
- Create the node group.
- Apply the deployment.yaml kubectl config.
- Tag the public subnets with Tag name: kubernetes.io/role/elb; Tag value: 1.
- Create IAM OIDC identity provider for your cluster.
- Create load balancer controller policy and load balancer trust policy.
- Create load balancer controller role.
- Create service account.
- Add eks-charts helm repository and update.
- Install load balancer controller using helm.
- Apply the ingress.yaml kubectl config.
- To set kube config context
aws eks update-kubeconfig --region us-east-1 --name clusterName
- To apply kubectl config
kubectl apply -f config.yaml
- Add helm repo
helm repo add eks https://aws.github.io/eks-charts
- helm install load balancer
helm install aws-load-balancer-controller eks/aws-load-balancer-controller
-n kube-system
--set clusterName=clusterName
--set serviceAccount.create=false
--set serviceAccount.name=aws-load-balancer-controller