본문 바로가기
Study/AWS

[AWS] 클라우드 컴퓨팅

by _YUJIN_ 2024. 3. 15.

학습 목표 

  • AWS EC2의 이점 파악
  • 서로 다른 Amazon EC2 인스턴스 유형을 파악
  • Amazon EC2의 다양한 결제 옵션 구분
  • Amazon EC2 Auto Scaling의 이점 파악
  • Elastic Load Balancing의 이점 및 사례 파악
  • Amazon Simple Notification Secvice (Amazon SNS)와 Amazon Simple Queue Service (Amazon SQS)의 차이점 이해
  • AWS 컴퓨팅 옵션 이해

Amazon Elastic Compute Cloud 줄여서 EC2라고 하는 서비스가 어떤 서비스인지 알아보고자 한다. 

 

EC2

  • 서비스를 운영하기 위해서는 '서버'(= 물리적인 서버가 아닌 인터넷을 통해 접근하는 가상화된 서버)를 통해 웹 애플리케이션을 호스팅하고 기업에 필요한 컴퓨팅 용량을 제공할 수 있다. 그리고 이 가상화된 서버에 액세스하는 데 사용하는 서비스를 EC2라고 한다.
  • 온프레미스로 실행하는 방법보다 훨씬 유연하고 비용 효율적이며 더 빠르다.
  • 사용자는 EC2 인스턴스를 요청하기만 하면 인스턴스가 시작하고 가동되어 단 몇 분 안에 사용할 수 있다. 
  • EC2 인스턴스를 굉장히 손쉽게 중단하거나 종료할 수 있다. (필요하지 않거나 원하지 않는 서버를 가지고 있지 않아도 된다)
  • 사용한 만큼 비용을 지불하면 된다.
  • EC2 인스턴스를 프로비저닝할 때 운영 체제로서 Windows, Linux, MacOS를 선택할 수 있다. 
  • 선택한 EC2 인스턴스 수천 개를 온디맨드로 프로비저닝할 수도 있다. 
  • 인스턴스의 수직 확장이 가능하다. 굉장히 작은 인스턴스부터 시작해서 애플리케이션이 서버 한도를 초과하기 시작하면 그때 인스턴스에 더 많은 메모리와 CPU를 제공할 수 있다는 의미이다. 

온프레미스 단점

  • 자체적인 물리적인 서버를 이용하기 위해 구매할 서버 유형과 필요한 서버 대수를 확인하고 하드웨어 비용을 선결제 해야한다.
  • 온프레미스용 서버를 사면 설치와 필요한 제반 작업을 진행해야하고, 보안유지까지 신경을 써야 사용할 준비가 완료되는 것이다.
  • 하드웨어를 무조건 보유해야만 한다. 

AWS 장점

  • 이미 데이터 센터를 구축해서 보안을 유지하고 있다.
  • AWS에서는 이미 서버를 구입하고 필요한 제반 작업을 마쳤고, 이 서버는 바로 사용할 수 있는 온라인 상태이다.
  • 엄청난 양의 컴퓨팅 용량을 지속적으로 운용하고 있고 사용자는 필요할 때 용량의 일정 부분을 마음껏 사용할 수 있다. 

EC2 작동방식

  1. 인스턴스 시작 
    1. 기본 구성 인스턴스가 포함되어 있는 템플릿을 선택한다. (운영체제, 애플리케이션 서버 또는 애플리케이션이 포함된다.)
    2. 인스턴스의 특정 하드웨어 구성인 인스턴스 유형을 선택한다. 
    3. 인스턴스 시작을 준비할 때 인스턴스로 들어오고 나가는 네트워크 트래픽을 제어할 보안 설정을 지정한다. 
  2. 연결 
    1. 프로그램과 애플리케이션에는 인스턴스에 직접 연결하고 데이터를 교환하는 여러 가지 방법이 있다. 
    2. 사용자가 로그인하여 인스턴스에 연결하고 컴퓨터 데스크톱에 액세스할 수도 있다. 
  3. 사용
    1. 인스턴스에 연결했다면 바로 사용할 수 있다. 
    2. 명령을 실행하여 소프트웨어 설치, 스토리지 추가, 파일 복사 및 정리 등의 작업을 수행할 수 있다. 

 

EC2 인스턴스 유형

Ex, 수많은 고객을 대상으로 하는 커피숍을 운영하려면 직원이 여러 명 필요하다. 모든 직원이 다 카운터를 볼 필요는 없다. 음료를 만드는 사람, 음식을 만드는 사람, 커피 내리는 사람처럼 다양한 역할이 필요하다.

 

  • 커피숍에 다양한 직원이 필요하듯이 AWS에는 목적에 따라 AWS 환경에 배포할 수 있는 다양한 유형의 EC2 인스턴스가 있다.
  • 각 EC2 인스턴스의 유형은 인스턴스 패밀리로 구분되며 특정 유형의 작업에 최적화된다. 
  • 인스턴스 유형에 따라 CPU, 메모리, 스토리지 및 네트워크 용량의 다양한 조합이 제공되며 애플리케이션을 위한 적절한 리소스 조합을 선택할 수 있다.

1. 범용 인스턴스 

  • 범용 인스턴스는 컴퓨팅, 메모리, 네트워킹 리소스를 균형있게 제공한다. 
  • 애플리케이션 서버, 게임 서버, 엔터프라이즈 애플리케이션용 백엔드 서버, 중소 규모 데이터베이스 등으로 사용할 수 있다. 
  • 컴퓨팅, 메모리, 네트워킹에 필요한 리소스가 거의 동일한 애플리케이션이 있다고 가정해보면, 어느 한 리소스 영역의 최적화가 필요한 애플리케이션이 아니기 때문에 범용 인스턴스에서 애플리케이션을 실행하는 것이 좋다. 

2. 컴퓨팅 최적화 인스턴스 

  • 고성능 프로세서를 활용하는 컴퓨팅 집약적인 애플리케이션에 적합하다.
  • 범용 인스턴스와 마찬가지로 컴퓨팅 최적화 인스턴스는 웹 서버, 애플리케이션 서버, 게임 서버와 같은 워크로드에 사용할 수 있다. 
  • 단일 그룹에서 많은 트랜잭션을 처리해야 하는 일괄 처리 워크로드에 사용할 수 있다. 

3. 메모리 최적화 인스턴스 

  • 메모리에서 대규모 데이터 집합을 처리하는 워크로드에 빠른 성능을 제공하기 위해 설계되었다. 
  • 컴퓨팅에서 메모리는 임시 스토리지 영역이다. 
  • 중앙 처리 장치(CPU)가 작업을 완료하는 데 필요한 모든 데이터와 명령이 들어 있다. 
  • 컴퓨터 프로그램이나 애플리케이션은 스토리지에서 메모리로 로드된 후 실행된다. 사전 로드 프로세스 덕분에 CPU가 컴퓨터 프로그램에 직접 액세스할 수 있다. 

4. 액셀러레이티드 컴퓨팅 인스턴스

  • 하드웨어 액셀러레이터 또는 코프로세서를 사용하여 일부 기능을 CPU에서 실행되는 소프트웨어에서보다 더 효율적으로 수행한다. (Ex, 부동 소수점 수 계산, 그래픽 처리, 데이터 패턴 일치 등이 있다.)
  • 컴퓨팅에서 하드웨어 액셀러레이터는 데이터 처리를 가속화할 수 있는 구성요소이다. 
  • 가속 컴퓨팅 인스턴스는 그래픽 애플리케이션, 게임 스트리밍, 애플리케이션 스트리밍과 같은 워크로드에 적합하다.

5.  스토리지 최적화 인스턴스

  • 로컬 스토리지의 대규모 데이터 집합에 대한 순차적 읽기 및 쓰기 액세스가 많이 필요한 워크로드를 위해 설계되었다. (Ex, 분산 파일 시스템, 데이터 웨어하우징 애플리케이션, 고빈도 온라인 트랜잭션 처리(OLTP)시스템 등이 있다.)
  • 컴퓨팅에서 초당 입출력 작업 수(IOPS) : 스토리지 디바이스의 성능을 측정하는 지표이다. 디바이스가 1초 내에 수행할 수 있는 입력(=데이터베이스에 입력되는 레코드와 같이 시스템에 투입되는 데이터) 또는 출력 작업(=서버에서 생성된 데이터)의 수를 나타낸다. 스토리지 최적화 인스턴스는 지연 시간이 짧은 임의 IOPS를 애플리케이션에 제공하도록 설계되었다.
  • IOPS 요구 사항이 높은 애플리케이션이 있는 경우 스토리지 최적화 인스턴스는 이러한 종류의 사용 사례에 최적화되지 않은 다른 인스턴스 유형보다 나은 성능을 제공할 수 있다. 

 

Amazon EC2 요금

  • 사용한 컴퓨팅 시간에 대해서만 비용을 지불한다. 
  • 사용 사례에 따라 다양한 요금 옵션을 제공한다. (Ex, 사용 사례가 중단을 견딜 수 있는 경우 스팟 인스턴스로 비용을 절감할 수 있고, 예약 인스턴스로 사전 약정을 하고 취소 사용 수준을 고정하며 비용을 절약할 수도 있다.)

1. 온디맨드 

  • 중단할 수 없는 불규칙한 단기 워크로드가 있는 애플리케이션에 가장 적합하다.
  • 선결제 비용이나 최소 약정은 적용되지 않는다. 
  • 인스턴스는 중지될 때까지 계속 실행되며, 사용한 컴퓨팅 시간에 대해서만 비용을 지불한다. 
  • 온디맨드 인스턴스는 1년 이상 지속되는 워크로드에는 권장하지 않는다. 이런 경우엔 예약 인스턴스를 사용하면 비용 절감 효과가 더 크기 때문이다. 

2. 예약 인스턴스 

  • 온디맨드 인스턴스 사용할 때 적용되는 결제 할인 옵션이다. 

2-1. 표준 예약 인스턴스 

  • 이 옵션은 안정적 상태의 애플리케이션에 필요한 EC2 인스턴스 유형 및 크기, 그리고 해당 애플리케이션을 실행할 AWS 리전을 알고 있는 경우에 적합하다. 
  • 예약 인스턴스를 사용하려면 다음 자격 요건을 명시해야한다. 
    • 인스턴스 유형 및 크기: 예를 들어 m5.xlarge
    • 플랫폼 설명(운영 체제): 예를 들어 Microsoft Windows Server 또는 Red Hat Enterprise Linux
    • 테넌시: 기본 테넌시 또는 전용 테넌시
  • EC2 예약 인스턴스의 가용 영역을 지정할 수 있다. 이 사양을 지정하면 EC2 용량이 예약된다. 그럼 필요할 때 원하는 양의 EC2 인스턴스를 사용할 수 있다. 

2-2. 컨버터블 예약 인스턴스 

  • EC2 인스턴스를 여러 가용 영역 또는 다양한 인스턴스 유형에서 실행해야 하는 경우 컨버터블 예약 인스턴스가 적합할 수 있다.
  • EC2 인스턴스를 실행하는 데 유연성이 필요한 경우 더 큰 할인 혜택을 받는다. 
  • 예약 인스턴스 약정 기간 종료 시 Amazon EC2 인스턴스를 중단 없이 계속 사용할 수 있다. 하지만 인스턴스 종료 또는 인스턴스 속성(인스턴스 패밀리 및 크기, 리전, 플랫폼, 테넌시)과 일치하는 새 예약 인스턴스 구입할 때까지는 온디맨드 요금이 부과된다. 

3. EC2 Instance Savings Plans

 

4. 스팟 인스턴스

  • 시작 및 종료 시간이 자유롭거나 중단을 견딜 수 있는 워크로드에 적합하다. 
  • 스팟 인스턴스는 미사용 Amazon EC2 컴퓨팅 용량을 사용하며 온디맨드 요금의 최대 90%까지 비용을 절감할 수 있다. 
  • 필요에 따라 시작 및 중지할 수 있는 백그라운드 처리 작업(ex, 고객 설문 조사 데이터 처리 작업)이 있다고 가정해 본다. 전반적인 비즈니스 운영에는 영향을 주지 않고 처리 작업을 시작하고 중지하려고 한다. 스팟 요청을 하고 Amazon EC2 용량을 사용할 수 있는 경우 스팟 인스턴스가 시작된다. 하지만 Amazon EC2 용량을 사용할 수 없다면 용량을 사용할 수 있을 때까지 요청은 성공하지 못한다. 
  • 스팟 인스턴스를 시작한 후에 용량을 더 이상 사용할 수 없거나 스팟 인스턴스에 대한 수요가 늘면 인스턴스가 중단될 수 있다. 
  • 이 경우, 백그라운드 처리 작업에는 문제가 없을 수 있지만 애플리케이션 개발 및 테스트에서는 예기치 않은 중단을 방지하는 것이 좋다. 

5. 전용 호스트

  • 사용자 전용의 Amazon EC2 인스턴스 용량을 갖춘 물리적 서버이다. 
  • 기존 소켓당, 코어당 또는 VM당 소프트웨어 라이선스를 사용하여 라이선스 규정 준수를 유지할 수 있다. 
  • 지근까지 다룬 모든 Amazon EC2 옵션 중에서 가장 비용이 많이 든다.
반응형

'Study > AWS' 카테고리의 다른 글

[AWS] AMAZON WEB SERVICES 소개  (0) 2024.03.09
[AWS] AWS CIL 설치  (0) 2024.03.08
[에러] Cannot perform an interactive login from a non TTY device  (0) 2024.03.08