///
Search
🛕

Node Group 생성

Node Group을 생성하기 전에 Pod 네트워킹을 위한 CNI 설정과 Node Group에 대한 IAM 역할 설정, Cluster, Control Plane, Node에 대하 보안 그룹 인바운드 설정을 먼저 진행한다.
VPC CNI 플러그인에 대한 IAM 역할 생성
VPC CNI는 클러스터 내에서 Pod 네트워킹을 활성화 해야 한다. Cluster를 생성할 때 기본으로 네트워킹 추가 기능에 세팅 되어있기 때문에 우리가 만든 Cluster 에는 이미 CNI 플러그인이 설치가 되어 있다.
EKS 콘솔에서 Cluster 구성에서 VPC CNI 정보를 확인할 수 있다.
VPC CNI 플러그인을 사용하면 Pod가 VPC 네트워크에서와 마찬가지로 Pod 내부에서 동일한 IP 주소를 가질 수 있게 됩니다.
이제 CNI에 대한 역할을 생성해주기 위해서 IAM 페이지에서 역할을 만듭니다. 개체 선택에서 웹 ID를 선택하고 위에서 만들었던 자격 증명 공급자와 추가한 sts.amazonaws.com을 Audience를 선택합니다.
권한 정책 연결은 AmazonEKS_CNI_Policy 이름을 가진 AWS 관리형 정책을 선택하고 역할 이름을 지정해서 생성합니다.
방금 만든 역할의 신뢰 관계 내용에서 sts.amazonaws.com 내용을 수정 해야 합니다.
아래와 같이 편집합니다.
이제 위에서 생성한 역할을 VPC CNI에 연결해줍니다.
EKS 콘솔로 이동해서 Cluster 추가 기능에서 vpc-cni를 선택하고 편집해서 위에서 만든 CNI 역할을 할당합니다. IAM 역할 변경 후 잠시 뒤면 업데이트 됩니다.
변경이 완료되면 IAM 역할이 변경된것을 볼 수 있습니다.
Node에 대한 IAM 역할 생성
IAM에서 역할 만들기로 들어가서 Node에 대한 역할 생성을 진행합니다. 사용 사례에서는 EC2 선택합니다.
그리고 AWS 관리형 정책에서는 AmazonEKSWorkerNodePloicy, AmazonEC2ContainerRegistryReadOnly 를 선택하고 역할을 만들어 줍니다.
Node 보안 그룹 생성
보안 그룹을 먼저 생성하는데 생성이 되면 ID 생성이 되기 때문에 다른 보안 그룹에서도 사용할 수 있어서 먼저 생성을 진행합니다.
보안 그룹 인바운드 세팅
Cluster 보안그룹 Cluster 보안그룹의 경우에는 생성할 때 자동으로 생성되며 권장 값으로 적용되어 있습니다. 확인은 Cluster 구성 → 네트워크 → 클러스터 보안 그룹에서 확인할 수 있습니다.
Control Plane 보안그룹 Control Plane 보안그룹은 Cluster를 생성할 때 안에 내용은 없이 만들어서 할당했습니다. 인바운드 트래픽에 대한 세팅은 하지 않고 생성만 했기 때문에 인바운드에 대한 설정을 해야 합니다. 권장 인바운드 트래픽은 모든 노드 보안 그룹에 대해 443 포트를 열어주라고 되어 있습니다.
Node 보안그룹 마지막으로 Node 보안그룹 인바운드 세팅을 해야 합니다. 모든 노드 보안 그룹에 대해서 all Open하고 Control Plane에 대해 443, 1025 ~ 65535 포트를 여는게 권장 인바운드 트래픽입니다.
Node Group 추가
Cluster 화면에서 구성 → 컴퓨팅으로들어가면 노드 그룹을 추가할 수 있습니다.
Node Group 이름을 지정하고 앞에서 만들었던 Node에 대한 IAM 역할을 선택하고 다음으로 넘어갑니다.
Worker Node는 전부 Private subnet에 생성할 것이기 때문에 서브넷은 Private subnet만 선택해서 진행하고 Private subnet에 node가 배포된 경우 서브넷에 퍼블릭 IP가 할당된 NAT 게이트웨이에 대한 경로가 있어야 합니다.