TIL.AWS
AWS
AWS는 Amazon Web Service의 줄임말이다. AWS는 소위 클라우드 서비스라고도 한다. 클라우드 서비스는 서버 등의 인프라스트럭쳐를 필요한대로 on demand로 사용할 수 있는 서비스이다. 즉, 유저가 직접 서버를 구입하고 설치할 필요 없이 AWS상에서 클릭 몇번으로 서버를 구축하고 사용할수 있다.
웹 서비스 배포를 위한 AWS필수 개념
AWS가 제공하는 기능들은 굉장히 방대하고 다양하다. 그 중 일반적으로 많이 사용되는 개념과 기능들이 있다.
EC2
- Elastic Compute Cloud
- AWS상에서 사용하는 Server. EC2서버에 API를 배포하게 된다.
- EC2는 다양한 사양 옵션을 제공한다.
Security Group
- EC2 인스턴스에 대한 네트워크 트래픽을 제어하는 가상 방화벽 역활을 한다.
- 즉 security group 설정을 해줘야 EC2인스턴스에 HTTP와 SSH접속이 가능하다.
RDS
- AWS의 database 서비스
- RDS를 사용하면 사용자가 직접 서버를 생성해서 데이터 베이스를 설치하고 설정하고 관리하지 않아도 된다.
- 그러면서 동시에 비용도 더 저렴하다. 사용자가 직접 데이터베이스를 설치하고 운영하는 것보다 RDS를 사용하는 것이 더 저렴하다. 즉,RDS를 사용하지 않을 이유가 거의 없다.
Load Balancer
- 로드 발란서는 HTTP요청들을 여러 서버에 분산할때 사용된다
- HTTP 요청이 많을때는 서버 하나만으로 모두 처리하기 힘들기 때문에 서버 수를 늘리는것이 일반적이다. 그럼으로 여러 서버를 실행하고 로드발란서가 HTTP요청들을 서버들에 분산 해주는 형태로 시스템이 구성된다.
Route 53
- AWS의 DNS서비스
- API시스템을 실제 도메인과 연결 시켜주는 기능을 제공한다.
AWS S3
- AWS S3(Simple Storage Service)는 이름 그대로 파일을 쉽게 저장할 수 있는 공간을 제공하는 서비스.
- 파일을 저장할 수 있을 뿐만이 아니라 파일마다 고유 주소를 부여해주기 때문에 S3에 저장한 파일을 웹상에서 쉽게 읽어들일수 있다.
- 주로 사이트상의 이미지들을 저장하고 사이트에서 읽어들여 렌더링 해주는데 사용한다.