본문 바로가기
빅데이터,클라우드

AWS EC2 인스턴스 개념 및 유형, 어떤 EC2가 유리한가?

by 데이널 2024. 6. 3.

'데이널' 컨텐츠에 포함된 정보는?

     

    AWS의 EC2는 Elastic Compute Cloud의 약자입니다. 그냥 클라우드에서 사용하는 가상머신(VM) 서버라고 생각하면 됩니다. EC2 1대를 사용한다면 서버 1대 임대했다는 이야기입니다.

    기업들이 평소 때 보다 세일 시즌인 연말에 서버 리소스를 많이 사용하는 경향이 있었죠. 아마존은 이 포인트를 놓치지 않았는데요. 서버를 보유하고 있다가 연말에 리소스 빌려주는 사업을 시작했습니다.
     
    바로 EC2를 빌려주는 걔념인데요. 그래서 EC2는 AWS 클라우드에서 가장 기본이 되는 서비스입니다. 그 주요 특징과 기능에 대해 자세히 살펴보겠습니다.

     

     

     

    EC2의 주요 기능

    1. 확장성 및 탄력성

    • Auto Scaling: 기업들의 수요 변화에 따라 EC2 인스턴스 수를 자동으로 조정하여 최적의 성능과 비용 효율성을 보장합니다.
    • Elastic Load Balancing: 들어오는 애플리케이션 트래픽을 여러 EC2 인스턴스에 분산하여 안정성을 높입니다.

     

    2. 보안

    • VPC(Virtual Private Cloud) : 정의한 가상 네트워크에서 AWS 리소스를 시작할 수 있는 AWS 클라우드의 논리적으로 격리된 섹션을 프로비저닝 할 수 있습니다.
    • 보안 그룹(Security Group) : 인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어하는 가상 방화벽 역할을 합니다.
    • IAM 역할: 인스턴스가 다른 AWS 서비스에 안전하게 액세스할 수 있는 권한을 관리합니다. 권한이 있는 user는 키페어 인증을 통해 해당 자원(EC2 인스턴스)에 실제 접속할 수 있습니다.

     

    3. 저장소 옵션

    • EBS(Elastic Block Store): EC2 인스턴스와 함께 사용할 영구 블록 스토리지 볼륨을 제공합니다. 각 EBS 볼륨은 가용 영역 내에서 자동으로 복제되어 구성 요소 오류로부터 사용자를 보호합니다. AWS에서 사용할 수 있는 스토리지 종류 및 특징을 알고 싶으면 링크를 참고하시 바랍니다. 
    • 인스턴스 스토어: 인스턴스에 임시 블록 수준 스토리지를 제공합니다. 이 저장소는 호스트 컴퓨터에 물리적으로 연결된 디스크에 있습니다.

     

    4. AMI(Amazon Machine Image)

    • Amazon 머신 이미지(AMI)는 소프트웨어 구성이 기재된 템플릿입니다. 예를 들어, 해당 템플릿 안에 운영 체제, 애플리케이션 서버, 애플리케이션까지 모두 구성되어 있습니다. 
    • AMI에서 인스턴스를 바로 시작하실 수 있는데요. 이 인스턴스는 AMI의 사본으로, 클라우드에서 실행되는 가상 서버입니다. 한 AMI를 이용하여 여러 인스턴스를 실행할 수 있는 장점이 있습니다. 


    EC2 인스턴스 유형

    EC2는 컴퓨팅 최적화, 메모리 최적화, 스토리지 최적화, GPU 인스턴스를 포함하여 다양한 사용 사례에 최적화된 다양한 인스턴스 유형을 제공합니다.

    인스턴스 유형  패밀리 타입 용도
    범용 T2, T3, M6g, M5, M5a, M5n, M4 컴퓨팅, 메모리, 네트워크 리소스 균형적 사용
    컴퓨팅 최적화 C5, C5n, C4 고성능 Front-end 집합, EC2에서 최고 성능의 프로세서, 성능 대비 저렴한 가격
    메모리 최적화 R5, R5a, R5n, R4, X1 메모리 용량이 많이 필요한 애플리케이션용
    고성능 데이터베이스
    GPU G3, P3, P2 그래픽 및 일반 목적의 GPU 컴퓨팅 애플리케이션용
    높은 I/O I2, I3en SSD 기반의 초고속 인스턴스 스토리지
    스토리지 최적화 D2 높은 디스크 처리량, 단위당 최소의 가격

     

    EC2 인스턴스 유형
    EC2 인스턴스 유형

     

    인스턴스 패밀리를 고를 때는 해당 서버가 어떤 역힐을 수행하는지 목적에 따라 다릅니다. 웹서버를 만드는데 굳이 스터리지 최적화로 구성할 필요 없다는 이야기죠.

    인스턴스 세대는 높을수록 좋습니다. 같은 cpu, 메모리 사양이라도 최근 컴퓨터가 더 효율적이고 비용을 아낄 수 있습니다. 그래서 운영하는 인스턴스가 과거 세대라면 최근 세대로 높이는 것이 돈을 아끼는 방법입니다.

    구분 설명 비고
    Family(인스턴스 패밀리) Instance의 hardware 구성 특성을 표시 메모리 최적화는 메모리를 키운거고, 컴퓨팅 최적화는 CPU를 키운 것임
    R : 메모리 optimize
    C : CPU optimize
    Generation(인스턴스 세대) 동일 Family 내에서 숫자가 높을 수록 최신의 Instance Type 최신 세대일 수록 가격대비 성능이 좋음
    Additional capability(추가 기능) Hardware 기능/요소가 포함된 경우에만 표시 예를 들면 a(AMD), g(graviton), d(local NVME SSD)
    Size(인스턴스 사이즈) Instance에 포함되는 vCPU, Memory의 규모를 정의 xLarge의 경우 4 core, 8xLarge는 32 core (xLarge 당 4 core)

     

    EC2 인스턴스 구입 옵션

    1. 온디맨드 인스턴스(On-Demand Instance)

    온디맨드 인스턴스를 사용하면 초 단위로 컴퓨팅 용량 비용을 지급하는 방식입니다.  장기 약정 없이 사용하기 때문에 컴퓨팅 용량 비용이 상대적으로 높게 지불합니다.

     

    2. 예약 인스턴스(Reserved Instance)

    온디맨드 가격에 비해 대폭 할인된 가격으로 1년 또는 3년 기간 동안 이용 가능합니다. AWS를 1년 이상 사용할 계획이면 온디맨드 보다 예약 인스턴스를 사용하는 게 비용을 절약할 수 있습니다. AWS 솔루션 아키텍트들이 Savings Plan이라고 말하며 권장합니다.

     

    이 것은 핸드폰을 구매할 때 약정할인과 비슷한 계념입니다. 1년 이상의 기간 사용을 약속한 고객에게 할인해 주는 방식이죠. 이는 핸드폰을 사용해 봐서 아시겠지만 적어도 2년 이상 동일한 기계를 사용할 것 같으면 할인이 들어가 훨씬 이득입니다. AWS는 고객을 장기간 유치해서 좋고, 고객은 할인받아서 좋은 옵션입니다. 

     

    3. 스팟 인스턴스(Spot Instances)

    내결함성과 유연한 애플리케이션에 적합한 미사용 EC2 용량을 할인된 가격으로 구매하는 방식입니다. 스팟 인스턴스는 예약 인스턴스를 사용해 보고 어느 정도 패턴을 보고 적용하는 것이 좋습니다. 우리가 운영하는 시스템이 어떤 경우에 여유롭고 어떤 때 사용량이 많은지 모르기 때문입니다.

     

    EC2 인스턴스 적용 사례

    아래 사례는 실제 프로젝트에서 비용 부담으로 EC2 Instance를 Down grade 했던 사례입니다. 각 모듈별로 특징에 맞는 EC2 유형을 선택한 것이 특징입니다. 

     

    1. 비정형 데이터 수집 모듈의 경우 ‘컴퓨트 최적화‘인 C5, C6 사용
    2. 화면 표출하는 모듈의 경우 ‘ 성능 순간 확장‘ 에 맞는 T3 사용
    3. 데이터 레이크(Data Lake)는 GPU를 사용하는 분석은 없어서 ‘범용“ 유형인 M5 사용
    4. EC2 인스턴스에 AWS 스토리지인 EBS를 붙여서 사용

    EC2 인스턴스 적용 사례
    EC2 인스턴스 적용 사례

     

    AWS 스토리지 종류 및 특징: S3, Glacier, EBS, EFS 선택법

     

    AWS 스토리지 종류 및 특징: S3, Glacier, EBS, EFS 선택법

    일반적으로 EC2 인스턴스 스토리지가 크지 않기 때문에 별도의 스토리지를 마운트 시켜 사용하는데요. 오늘은 AWS 스토리지의 종류에 대해 알아보겠습니다. 스토리지마다 가격과 특징이 다르기

    bommbom.tistory.com