EKS는 관리형 쿠버네티스로 AWS에서 제공하는 K8S 서비스이다.
오픈소스 특성상 유지보수가 어렵고 특정 스트림에서 에러가 났을 때 유지보수가 굉장히 어렵기때문에 관리형 서비스를 사용한다고 한다.
기존 K8S에서는 Control Plane을 노드로 지정해주어서 우리가 관리해야 했다면, EKS에서는 이를 서비스로 제공하고, Worker Node에 대한 리소스 관리를 자동으로 해준다.
사용할 리전을 선택한다.
user-vpc-N
형식으로 이름을 지정해주고, IP 대역대를 설정해준다.
192.168.0.0/16
or 10.0.0.0/16
생성을 완료했으면 vpc 설정에 들어가서 DNS 설정을 체크해준다.
나중에 생성한 리소스를 한 번에 확인하기 위해 tag를 달아서 서비스들을 관리하자.
ex) creator : suite
user-public/private-subnet-N
형식으로 이름을 지정하고, 생성했던 VPC를 선택한다.
사용할 서브넷의 개수에 따라 CIDR 서브넷 마스크를 지정해준다.
퍼블릭 서브넷의 경우 서브넷 세팅에 들어가서 퍼블릭 IPv4 주소 자동 할당 활성화를 체크해준다.
퍼블릭 서브넷을 EKS에서 사용할 때 옵션을 자동으로 주기 위해서 새 태그를 추가해준다.
kubernetes.io/role/elb
: 1
alpha.eksctl.io/cluster-oidc-enabled
: true
만든 모든 퍼블릭 서브넷에 해당 태그를 추가해준다.
프라이빗 서브넷을 EKS에서 사용할 때 옵션을 자동으로 주기 위해서 새 태그를 추가해준다.
kubernetes.io/role/internal-elb
: 1
alpha.eksctl.io/cluster-oidc-enabled
: true
만든 모든 프라이빗 서브넷에 해당 태그를 추가해준다.
user-igw
형식으로 이름을 설정하고 생성해준다.
생성한 뒤에 생성한 인터넷 게이트웨이의 작업에서 vpc 연결을 통해 내가 만든 vpc와 인터넷 게이트웨이를 연결시켜준다.
user-public-rt
형식으로 라우팅 테이블을 생성하고 생성했던 VPC를 선택한다.
라우팅 편집을 통해 외부에서 들어오는 모든 트래픽 0.0.0.0/0
을 만들었던 인터넷 게이트웨이로 향하게 설정한다.
user-public-rt
에 퍼블릭 서브넷들을 모두 연결한다.
user-natgw
형식으로 이름을 설정한다.
서브넷
: 퍼블릭 서브넷 중 하나연결 유형
: 퍼블릭user-private-rt
형식으로 라우팅 테이블을 생성하고 생성했던 VPC를 선택한다.
라우팅 편집을 통해 모든 트래픽에 대해 0.0.0.0/0
NAT Gateway로 향하도록 설정한다.
user-private-rt
에 프라이빗 서브넷들을 모두 연결한다.
user-nacl
형식으로 이름을 설정하고 생성하고 생성했던 VPC를 선택한다.
작업을 통해 서브넷 연결 편집을 클릭하고 퍼블릭 서브넷들을 모두 선택하고 저장한다.
이렇게만 하면 EKS를 사용하기 위한 VPC 준비는 끝난다.
중요!!! EKS 는 최소 두 개 이상의 AZ의 서브넷들을 등록해야 사용이 가능하다.
개발자로서 성장하는 데 큰 도움이 된 글이었습니다. 감사합니다.