Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
이일구
솔루션즈 아키텍트
AWS
Amazon EKS를 통한 빠르고 편리한 컨테이너
플랫폼 활용
목차
컨테이너
컨테이너란?
컨테이너 규모
컨테이너 오케스트레이션
Amazon EKS
Amazon EKS 특징 및 구성요소
Amazon EKS 아키텍처
Amazon EKS 장점
Amazon EKS를 사용해야 하는 이유 (1 ~ 7)
비용 효율적 클러스터 만들기
데모
컨테이너란?
런타임
코드
의존성
단일, 불변 오브젝트
컨테이너 규모
단일 컨테이너
컨테이너 그룹
대규모 컨테이너 관리를 위해 필요한 것
• 여러 호스트에서 많은 컨테이너를 시작/정지/모니터링함
• 언제, 어디에서 컨테이너를 시작하고 정지함
• 호스트 상태를 모니터링하고 제어함
• 새로운 버전의 컨테이너를 배포하고 관리함
• 컨테이너로 유입되는 네트워크 흐름과 경로를 관리함
컨테이너 오케스트레이션
인스턴스 인스턴스 인스턴스
OS OS OS
컨테이너 런타임 컨테이너 런타임 컨테이너 런타임
App Service App App Service Service
컨테이너 오케스트레이션
컨테이너 오케스트레이션
인스턴스/OS 인스턴스/OS 인스턴스/OS
App Service App App Service Service
스케쥴링
서비스 관리
리소스관리
Orchestration
스케쥴링
▪ 배치
▪ 스케일링
▪ 업그레이드
▪ 롤백
컨테이너 오케스트레이션
인스턴스/OS 인스턴스/OS 인스턴스/OS
App Service App App Service Service
스케쥴링
서비스 관리
리소스관리
서비스 관리
▪ 가용성 보장
▪ 라이프사이클
▪ 서비스 디스커버리
컨테이너 오케스트레이션
인스턴스/OS 인스턴스/OS 인스턴스/OS
App Service App App Service Service
스케쥴링
서비스 관리
리소스관리
리소스 관리
▪ Memory
▪ CPU
▪ Ports
호환성
완전관리형
Kubernetes control
plane 서비스
커뮤니티와 함께
구축
AWS 서비스들과
밀접하게 통합
Amazon EKS 특징
Amazon EKS 구성 요소
컨트롤 플레인
kube
apiserver
워커노드 1
워커노드 2
워커노드 3
etcd
controller
manager
scheduler
kubelet
kube-proxy
컨테이너 런타임
kubectl
kubelet
kube-proxy
컨테이너 런타임
kubelet
kube-proxy
컨테이너 런타임
Amazon EKS 아키텍처
고객 VPC Amazon VPC
오토스케일링 그룹
EKS 컨트롤 플레인
ENI
EC2 워커노드
TLS
API Access
Network Load Balancer
Kubectl Exec/Logs
Amazon EKS 장점
• 빠르고 쉬운 플랫폼 설치
• 멀티AZ 기반의 가용성
• 용량 관리 및 운영 탄력성
• 인그레스 컨트롤러
• Egress 트래픽 데이터 접근제어
• 간편한 스토리지 연동
• 모니터링 및 로깅
• 인증 및 권한 관리
• 플랫폼 업그레이드
• 호스트 노드 전용 이미지
• 컨테이너 이미지 저장소
• …
Amazon EKS 장점
• 빠르고 쉬운 플랫폼 설치
• 멀티AZ 기반의 가용성
• 용량 관리 및 운영 탄력성
• 인그레스 컨트롤러
• Egress 트래픽 데이터 접근제어
• 간편한 스토리지 연동
• 모니터링 및 로깅
• 인증 및 권한 관리
• 플랫폼 업그레이드
• 호스트 노드 전용 이미지
• 컨테이너 이미지 저장소
• …
Amazon EKS를 사용해야 하는 이유 (1)
빠르고 쉬운 플랫폼 설치
AWS 클라우드포메이션
& AWS CDK
eksctl
Terraform, Pulumi,
Rancher
… more
Amazon EKS를 사용해야 하는 이유 (2)
멀티AZ 기반의 가용성
리전
1
N
2 1
N
2
1
N
2
실시간 데이터
복제 가능한
지연시간
가용성 보장되는
거리
가용영역1
Etcd
Master
Etcd
Master
가용영역2 가용영역3
Etcd
Master
Amazon EKS를 사용해야 하는 이유 (3)
용량 관리 및 탄력성 (Master)
가용영역 1 가용영역 2
EtcdAuto
Scaling
group
가용영역 3
APIserver
Auto
Scaling
group
EKS Managed VPC
Network Load Balancer
Amazon EKS를 사용해야 하는 이유 (3)
용량 관리 및 탄력성 (Worker)
서버리스 컨테이너
데이터 플레인
AWS
Fargate
Amazon EKS
가용영역 1
오토스케일링 그룹
가용영역 2
오토스케일링 그룹
워커노드 워커노드
워커노드 워커노드
Amazon EC2
Auto Scaling
오토스케일링 그룹 기반
데이터 플레인
PodsPods
Amazon EKS를 사용해야 하는 이유 (4)
인그레스 컨트롤러
AWS resources
Kubernetes 클러스터
노드 노드
K8S
API
server ALB Ingress
controller
노드
HTTP 리스너HTTPS 리스너
Rule: /cheesesRule: /charcuterie
타겟그룹: Green
(IP Mode)
타켓그룹: Blue
(Instance Mode)
노드포트 노드포트
Ingress resource
creation via Kubectl
or API
Amazon EKS를 사용해야 하는 이유 (5)
Egress 트래픽 데이터 접근제어
ENI
Secondary IPs:
10.0.0.1
10.0.0.2
10.0.0.1
10.0.0.2
ENI
10.0.0.20
10.0.0.22
Secondary IPs:
10.0.0.20
10.0.0.22
ec2.associateaddress()
VPC Subnet –
10.0.0.0/24
Instance 1 Instance 2
VPC
Amazon EKS를 사용해야 하는 이유 (5)
Egress 트래픽 데이터 접근제어
ENI
Secondary IPs:
10.0.0.1
10.0.0.2
10.0.0.1
(A)
10.0.0.2
(B)
ENI
10.0.0.20
(C)
10.0.0.22
(D)
Secondary IPs:
10.0.0.20
10.0.0.22
ec2.associateaddress()
VPC Subnet –
10.0.0.0/24
Instance 1 Instance 2
VPC
RDS
Amazon EKS를 사용해야 하는 이유 (6)
간편한 스토리지 연동
Container Storage Interface
Amazon EBS
CSI driver
Amazon EFS
CSI driver
Amazon FSx for Lustre
CSI driver
Amazon EKS를 사용해야 하는 이유 (7)
모니터링 및 로깅
ApplicationContainerNodeCluster
Amazon EKS를 사용해야 하는 이유 (7)
모니터링 및 로깅
CloudWatch Container Insights를 이용하면
보다 편리하게 AWS내의 다른 리소스와 함께
일관된 환경에서 메트릭 통합 및 통보, 시각화
가능 합니다.
Amazon CloudWatch
CloudWatch Logs를 이용하여 로그를
저장하는 것도 가능합니다. 단기적으로 다양한
목적에 맞게 활용할 수 있습니다.
비용 효율적 클러스터 만들기
• Spot 인스턴스는 미사용 자원을 On
Demand 대비 최대 90%까지 낮은
가격으로 제공
• 해당 인스턴스는 2분 전 경고 후
다른 자원으로 대체될 수 있음
• EKS클러스터의 Worker 노드를
모두 Spot 인스턴스로 구성하거나
On Demand와 혼용해서 구성하는
것도 가능
비용 효율적 클러스터 만들기
[mycluster].eks.amazonaws.com
Availability
Zone 1
Availability
Zone 2
Availability
Zone 3
Kubectl
VPC
Instance
Auto Scaling group for m4.large Spot Instances
Auto Scaling group for t2.medium Spot Instances
Auto Scaling group for On-Demand Instances
Cluster Autoscaler Daemonset
Spot Interruption Handler
Daemonset
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
EKS 생성
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
인그레스 컨트롤러
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
감사합니다
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

More Related Content

Amazon EKS를 통한 빠르고 편리한 컨테이너 플랫폼 활용 – 이일구 AWS 솔루션즈 아키텍트:: AWS Cloud Week - Industry Edition

  • 1. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 이일구 솔루션즈 아키텍트 AWS Amazon EKS를 통한 빠르고 편리한 컨테이너 플랫폼 활용
  • 2. 목차 컨테이너 컨테이너란? 컨테이너 규모 컨테이너 오케스트레이션 Amazon EKS Amazon EKS 특징 및 구성요소 Amazon EKS 아키텍처 Amazon EKS 장점 Amazon EKS를 사용해야 하는 이유 (1 ~ 7) 비용 효율적 클러스터 만들기 데모
  • 5. 대규모 컨테이너 관리를 위해 필요한 것 • 여러 호스트에서 많은 컨테이너를 시작/정지/모니터링함 • 언제, 어디에서 컨테이너를 시작하고 정지함 • 호스트 상태를 모니터링하고 제어함 • 새로운 버전의 컨테이너를 배포하고 관리함 • 컨테이너로 유입되는 네트워크 흐름과 경로를 관리함
  • 6. 컨테이너 오케스트레이션 인스턴스 인스턴스 인스턴스 OS OS OS 컨테이너 런타임 컨테이너 런타임 컨테이너 런타임 App Service App App Service Service 컨테이너 오케스트레이션
  • 7. 컨테이너 오케스트레이션 인스턴스/OS 인스턴스/OS 인스턴스/OS App Service App App Service Service 스케쥴링 서비스 관리 리소스관리 Orchestration 스케쥴링 ▪ 배치 ▪ 스케일링 ▪ 업그레이드 ▪ 롤백
  • 8. 컨테이너 오케스트레이션 인스턴스/OS 인스턴스/OS 인스턴스/OS App Service App App Service Service 스케쥴링 서비스 관리 리소스관리 서비스 관리 ▪ 가용성 보장 ▪ 라이프사이클 ▪ 서비스 디스커버리
  • 9. 컨테이너 오케스트레이션 인스턴스/OS 인스턴스/OS 인스턴스/OS App Service App App Service Service 스케쥴링 서비스 관리 리소스관리 리소스 관리 ▪ Memory ▪ CPU ▪ Ports
  • 10. 호환성 완전관리형 Kubernetes control plane 서비스 커뮤니티와 함께 구축 AWS 서비스들과 밀접하게 통합 Amazon EKS 특징
  • 11. Amazon EKS 구성 요소 컨트롤 플레인 kube apiserver 워커노드 1 워커노드 2 워커노드 3 etcd controller manager scheduler kubelet kube-proxy 컨테이너 런타임 kubectl kubelet kube-proxy 컨테이너 런타임 kubelet kube-proxy 컨테이너 런타임
  • 12. Amazon EKS 아키텍처 고객 VPC Amazon VPC 오토스케일링 그룹 EKS 컨트롤 플레인 ENI EC2 워커노드 TLS API Access Network Load Balancer Kubectl Exec/Logs
  • 13. Amazon EKS 장점 • 빠르고 쉬운 플랫폼 설치 • 멀티AZ 기반의 가용성 • 용량 관리 및 운영 탄력성 • 인그레스 컨트롤러 • Egress 트래픽 데이터 접근제어 • 간편한 스토리지 연동 • 모니터링 및 로깅 • 인증 및 권한 관리 • 플랫폼 업그레이드 • 호스트 노드 전용 이미지 • 컨테이너 이미지 저장소 • …
  • 14. Amazon EKS 장점 • 빠르고 쉬운 플랫폼 설치 • 멀티AZ 기반의 가용성 • 용량 관리 및 운영 탄력성 • 인그레스 컨트롤러 • Egress 트래픽 데이터 접근제어 • 간편한 스토리지 연동 • 모니터링 및 로깅 • 인증 및 권한 관리 • 플랫폼 업그레이드 • 호스트 노드 전용 이미지 • 컨테이너 이미지 저장소 • …
  • 15. Amazon EKS를 사용해야 하는 이유 (1) 빠르고 쉬운 플랫폼 설치 AWS 클라우드포메이션 & AWS CDK eksctl Terraform, Pulumi, Rancher … more
  • 16. Amazon EKS를 사용해야 하는 이유 (2) 멀티AZ 기반의 가용성 리전 1 N 2 1 N 2 1 N 2 실시간 데이터 복제 가능한 지연시간 가용성 보장되는 거리 가용영역1 Etcd Master Etcd Master 가용영역2 가용영역3 Etcd Master
  • 17. Amazon EKS를 사용해야 하는 이유 (3) 용량 관리 및 탄력성 (Master) 가용영역 1 가용영역 2 EtcdAuto Scaling group 가용영역 3 APIserver Auto Scaling group EKS Managed VPC Network Load Balancer
  • 18. Amazon EKS를 사용해야 하는 이유 (3) 용량 관리 및 탄력성 (Worker) 서버리스 컨테이너 데이터 플레인 AWS Fargate Amazon EKS 가용영역 1 오토스케일링 그룹 가용영역 2 오토스케일링 그룹 워커노드 워커노드 워커노드 워커노드 Amazon EC2 Auto Scaling 오토스케일링 그룹 기반 데이터 플레인 PodsPods
  • 19. Amazon EKS를 사용해야 하는 이유 (4) 인그레스 컨트롤러 AWS resources Kubernetes 클러스터 노드 노드 K8S API server ALB Ingress controller 노드 HTTP 리스너HTTPS 리스너 Rule: /cheesesRule: /charcuterie 타겟그룹: Green (IP Mode) 타켓그룹: Blue (Instance Mode) 노드포트 노드포트 Ingress resource creation via Kubectl or API
  • 20. Amazon EKS를 사용해야 하는 이유 (5) Egress 트래픽 데이터 접근제어 ENI Secondary IPs: 10.0.0.1 10.0.0.2 10.0.0.1 10.0.0.2 ENI 10.0.0.20 10.0.0.22 Secondary IPs: 10.0.0.20 10.0.0.22 ec2.associateaddress() VPC Subnet – 10.0.0.0/24 Instance 1 Instance 2 VPC
  • 21. Amazon EKS를 사용해야 하는 이유 (5) Egress 트래픽 데이터 접근제어 ENI Secondary IPs: 10.0.0.1 10.0.0.2 10.0.0.1 (A) 10.0.0.2 (B) ENI 10.0.0.20 (C) 10.0.0.22 (D) Secondary IPs: 10.0.0.20 10.0.0.22 ec2.associateaddress() VPC Subnet – 10.0.0.0/24 Instance 1 Instance 2 VPC RDS
  • 22. Amazon EKS를 사용해야 하는 이유 (6) 간편한 스토리지 연동 Container Storage Interface Amazon EBS CSI driver Amazon EFS CSI driver Amazon FSx for Lustre CSI driver
  • 23. Amazon EKS를 사용해야 하는 이유 (7) 모니터링 및 로깅 ApplicationContainerNodeCluster
  • 24. Amazon EKS를 사용해야 하는 이유 (7) 모니터링 및 로깅 CloudWatch Container Insights를 이용하면 보다 편리하게 AWS내의 다른 리소스와 함께 일관된 환경에서 메트릭 통합 및 통보, 시각화 가능 합니다. Amazon CloudWatch CloudWatch Logs를 이용하여 로그를 저장하는 것도 가능합니다. 단기적으로 다양한 목적에 맞게 활용할 수 있습니다.
  • 25. 비용 효율적 클러스터 만들기 • Spot 인스턴스는 미사용 자원을 On Demand 대비 최대 90%까지 낮은 가격으로 제공 • 해당 인스턴스는 2분 전 경고 후 다른 자원으로 대체될 수 있음 • EKS클러스터의 Worker 노드를 모두 Spot 인스턴스로 구성하거나 On Demand와 혼용해서 구성하는 것도 가능
  • 26. 비용 효율적 클러스터 만들기 [mycluster].eks.amazonaws.com Availability Zone 1 Availability Zone 2 Availability Zone 3 Kubectl VPC Instance Auto Scaling group for m4.large Spot Instances Auto Scaling group for t2.medium Spot Instances Auto Scaling group for On-Demand Instances Cluster Autoscaler Daemonset Spot Interruption Handler Daemonset
  • 27. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 29. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 31. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 32. 감사합니다 © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.