EC2 활용하기

highway92·2021년 10월 20일
0

1. AWS EC2 소개

가상머신 vs 컨테이너 vs 서버리스

EC2(Elastic Compute Cloud)

  • ECS란 AWS의 가상머신 서비스 이다.(AWS에선 가상머신을 instance라 부른다.)
  • 필요에 따라 자유롭게 확장 가능하다.
  • 클라우드 답게 사용한 만큼 비용을 지불한다.
  • 미리 정의된 템플릿, 혹은 아마존 머신 이미지(AMI)를 통해 즉시 인스턴스를 생성 할 수 있다.
  • 대표적인 IaaS서비스이다.(infrastructure as a Service)

설정 옵션

처음 접하게 되면 정말 절망적인데 하나하나 알아가 보자..
EC2 설정은 조립용 컴퓨터를 조립한다고 생각하는게 마음이 편하다.
주요 설정내용은 CPU, Memory, Disks, OS, Networkin, 사전 스크립트가 있다.

개인용 pc를 살 때도 게임용으로 사는지 문서작업용으로 사는지에 따라 컴퓨터 성능을 고려하듯
EC2역시도 마찬가지다.
예를들어 머신러닝, 고성능 컴퓨팅의 경우는 가속화된 컴퓨팅에 최적화된 AMI를
데이터베이스 시스템의 경우에는 스토리지에 최적화된 이미지를 고르는 식이다.

EC2 AMI(Amazon Machine Image)

  • 인스턴스 실행 시, 필요한 OS, 애플리케이션, 소프트웨어 패키지가 포함된 템플릿이다.
  • AWS 혹은 제 3자에 의해 만들어진 것을 활용하거나, 직접 만들 수 있다.
  • 동일한 구성으로 여러 개의 인스턴스를 만들 때, 손쉽게 배포 가능하다.(파이썬의 클래스 같은 것이라 이해)

2. 보안 그룹(Security Group)

보안그룹

  • AWS 서비스를 수신(inbound), 발신(outbound) 트래픽을 제어하는 가상 방화벽이다.

  • 수신과 발신에 필요한 정보로는 IP, Port번호, 프로토콜이 있다.

  • 기본적으로 White list 방식이라, Port를 열어두지 않으면 아무도 접근 할 수 없다.

  • 대표적인 Port: ssh:22 / http : 80 / https : 443 / mysql : 1433

3. AWS 스토리지 : EBS & EFS

일반적인 서버에 제공 가능한 스토리지 종류

필자도 자세한 내용은 모른다...(파일 형식, 전송 프로토콜 등등) 그저 대략적인 이미지만 가져가도록 하자.

  • Direct Attached Storage(DAS) : 컴퓨터에 직접 연결된 스토리지

  • Network Attached Storage(NAS) : 외장하드와 같이 네트워크를 통해 연결된 스토리지

  • Storage Area Network(SAN) : 스토리지 고속 네트워크 채널을 통해 구성된 서비스

EC2 에 제공 가능한 스토리지 종류

  • Direct Attached Storage(DAS) : Instance Store

  • Network Attached Storage(NAS) : EFS(Elastic File System)

  • Storage Area Network(SAN) : EBS(Elastic Block Store)

파일 스토리지, 블록 스토리지

  • 파일 스토리지 : 가장 일반적인 스토리지, 서류 철에 서류를 정리하듯, 데이터가 폴더 안에 단일 정보로 저장됩니다. 경로를 알아야 데이터를 찾을 수 있다.

  • 블록 스토리지 : 데이터를 별도의 조각으로 조각조각 내어 분리하여 저장하는 것입니다. 각 데이터 블록은 고유 식별자를 부여받으며 필요할 때 조각들을 불러들여 붙여서 제공합니다.

EBS(Elastic Block Store)

  • EBS는 EC2와 연결하여 제공 할 수 있는 블록 스토리지 볼륨 - SAN스토리지
  • EBS는 AZ(availabilty zone) 내에 존재한다.
  • EC2가 종료되더라도 데이터는 유지 할 수 있는 장점이 있다.
  • 스냅샷 기능을 제공하여 특정 상태로 돌아가거나, 스토리지를 복제하는 기능을 제공한다.

EFS(Elastic File System)

  • EFS는 EC2와 연결하여 제공 할 수 있는 파일 시스템 스토리지 볼륨 - NFS 스토리지
  • EFS는 AZ 밖에서 존재
  • EC2가 종료되더라도 데이터는 유지 할 수있는 장점이 있다.
  • 보안 그룹과 연계하여 데이터를 접속 할 수 있는 인스턴스 제어

EBS vs EFS

EBSEFS
높은 수준의 성능이 필요할 때여러 개의 인스턴스가 동시에 접속이 필요할 때
상대적으로 낮은 비용으로 스토리지 구성이 필요할 때무제한으로 확장 가능한 스토리지가 필요할 때
적합한 서비스 종류 : 부팅 볼륨, NoSQL, RDBMS와 같은 데이터베이스, 데이터 웨어 하우징 및 ETL적합한 서비스 종류 : 빅 데이터 및 분석, 미디어 처리 워크플로, 콘텐츠 관리, 웹 서비스 및 리눅스 파일 디렉토리

3. 로드밸런서와 오토스케일링

고가용성 아키텍처를 위한 요구사항 첫 번째 : 로드밸런서

로드밸런서는 외부에서 들어오는 트래픽을 여러 EC2 인스턴스에 걸쳐 분산해주는 역할을 한다.

고가용성 아키텍처를 위한 요구사항 두 번째 : 오토 스케일링

트래픽이 갑자기 증가 했을때, 이를 처리할 수 있는 용량 확장이 필요한데 이를 오토 스케일링이라 한다.

profile
웹 개발자로 활동하고 있습니다.

0개의 댓글