본문 바로가기
Devops

[Devops] AWS EC2 기본 개념 및 구성

by 개미가되고싶은사람 2024. 5. 8.

EC2 (Elastic Compute Cloud) 개념

독립된 컴퓨터를 임대해 주는 서비스로서 AWS에서 제공하는 클라우드 컴퓨팅이다.
 PC방과 같이 사용한 만큼 비용을 지불하기 때문에 탄력적인 이라는 의미의 Elastic이라는 단어가 붙어있다. Elastic은 비용적인 부분 뿐만이 아니라 필요에 따라 성능, 용량을 자유롭게 조절할 수 있다는 의미도 가지고 있다
 

EC2를 사용해야 하는 이유

120GB SSD를 구입해서 120GB만큼 이용하는게 아니라 사용한 만큼 비용을 지불하고 사용할 수 있으니 융통적으로 비용을 아낄 수 있다. 또한 초기 구입비, 세팅비가 전혀 없고, 그냥 사용한 만큼 비용을 지불하면 된다.
  
이를 통해 하드웨어 구매없이 더 쉽게 애플리케이션을 개발하고 배포할 수 있다.
EC2를 통해 원하는 만큼 가상 서버를 구축하고 보안 및 네트워크 구성과 스토리지 관리가 가능하며, 또한 요구 사항이나 갑작스러운 트래픽 증가 등 변동 사항에 따라 신속하게 규모를 확장하거나 축소할 수 있어 서버 트래픽 예측 필요성이 줄어든다는 장점이 있다.

 

EC2 특징 요약

  • 실제로 사용한 만큼만 비용을 지불
  • 변화에 따라 컴퓨팅 시스템의 능력을 조절할 수 있다.
  • 다른 AWS 서비스와의 유기적인 연동이 가능
  • 사용 용도에 따라 최적화 된 서버를 구성할 수 있다.
  • 세계 여러 지역과 가용 영역(AZ)에서 사용할 수 있으므로 지연 시간을 줄이고 성능을 향상시키기 위해 원하는 지역에 애플리케이션을 배포할 수 있다.
  • 인스턴스를 모니터링하고, 경보를 설정하고, 성능 지표의 변화에 ​​자동으로 대응하는 서비스를 이용할 수 있다.

 

EC2의 구성 (Instance / EBS / AMI)

AMI

Amazon Machine Image(AMI)는 소프트웨어 구성이 기재된 템플릿이다.(예: 운영 체제, 애플리케이션 서버, 애플리케이션) AMI에서 인스턴스를 바로 시작할 수 있다. 이 인스턴스는 AMI의 사본으로, 클라우드에서 실행되는 가상 서버다. 다음 그림과 같이, 한 AMI로 여러 인스턴스를 실행할 수 있다. 즉 AMI는 EC2 인스턴스를 실행하기 위한 정보를 모은 단위 이다.

 

예를들어 운영 체제는 Linux로 설정해서 서버를 열고 싶으면 리눅스 윤영체제가 세팅된 리눅스 템플릿 AMI를 EC2에 적용시켜 간편하게 리눅스 윤영체제로 세팅할 수 있다

Instance 

인스턴스는 클라우드의 가상 서버다. 시작 시 구성은 인스턴스를 시작할 때 지정한 AMI의 사본이다.

하나의 AMI에서 다양한 인스턴스 유형을 실행할 수 있다. 인스턴스 유형에 따라 인스턴스에 사용되는 호스트 컴퓨터의 하드웨어가 기본적으로 결정된다. 각 인스턴스 유형은 서로 다른 컴퓨팅 및 메모리 기능을 제공한다. 인스턴스에서 실행하려는 애플리케이션 또는 소프트웨어에 필요한 메모리 양과 컴퓨팅 파워를 기준으로 인스턴스 유형을 선택하면 된다. 

 

EBS ( Elastic Block Store)

EBS에서는 EC2 인스턴스와 함께 사용할 수 있는 확장 가능한 고성능 블록 스토리지 리소스를 제공한다. EBS를 사용해 다음과 같은 블록 스토리지 리소스를 생성하고 관리할 수 있다. 위에 내용을 보  인스턴스가 연산에 관한 (CPU,메모리 등) 처리를 한다고 하면, 데이터를 저장하는 역할은 바로 EBS가 한다고 보면 된다. 컴퓨터에 하드 디스크 역할을 담당하고 있다.

  • Amazon EBS 볼륨 -  EC2 인스턴스에 연결하는 스토리지 볼륨이다. 볼륨을 인스턴스에 연결하면 블록 스토리지를 사용할 때와 같은 방식으로 사용할 수 있다. 인스턴스는 로컬 드라이브에서와 마찬가지로 볼륨과 상호 작용할 수 있다.
  • Amazon EBS 스냅샷 - EBS 볼륨의 특정 시점을 복사해 백업하는 역할을 한다. EBS 볼륨의 데이터를 백업하는 스냅샷을 생성할 수 있다. 그러면 언제든지 해당 스냅샷에서 새 볼륨을 복원할 수 있다.

시작 중에 Amazon EBS 볼륨을 생성하여 인스턴스에 연결할 수 있으며, 시작 후 언제라도 EBS 볼륨을 생성하여 인스턴스에 연결할 수 있습니다. 생성 후 언제라도 볼륨에서 스냅샷을 생성할 수 있다.

 

참고자

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instances-and-amis.html

 

Instances and AMIs - Amazon Elastic Compute Cloud

Instances and AMIs An Amazon Machine Image (AMI) is a template that contains a software configuration (for example, an operating system, an application server, and applications). From an AMI, you launch an instance, which is a copy of the AMI running as a

docs.aws.amazon.com