강의: 인프런 > CloudNet@와 함께하는 Amazon EKS 기본 강의
Kubernetes 관리형 서비스 종류
Amazon AWS의 EKS
Microsoft Azure의 AKS
Google GCP의 GKE
Amazon EKS 특징
Elastic Kubernetes Service
여러 가용영역에서 쿠버네티스 컨트롤-플랜을 실행 & 워커노드 실행 => 고가용성 확보 & 안정적 환경 구성
AWS의 다른 서비스와 통합 가능 => 확장성 & 보안성
- ECR : 컨테이너 이미지 저장소
- ELB : 부하 분산
- IAM : 보안 주체 관리 & 액세스 관리
- VPC : 노드 격리
최신버전 Kubernetes 사용 => 코드수정 없이 마이그레이션 쉽게 가능
- 보통 4-5개 마이너버전 제공
AWS EKS Cluster 배포 방법 종류
1. 관리 콘솔 : 관리 콘솔 WEB UI에서 작업
2. eksctl : 명령어로 작업 => 강의에서 주로 사용
3. IaC : CDK, CloudFormation, Terraform. 코드 기반으로 인프라를 정의해서 생성
EKS Control Plane 아키텍처
'AWS 관리형'으로 동작한다
사용자 계정이 아닌, AWS 시스템 계정에서 VPC가 생성된다.
클러스터를 생성하면 -> N개 가용영역에 각각 Control-Plane이 생성된다.
(API서버, 컨트롤러, 스케쥴러, ETCD 가 생성됨)
N개 가용영역을 관통해서 Auto Scaling Group 으로 관리한다.
EKS Data Plane 아키텍처
노드를 만들기 위한 데이터 플레인 컴포넌트가 동작?
(컨테이너 런타임, kubelet, kube-proxy 가 생성됨)
사용자 계정 산하로 VPC 생성된다.
워커노드-컨트롤플레인 간 통신을 위해 ENI를 통하는데, 이 때 서로 다른 어카운트의 서비스 끼리 연결이다.
이 것을 Cross Account ENI 이라고 한다.
=> kublelet In 워커노드 -[연결]-> CrossAccount ENI -[연결]-> API 서버 In 컨트롤플레인
데이터 플레인 노드를 구성하는 3가지 방식
- 관리형 노드 그룹 : 최신 AMI 사용. AWS에서 지원하여 유지 & 버전 관리
- 자체 관리형 노드 : 사용자 정의 AMI 사용. 사용자가 직접 유지 & 버전 관리
- AWS Fargate : 사용자 직접 관리 X. 서버리스 환경에서 동작. 컨테이너 형태가 아닌, Micro VM 형태로 관리(GeustOS 사용). => so, 컨트롤플레인 뿐만 아니라, 데이터 플레인도 관리형으로 관리될 수 있다. <= ??? 이해 안 됨
EKS Cluster Endpoint Access (Endpoint 통신 흐름)
Amazon EKS Cluster Endpoint Access - Public : 3가지 트래픽 통신 흐름
- API 서버 -> kubelet : API 서버 =[EKS owned ENI]-> kubelet
- kubelet -> API 서버 : kubelet -[Private Hosted Zone = EKS owned ENI]-> API 서버
- 사용자 kubectl -> API 서버 : 사용자 kubectl -[인터넷-NLB public IP]-> API 서버
통신이 외부 노출되어 보안에 취약
내부 -> 외부 -> 내부로 절달 = 비효율적
Amazon EKS Cluster Endpoint Access - Public + Private : 3가지 트래픽 통신 흐름
- API 서버 -> kubelet : API 서버 =[EKS owned ENI]-> kubelet
- kubelet -> API 서버 : kubelet -[Private Hosted Zone]-> API 서버
- 사용자 kubectl -> API 서버 : 사용자 kubectl -[인터넷-NLB public IP]-> API 서버
Amazon EKS Cluster Endpoint Access - Private : 3가지 트래픽 통신 흐름
- API 서버 -> kubelet : API 서버 =[EKS owned ENI]-> kubelet
- kubelet -> API 서버 : kubelet -[Private Hosted Zone]-> API 서버
- 사용자 kubectl -> API 서버 : 사용자 kubectl -[Private Hosted Zone = EKS owned ENI]-> API 서버
모든 트래픽이 private 네트워크 내에서 호출 됨.
보안적 & 효율적
EKS 권장사항
'강의와 책과 스터디' 카테고리의 다른 글
| 알고리즘 하기 싫어) day4 GPT랑 알고리즘 문제 풀기 (4) | 2025.07.26 |
|---|---|
| 책) 개발자 오늘도 마음 튼튼하게 성장하기(ing) (4) | 2025.07.12 |
| 강의) CloudNet@와 함께하는 Amazon EKS 기본 강의. 사전지식 (0) | 2024.06.24 |
| 강의) CloudNet@와 함께하는 Amazon EKS 기본 강의. Intro. 강의소개 (3) | 2024.06.23 |
| 📚 4번째 스터디 개설&완료. 쿠버네티스 교과서 (0) | 2024.06.20 |