CloudNet@ 가시다님이 진행하는 쿠버네티스 네트워크 스터디 KANS 3기 내용을 정리한 글입니다.
EKS 란
Amazon EKS(Amazon Elastic Kubernetes Service)는 AWS에서 제공하는 완전 관리형 Kubernetes 서비스입니다. Control Plane(Kubernetes API 서버, etcd 등)은 AWS에서 관리하므로, 사용자가 직접 설정하거나 유지보수할 필요가 없습니다. 따라서 사용자는 Control Plane을 직접 볼 수 없습니다. EKS는 IAM, VPC 등의 AWS 리소스와 통합하여 사용할 수 있으며, AWS Fargate를 통해 서버리스 방식으로 파드를 실행할 수 있는 기능도 제공합니다.
EKS 생성하기
다음과 같은 구조로 EKS를 생성해보도록 하겠습니다.
VPC 생성하기
vpc는 192.168.0.0/16으로 생성합니다.
InternetGateway 생성하기
Internet Gateway(IGW)는 AWS에서 제공하는 VPC(Virtual Private Cloud)와 인터넷 간의 통신을 가능하게 하는 리소스입니다. 다음의 서브넷 생성단계에서 퍼블릭 서브넷 대역을 생성하기 위해 internet gateway를 생성합니다.
Private/ Public Subnet 생성하기
프라이빗/ 퍼블릭 서브넷도 3개씩 생성합니다. CIDR를 보면 같은 대역 처럼 보이지만 라우팅 테이블을 보면 어디로 연결되어있는지 확인해볼 수 있습니다.
라우팅 테이블에는 다음과 같이 2개의 라우팅 테이블이 존재합니다.
퍼블릭 서브넷 라우팅 테이블에는 인터넷 게이트웨이와 연결이 되어있어 192.168.0.0/16 대역이 아닌 경우 외부로 통신하게 됩니다.
EKS 생성하기
eks 생성에는 클러스터에서 사용하게 될 IAM을 설정하면 바로 생성이 됩니다. 생성이 완료된 이후에는 워커 노드들이 없기 때문에 추가로 워커 노드를 생성해줘야합니다.
노드 그룹 생성하기
시작 템플릿을 이용하여 노드그룹을 생성해서 추가합니다.
접속 설정하기
aws 명령어나 eksctl명령어를 사용해서 kubeconfig를 설정할 수 있습니다.
클러스터 리스트 확인하기
다음의 명령어로 생성되어있는 eks 클러스터 리스트를 확인해볼 수 있습니다.
aws eks list-clusters
결과를 확인해보면 다음과 같이 출력됩니다.
{
"clusters": [
"myeks"
]
}
kubeconfig 생성하기
위에서 확인한 클러스터 중 접속하고 싶은 클러스터의 이름을 사용하여 다음과 같이 명령어를 입력하면 자동으로 kubeconfig가 설정됩니다.
aws eks update-kubeconfig --name myeks
내 정보 확인하기
현재 연결되어있는 정보도 다음의 명령어를 통해 확인할 수 있습니다.
kubectl auth whoami
'K8S > 🔥 network study🔥' 카테고리의 다른 글
[네떡스터디🔥kans] AWS - EKS와 AWS LoadBalancer Controller (1) | 2024.11.02 |
---|---|
[네떡스터디🔥kans] AWS - EKS와 Amazon VPC CNI (0) | 2024.11.02 |
[네떡스터디🔥kans] Cilium CNI 알아보기 - Netkit (0) | 2024.10.27 |
[네떡스터디🔥kans] Cilium CNI 알아보기 - TCX (Next-Gen TC) (0) | 2024.10.27 |
[네떡스터디🔥kans] Service Mesh: Istio - ambient (0) | 2024.10.19 |