https://velog.io/@aylee5/EKS-Private-Cluster-%EC%83%9D%EC%84%B1-AWS-%EC%BD%98%EC%86%94
EKS - Cluster

Create Role - RoleName: wsi-eks-cluster-Roles

생성 후 인라인 정책을 연결해줍니다.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:DescribeAccountAttributes",
"ec2:DescribeAddresses",
"ec2:DescribeInternetGateways"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"cloudwatch:PutMetricData"
],
"Resource": "*",
"Effect": "Allow"
}
]
}

Cluster를 생성하실 때 Networkring 부분에서 Kubernetes 서비스 IP 주소 범위 구성을 구성하실 수 있습니다.










Pod Networing을 위한 CNI 설정을 해야하며, Nodegroup에 대한 IAM Rolre을 생성하자. VPC CNI는 Cluster를 생성할 떄 기본적으로 세팅되어있다.






aud": "sts.amazonaws.com" → 아래꺼로 변경!! sub":"system:serviceaccount:kube-system:aws-node"





{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"autoscaling:DescribeAutoScalingGroups",
"autoscaling:DescribeAutoScalingInstances",
"autoscaling:DescribeLaunchConfigurations",
"autoscaling:DescribeTags",
"autoscaling:SetDesiredCapacity",
"autoscaling:TerminateInstanceInAutoScalingGroup",
"ec2:DescribeLaunchTemplateVersions"
],
"Resource": "*"
}
]
}




💡Nodegroup을 2개 생성시 Pod를 affinity사용해 각 어떤 노드 그룹에 생성할 것인지 명시 해야하기 때문에 NodeGroup 생성 과정에서 꼭 label을 추가해주어야 합니다.






curl -o kubectl https://s3.us-west-2.amazonaws.com/amazon-eks/1.22.6/2022-03-09/bin/linux/amd64/kubectl
chmod +x ./kubectl
mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$PATH:$HOME/bin
echo 'export PATH=$PATH:$HOME/bin' >> ~/.bashrc
kubectl version --short --client
aws configure
AWS Access Key ID [None]: AK31KE*********
AWS Secret Aceess Key [None]: JKJSKLDJA12*********
Default region name [None]: ap-northeast-2
Default output format [None]:

aws eks update-kubeconfig --region ap-northeast-2 --name wsi-eks-cluster
kubectl get svc
kubectl get nodes


다음 편에서는 yaml을 사용해서 Cluster와 NodeGroup을 생성하도록 하겠습니다.