프로그래밍/쿠버네티스

[쿠버네티스] 8. EKS 무작정 사용하기 (1)

riroan 2023. 7. 9. 12:58

EKS는 AWS에서 제공하는 쿠버네티스 서비스이다. 쿠버네티스 특성상 마스터노드가 터지면 안되는데 AWS에서 이를 최대한 안 터지도록 고가용성을 보장한다. 또한 관리해야할 여러 요소들을 AWS에서 관리해준다.
EKS를 사용하면 클러스터를 구축해서 아래 요소들을 사용할 수 있다.

이용 요금

클러스터를 하나 생성하면 시간당 0.1달러를 지불한다. 프리티어는 따로 없고 쿠버네티스에서 생성한 워커노드에 따라 가격이 달라진다. EC2를 생성한다면 그 스펙에 맞는 EC2비용이 추가로 지불되고 Fargate를 사용한다면 사용한 만큼의 Fargate요금이 지불될 것이다.
 

권한 설정

ECR에서 한 것처럼 EKS도 액세스키를 위해 권한이 있는 사용자가 필요하다. EKS의 모든 기능을 사용할 수 있도록 권한을 부여하자.

그리고 액세스키를 발급 받은 후 aws configure명령으로 설정한다.
 

클러스터 생성

EKS에 들어가서 클러스터 생성으로 들어간 후 이름만 잘 짓고 나머지는 기본 설정으로 생성한다.

클러스터가 생성되는데 시간이 좀 걸린다. 한 10분정도 걸린 것 같다. 클러스터가 만들어지면 노드 그룹을 추가해야한다.

다음은 쿠버네티스에서 사용할 노드를 EC2로 쓸지 Fargate로 쓸지 선택하는 단계이다. 여기서는 EC2를 사용할 것이다. 스펙이랑 이름만 잘 정하고 나머지는 기본설정으로 남긴다.

이제 나만의 클러스터가 완성됐다. 노드그룹으로 만든 EC2도 생성된 것을 확인할 수 있다. 그럼 이제 접속을 한번 해보자.
 

EKS 클러스터 접속하기

다음 명령을 사용하면 쿠버네티스에 접속할 수 있다.

aws eks --region {{REGION}} update-kubeconfig --name {{CLUSTER_NAME}}

그 후 kubectl을 입력하면 자동으로 연결된 클러스터가 설정한 이름으로 변경된 것을 확인할 수 있다. get명령을 사용했을 때 아직 아무것도 없으므로 나오지 않을 것이다. 다만 기본적으로 제공되는 pod는 확인할 수 있다. 이 기본 pod는 minikube를 사용할 때도 있었다!
 
다음 시간에 직접 pod를 띄워볼 것이다.


kubectl오류로 다음 화는 나중에 올라갑니다..