ECS, EKS 란

하예진·2022년 10월 23일
0

Cloud

목록 보기
4/7

컨테이너 관련 서비스
컨테이너, 도커에 관한 지식은 이미 알고있다는 가정으로 진행

ECS

  • Elastic Container Service
  • 컨테이너 오케스트레이션 서비스
  • 여러 애플리케이션 컨테이너를 관리
  • AWS에저 전반적으로 관리해주는 서비스

ECS 주요 개념

  • Cluster
    컨테이너를 실행할 수 있는 논리적 공간
    목적에 맞게 컨테이너, 인스턴스를 그룹화 하는 것
  • Task Definition
    Docker 컨테이너를 생성할 때, 어떤 설정으로 생성할 것인지에 대한 Set
    • Task
      • 설정대로 실재 배포된 컨테이너들을 묶어서 태스크라=거 부름
      • 컨테이너가 한개 이상 존재
  • Service
    Task를 관리하며, 배포된 Task가 정상상태로 유지하도록 하는 역할
    - Task definition의 상위 개념

EKS

  • Elastic Kubernetes Service
  • Kubernetes를 AWS에 설치, 관리해주는 서비스

쿠버네티스 주요 개념

  • Kubernetes : 오픈소스

  • Cluster
    master node와 work node 머신들의 set을 말한다.

  • Pod
    container를 배포할 오브젝트
    Kubernetes의 가장 작은 배포 단위 오브젝트

  • Deployment
    pod를 더 세밀히 관리해주는 컨트롤러
    장애가 생기면 새로 만들기, pod 업데이트, 롤백 등을 제공

  • Kubectl
    Kubernetes에 명령을 전달하는 CLI
    명령구조 : kubectl [COMMAND] [TYPE] [NAME] [FLAGS]
    kubernetes 리소스를 생성, 수정, 삭제, 조회하는 명령어

  • EKS, Kubernetes 차이점

    EKSKubernetes
    배포환경AWS온프레미스, 베어메탈, 클라우드
    마스터 노드AWS 에서 설치 및 관리직접 설치 및 관리
    HA 구성자동 구성직접 구성
    인증AWS IAM 기반직접 구성
    Pod 네트워크 통신 방식AWS VPC 기반다양한 Plug in 지원
    Pod 개수 제한워커 노드의 인스턴스 타입에 따라 제한워커 노드의 리소스에 따라 제한

EKS vs ECS

EKSECS
오픈소스O(kubernetes 사용해서)X(AWS 독점 관리)
컨테이너Pod(kubernetes 사용해서)Task(AWS 독점 관리)
배포 난이도중간(AWS와 kubernetes 지식 필요)EKS와 비교적 쉬움(AWS 대시보드 사용)
규모대규모, 하이브리드 배포/엔터프라이즈 급소규모
커뮤니티대규모 커뮤니티 보유(오픈 소스)AWS 독점 서비스라서 기업지원은 좋을 수 있으나 커뮤니티는 지원이 적음
관리범위전적으로 사용자가 해야 된다.(kubernetes의 전반적인 기능을 알아야 된다.)AWS에서 전반적인 관리를 해준다.(Task definition)


VM Container 개념 소개

  • Os 가상화
    물리적 서버(OS)에서 여러 OS를 구성하여 각각 다른 환경을 구성하는 것

  • 가상화를 사용하는 이유
    1. 서버 통합

    1. 비용 절감
    2. 신속한 서버 프로비저닝
    3. 쉬운 백업과 복원
  • 하이퍼바이저
    - 호스트 컴퓨터에서 다수의 운영체제를 동시에 실행하기 위한 소프트웨어

    • VMware - ESXi / MS - Hyper-V
  • VM 기능
    1. 마이그레이션

    1. 가져오기 & 내보내기
    2. 스냅샷
    3. 가상머신 복제
  • 컨테이너와 VM 비교

    VMContainer
    게스트 oswindows, Linux 등 다양하게 선택호스트 OS 와 같은 OS
    시작시간길다(몇 분)짧다(몇 초)
    이미지 사이즈크다(수 GB ~ 수백 GB)작다(~ 수백 MB)
    환경관리각 VM마다 패치가 필요호스트 OS만 패치

Container 엔진

컨테이너를 실행하고 관리해주는 도구

  • Docker, dockerHub

Container 만드는 과정

docker file -build-> Image -run-> Container 생성
도커 파일로 소스를 build해서 image를 생성한다.
도커를 실행시키면 생성된 image에 맞게 컨테이너가 생성된다.

0개의 댓글