AWS EKS 클러스터 구축하기
AWS EKS를 이용해서 Kubernetes cluster를 구축해보자.
AWS EKS란?
EKS는 Elastic kubernetes service의 약자로 쿠버네티스 클러스터를 손쉽게 구축 및 관리할 수 있게 해주는 AWS 서비스 중의 하나이다.
EKS를 사용하면 명령어기반의 마스터 노드, 워커 노드 연결 구성을 직접 하지 않아도 되기 때문에 클러스터 구성 난이도가 낮으며, 마스터 노드를 AWS에서 자체 관리해주므로 운영 난이도가 낮아진다.
또한, 워커 노드도 클릭 몇번만으로 손쉽게 증축할 수 있으며, 장애 발생시 기본적인 대응도 되어있기 때문에 쿠버네티스 클러스터를 구축할 계획이라면 직접 구축하는 방법 대신 EKS를 사용하는 것을 매우 추천한다.
선행 작업
이 글은 VPC가 있어야 진행 가능하므로 아직 VPC를 생성하지 않았다면 아래 링크에서 먼저 작업을 완료해야한다.
작업 순서
1. 클러스터 구성
2. 네트워킹 지정
3. 로깅 구성
4. 추가 기능 선택
5. 선택한 추가 기능 설정 구성
6. 검토 및 생성
사전 지식
쿠버네티스
AWS VPC
1. 클러스터 구성
AWS EKS 메인페이지로 접속하여 클러스터 추가 UI를 클릭한다.
생성을 선택한다.
클러스터의 이름과 Kubernetes 버전, 서비스 역할을 지정한다.
미리 만들어둔 서비스 역할(IAM)이 없다면 아래 링크를 보고 따라하면 된다.
2. 네트워킹 지정
클러스터의 네트워크망이 될 VPC와 서브넷을 선택한다.
선택된 서브넷은 IP 자동 할당 기능이 활성화 되어있어야 한다.
클러스터 내부의 Kubernetes API 엔드포인트에 대한 네트워크 접근 권한을 구성한다.
Kubernetes API를 VPC 내부에서만 접근 가능하도록 안전하게 구성하려면 프라이빗을 선택한다.
3. 로깅 구성
로깅 서비스를 선택할 수 있다.
필수 항목은 아니며 클러스터 생성 이후에 on/off를 변경할 수 있다.
4. 추가 기능 선택
EKS에서 기본으로 제공하는 추가 기능을 선택할 수 있다. 3개 모두 선택하고 다음 버튼을 클릭한다.
(메뉴 이름은 선택인데 사실 전부 필수 옵션이라서 해제가 불가능함)
5. 선택한 추가 기능 설정 구성
4번 항목에서 선택했던 추가 기능들의 설정을 할 수 있다.
각 기능들의 버전을 선택하고 다음 버튼을 클릭한다.
6. 검토 및 생성
여태까지 설정한 내용을 최종 확인 후 생성 버튼을 클릭한다.
EKS 콘솔로 돌아오면 생성한 클러스터의 요약 정보를 표시하는 대시보드가 생겨났을 것이다.
위 사진을 보면 클러스터의 상태가 "생성 중"으로 표시되는데 EKS 클러스터는 생성되기까지 시간이 소요되므로 약 20분 기다려야한다.
클러스터의 상태가 "활성"으로 표시되면 클러스터를 사용할 수 있다. 이때부터 클러스터에 워커 노드를 연결할 수 있다.
여기까지의 진행 상황을 그림으로 표현하자면 위 이미지처럼 된다.
지정한 VPC망 내부에 EKS 클러스터가 생성되며 클러스터의 내부에는 마스터 노드가 생기고 워커 노드를 연결할 수 있는 환경까지만 구성된다.
(EKS는 마스터 노드를 직접 관리해주므로 개발자가 직접 제어할 일이 없어 EKS 대시보드에서 표시되지 않음)
다음 글에서는 클러스터에 워커 노드를 연결하는 작업을 살펴볼 것이다.
댓글