Amazon EC2 (Elastic Compute Cloud)
EC2란 AWS 클라우드에서 제공하는 컴퓨팅 시스템이다. 따로 물리적인 서버를 구축할 필요없이 클라우드 상의 서버를 할당받아 사용하는 것이기 때문에 별도의 하드웨어에 비용을 투자할 필요가 없다.
즉. 직접 컴퓨터를 사지 않고도 아마존이 가지고 있는 서버용 컴퓨터들의 자원을 원격으로 사용할 수 있게 해주는 서비스이다.
(초기 구입비가 전혀 없고, 사용한만큼 비용을 지불하기 때문에 효율적으로 사용할 수 있다)
컴퓨터의 생성 및 삭제를 매우 편리하게 이용할 수 있다 (탄력이 있는 컴퓨팅이 가능하다)
EC2 용어
- 인스턴스 : 가상의 컴퓨팅 환경 (인스턴스 1개를 컴퓨터 1대라고 생각할 수 있다)
- AMI (Amazon Machine Image) : 서버에 필요한 운영체제와 여러 소프트웨어들이 적절하게 구성된 템플릿
이미지를 이용하여 새 컴퓨터를 만들때 저장된 상태와 똑같은 컴퓨터를 생성할 수 있다
- Elastic IP Address (탄력적 IP 주소 할당) : 동적 클라우드 컴퓨팅을 위한 고정 IPv4 주소
- VPC (Virtual Private Clouds) : 네트워크와 간편하게 연결할 수 있는 가상 네트워크
Amazon RDS (Relational Database Service)
클라우드에서 관계형 데이터베이스를 더욱 쉽게 설정, 운영, 및 확장할 수 있도록 AWS가 서비스하는 분산 관계형 데이터베이스이다.
즉, MySQL, MariaDB, PostgreSQL, Oracle 등을 직접 운영하지 않고, AWS에서 대행해주는 것이다.
RDS는 EC2 인스턴스를 기반으로 운영하는 서비스이다.
RDS 인스턴스 요금은 기본 인스턴스 크기, 데이터 스토리지, 가용영역, 데이터 전송에 따라 달라진다. 각 데이터 베이스(MySQL 등) 엔진마다 앞의 요소들에 대해 다른 요금을 적용하기 때문에 비용 측면에서 고려해야할 부분이 많다.
RDS 사용 vs EC2에 데이터베이스를 직접 설치
데이터베이스를 어떻게 사용할지에 대한 방안은 2가지가 있다.
RDS를 사용할 것인지, 아니면 EC2 인스턴스에 데이터베이스를 직접 설치하는 방식을 택할지 결정해야 한다.
AWS에 지불하는 비용만 놓고 비교하면 데이터베이스를 직접 설치하는 것이 확연히 저렴하지만, 이러한 결정을 내릴 때 고려해야 할점이 있다.
RDS 를 사용할 경우 OS 및 데이터베이스의 설치 및 관리, 업데이드 등을 따로 할 필요가 없어지고 AWS 콘솔이나 AWS API를 통해 손쉽게 백업이나 복구가 가능하다. 그 외에도 많은 기능을 통해 높은 가용성을 이룰 수 있다. 이러한 모든 기능등을 통하여 데이터베이스 도입 및 관리하는데 들어가는 시간과 노력을 줄일 수 있기 때문에 어떤 방식을 사용했을 때 더 좋은 성과를 낼 수 있는지 고려해야 한다.
참고자료
https://www.bespinglobal.com/bespins-pick-vol-11-aws-rds-vs-ec2/
'프로그래밍' 카테고리의 다른 글
REST API (0) | 2020.04.10 |
---|---|
(200108) AWS - S3, EC2, RDS (1) (0) | 2020.01.08 |
(191207) Server, Client, API, Browser (0) | 2019.12.07 |
(191117) 객체지향 프로그래밍 (OOP) - (3) (0) | 2019.11.17 |
(191117) 객체지향 프로그래밍(OOP) - (2) (0) | 2019.11.17 |
댓글