본문 바로가기
Amazon Web Serivce 자격증 쉽게 공부하기/[C03]AWS Solutions Architect Asso 기본

SAA-C03 기본 #14, ECS & EKS

by 네트워크 엔지니어 환영 2023. 12. 16.
반응형

Docker

  • 응용프로그램 등을 프로세스 격리 기술을 활용해 컨테이너로 실행하고 관리하는 플랫폼
  • 응용프로그램(앱 등)이 컨테이너에 패키징되면 어느 운영체제든지 같은 방식으로 실행됨
    • 사용사례 : 마이크로 서비스 아키텍처, 온프레미스에서 클라우드로 앱 리프트 앤 시프트 등
  • Docker Repository : Docker Hub (퍼블릭 리포지토리), Amazon ECR (프라이빗 리포지토리), Amazo ECR Public Gallery (퍼블릭 리포지토리)
  • Docker 시작 : 베이스 도커 이미치에 파일 추가 (Dockerfile 등)하여 구축하면 도커이미지가 생성되고, Push하여 Docker Repository (dockerhub, Amazon ECR)에 저장, Pull 하여 도커이미지 실행하면 컨테이너에서 코드 실행됨
  • 도커 컨테이너 관리 : Amazon ECS(도커 관리를 위한 컨테이너 플랫폼), EKS(kubernetes의 관리형버전), Fargate (서버리스 컨테이너 플랫폼), ECR(컨테이너 이미지 저장)
  • 오토스케일링의 지표: CPU 사용률, 메모리 사용률(RAM), ALB 타겟당 요청수 확장

 

ECS

  • Elastic Container Service
  • 컨테이너를 쉽게 배포, 관리, 스케일링하는 완전 관리형 컨테이너 오케스트레이션 서비스
  • ECS 서비스 오토 스케일링 (태스크 레벨) ≠ EC2 오토스케일링 (EC2 인스턴스 클러스터)
    • Task ⊂ AWS Fargate ⊂ Amazon ECS Cluster
    • ECS 서비스 오토 스케일링 : ECS 클러스터 용량 공급, EC2 오토스케일링 : 오토 스케일링그룹(CPU에
      따라 ASG 확장 등)
  • EC2 인스턴스가 없다면(Serverless) Fargate를 이용한 서비스 오토 스케일링 효과적
  • 솔루션 아키텍트 (서버리스 아키텍처)
    • Eventbridge로 작동되는 ECS 태스크: Event Bridged ECS 태스크 생성 / 역할을 부여하여
      S3 버킷으로부터 이미지나 객체를 처리하는 서버리스 아키텍처
    • EventBridge Schedule(일정) : 한시간마다 트리거리는 규칙을 만들면 Fargate에서 ECS태스
      크 실행한 후 S3에 접근 가능한 ECS 데스크 역할을 생성하여 S3 파일에 대하여 배치 처리
    • SQS 대기열: ECS 서비스 오토 스케일링 활성화하여 SQS 대기열에 메시지가 많아질수록 ECS
      서비스에 태스크 생성
  • 도커 컨테이너 실행 = ECS 클러스터에 ECS 태스크 실행
  • EC2 시작 유형으로 EC2 클러스터를 사용 시 인프라를 직접 프로비저닝하고 유지(EC2 인스턴
    스가 도커에 ECS 에이전트 실행)
  • Fargate 시작 유형으로 인프라를 프로비저닝하지 않아 관리할 EC2 인스턴스 없으며, ECS 클
    러스터가 있을때 ECS 태스크 정의만 생성하면 ECS태스크를 AWS가 대신 실행함
  • ECS의 IAM 역할: EC2 인스턴스 프로파일 역할, ECS 태스크 역할
  • 데이터 볼륨(EFS): EC2 태스크에 파일 시스템 마운트하여 데이터 공유

 

 

EKS

  • Elastic Kubernetes Service
  • AWS 관리형 Kubernetes 클러스터(컨테이너) 서비스
  • Kubernetes : Docker로 컨테이너화한 어플리케이션의 자동 배포, 확장, 관리 지원
  • 실행 모드
    • EC2 시작 모드: EC2 인스턴스에서처럼 작업자, 모드를 배포할 때 사용
    • Fargate 모드: EKS 클러스터에 서버리스 컨테이너 배포할 때 사용
  • 노드 유형
    • 관리형 노드 그룹: EC2 인스턴스 생성/관리
    • 자체 관리형 노드: 사용자 지정 사항이 많고 제어 대상이 많을 경우 노드를 생성하여 EKS 클러스터에 등록한 후, ASG로 관리
    • Fargate 모드: 노드 관리X, 유지 관리X, EKS에서 컨테이너만 실행하면 됨
  • EKS 클러스터에 데이터 볼륨 연결을 위해 스토리지 클래스 매니페스트 지정 필요, 컨테이너 스토리지 인터페이스 (CSI) 규격 드라이버 활용
  • 지원: EBS, Fargate 모드가 작동하는 스토리지 클래스 유형인 EFS, FSx for Lustre, FSx for NetApp ONTAP
반응형

댓글