AWS EKS – 노드그룹 생성, 구축 방법

안녕하세요~ 오늘은 베스핀글로벌 서비스실 우태호님이 작성해 주신 AWS EKS에 대해 알아보겠습니다 🙂

1. 준비 단계

1-1. API 서버 엔드포인트, 인증기관 복사하여 메모장에 옮겨두기

1-2. AWS CLI 2Version 이상 설치 후 Access KEY, Security KEY, Region 입력

▼ 설치 명령어

▼ aws configure

1-3. kubectl amd64 설치(생성한 EKS Cluster Version에 맞춰서 설치

kubectl 설치 또는 업데이트
Kubectl는 Kubernetes API 서버와 통신하기 위해 사용하는 명령줄 도구입니다. 이 kubectl 바이너리는
많은 운영 체제 패키지 관리자에서 사용할 수 있습니다. 설치에 패키지 관리자를 사용하는 것이 수동 다운
로드 및 설치 프로세스보다 쉬운 경우가 많습니다. 이 주제는 장치에 kubectl 바이너리를 다운로드하고…
https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/install-kubectl.html

1-4. 바이너리 설치 선택사항 포함 c~f 설치

Kubectl 설치 또는 업데이트
Kubectl는 Kubernetes API 서버와 통신하기 위해 사용하는 명령줄 도구입니다. 이 kubectl 바이너리는
많은 운영 체제 패키지 관리자에서 사용할 수 있습니다. 설치에 패키지 관리자를 사용하는 것이 수동 다운
로드 및 설치 프로세스보다 쉬운 경우가 많습니다. 이 주제는 장치에 kubectl 바이너리를 다운로드하고 …
https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/install-kubectl.html

1-5. home 디렉토리에 “.kube” 디렉토리 생성

1-6. config 파일 생성 및 내용 추가

1-7. config 파일 내용

config 파일 예시

▼ aws access key정보가 default 1개일 경우

1-8. export 설정(6번 7번)

Amazon EKS 클러스터용 kubeconfig 파일 생성 또는 업데이트
이 주제에서는 클러스터에 대한 kubeconfig 파일을 생성하거나 기존 파일을 업데이트합니다. kubectl 명
령줄 도구는 kubeconfig 파일의 구성 정보를 사용하여 클러스터의 API 서버와 통신합니다. 자세한 내용을
알아보려면 Kubernetes 문서의 kubeconfig 파일을 사용하여 클러스터 접근 구성하기를 참조하세요.
https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/create-kubeconfig.html

1-9. aws-iam-authenticator 설치(2번은 선택 사항으로 해도 되고 안해도 무방합니다.)

aws-iam-authenticator 설치
Amazon EKS는 IAM을 사용하여 Kubernetes용 AWS IAM 인증자를 통해 Kubernetes 클러스터에 인
증을 제공합니다. kubectl용 AWS IAM 인증자를 설치하고 이를 인증에 사용하도록 Kubernetes 구성 파
일을 수정하여 스톡 kubectl 클라이언트가 Amazon EKS와 함께 작동하도록 구성할 수 있습니다…
https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/install-aws-iam-authenticator.html

aws-iam-authenticator 혹은 aws-iam-authenticator help 명령어로 설치 확인

1-10. kubectl get svc 명령어로 AWS EKS Clustrer Join 정상 유무 확인 안된다면 config file 확인

2. Node Group 생성

2-1. IAM Role 생성

2-2. IAM 정책 적용

2-3. Node Group 추가

2-4. Node Group구성

이름 : 원하는 이름 작성
노드 IAM 역할 : 생성한 IAM Role 선택
시작 템플릿 : 기존 시작 템플릿이 있다면 사용, 없다면 비활성화해서 넘기면 다음화면에서 구성 가능

▼ 시작 템플릿 적용한 경우의 화면

▼ 시작 템플릿 미적용한 경우의 화면

2-5. 유지/최소/최대 Node(EC2) 설정 및 노드그룹 업데이트시 적용할 방법 선택

2-6. Node가 생성 될 subenet 선택

▼ ※※※※EKS Cluster 정보에 네트워킹 탭에 “API 서버 엔드포인트 액세스” 퍼블릭인지 프라이빗 인지 확인 후 노드그룹 네트워크 구성에서 서브넷 선택 해야함

이때 중요한 점은 생성한 EKS Cluster가 Public인지, Private인지 확인해야 한다.
Public – 서브넷 설정이 “Public IP 할당” 체크 되어 있어야 한다.
Private – 서브넷 설정이 “Public IP 할당” 체크 없어야 한다.
Public & Private – 서브넷 설정 무관

▼ 검토 화면

2-7. Node Group 생성 진행

2-8. Node Group 생성 완료

2-9. kubectl get node 명령어와 kubectl get pods로 생성 된 Node 및 pod 조회 되는지 TEST

3. 명령어 history

감사합니다 🙂

댓글은 사랑입니다 ♥

문의: info@bespinglobal.com | 대표번호: 02-1688-1280

Leave a Comment