EKS 노드 그룹 생성

Lungnaha·2022년 4월 6일
2

Docker&k8s

목록 보기
7/9

해당 포스트는 EKS를 이용해 클러스터를 구성하였다는 가정하여 작성되었습니다.
혹시 클러스터 생성에 대해서 어려움을 겪으신다면 제 이전 포스트를 읽거나 관련 다큐먼트를 찾아보시고 클러스터를 만든 후, 해당 실습을 진행해주시기 바랍니다.

💪 들어가며..

EKS 클러스터를 실행하고, 저의 경우는 컴퓨터 환경이 윈도우 환경이기에, 쿠버네티스 실습을 위해 AWS의 EC2를 활용하여 실습 환경을 세팅하였습니다.

💿 EKS와 kubectl 연결하기

먼저 혹시나 모르니 아래의 명령어로 EC2와 사용자가 잘 연결되어 있는지 확인해주고 진행합니다.
혹시 잘 연결되어잇지 않다면, configure 이나 config파일 생성으로 계정을 등록해줍니다.

aws sts get-caller-identity

그 후에는 아래의 명령어를 입력해서 EKS와 Kubectl을 연결해줍니다.

aws eks update-kubeconfig --region=ap-northeast-2 --name=eks명칭 --alias=별칭
cat ~/.kube/config

만약 성공한다면 아래와 같이 설정됨을 확인할 수 있습니다.

그리고 아래의 명령어를 추가로 입력해서 control plane과 CoreDNS가 잘 실행되고 있는지 여부를 확인할 수 있습니다.

kubectl cluster-info

만일 위와 같이 나오지 않고, 권한 관련 오류가 나온다면 계정 연결이 잘 안되어있는 상황이라는 의미입니다.
(저도 이것때문에 고생 좀 했습니다...)

📀 노드 그룹 생성하기

이제 연결이 완료된 클러스터 위에 노드 그룹을 생성해주겠습니다.
클러스터의 컴퓨팅에 들어가서 아래와 같이 노드 그룹 추가를 진행합니다.

제가 실습을 진행한 노드 그룹의 구성은 아래와 같습니다.

IAM은 아래와 같이 지정해주었습니다.

기타 설정은 아래와 같습니다.

  • AMI 유형 : 아마존 리눅스
  • 인스턴스 유형 : t3.micro (제일 가격 저렴)
  • 노드 그룹 : 2개 (1개로 해도 무방할듯)
  • 노드 그룹 네트워크 : 클러스터와 동일하게 지정
    - 해당 부분은 추후에 클러스터와 다르게도 지정해보는 실습도 해볼 예정
  • 노드에 대한 SSH 구성 : 원격 접속을 원하는 Key를 등록하고 엑세스 권한 허용 대상은 편한 실습을 위해 '모두'로 설정

단 여기서 주의해야 할 점은 노드 그룹 네트워크의 subnet에는 반드시 아래와 같이 '퍼블릭 IPv4 주소 자동 할당 활성화'가 체크되어있어야 합니다.
해당 설정이 되어있지 않으면 노드 그룹은 생성되지 않습니다.

만약, 문제 없이 여기까지 잘 따라오셨다면 조금 기다리시면 아래와 같이 Auto Scaling 그룹과 EC2 인스턴스가 생성되는 것을 확인하실 수 있습니다.

그 외에도 클러스터가 위치한 EC2 인스턴스에서 아래의 명령어를 입력해서 클러스터 내에 노드가 잘 생성되었는지 바로 확인하실 수도 있습니다.

watch kubectl get node -o wide
profile
Long🌈Now😁Happy💖

0개의 댓글