>Amazon EC2 (Elastic Compute Cloud)
: AWS, 아마존 웹 서비스에서 제공하는 클라우드 컴퓨팅 서비스
: 아마존에서 가상의 컴퓨터 한 대를 빌리는 개념
: 서버, 스토리지, 데이터베이스 등
/*
Elastic의 의미
: 사용한만큼의 비용, 필요한만큼의 성능, 용량을 조절할 수 있기 때문
*/
>Amazon EC2 장점
-빠르게 PC를 구축할 수 있음.(실제 PC를 구매하는 것 보다)
-원하는 운영체제를 선택할 수 있음. (AMI)
-CPU, RAM, 용량도 손쉽게 구성가능
>인스턴스
: 인스턴스란, AWS에서 빌린 1대의 컴퓨터를 의미하는 단위
: 인스턴스는 물리적으로 우리가 사용하는 PC랑 다를바가 없고, 물리적인 PC에서 할 수 있는 것을 모두 할 수 있음.
: 단, 인터넷이 필수적임.
: 보통 인스턴스를 서버 컴퓨터로 만들고(웹서버를 설치) 서비스를 제공함.
>AMI (Amazon Machine Image)
: 소프트웨어 구성이 기재된 템플릿
: 운영체제만 깔려있는 템플릿을 선택하거나, 아예 런타임이 설치된 템플릿을 선택할 수도 있음.
: AMI 설정을 기반으로 Instance를 구성함.
>RDS (Relational Database Service)
: AWS에서 제공하는 관계형 데이터베이스 서비스
: 다양한 데이터베이스 엔진 선택지가 있기 때문에 필요와 취향에 맞추어 DB를 선택하여 사용할 수 있다.
/*
EC2 설정에 MySQL 같은 관계형 데이터베이스를 설정하고 사용하면 되는데 굳이 RDS 서비스를 사용하는 이유.
: EC2 설정에 관계형 데이터베이스를 설정하고 사용하면, 해당 DB에 대한 유지, 보수를 직접해야한다. (DB 엔진의 설치, 버전관리, 데이터 백업 등)
: RDS는 기타 작업을 아마존에서 해주고, 사용자는 DB를 사용하기만 하면 된다.
*/
>Simple Storage Service
: 인터넷 공간에 데이터를 저장하는 저장소
: 흔히 사용하는 네이버 클라우드, 구글 드라이브 같은 서비스
: 물리적인 PC로 빗대면 하드 디스크
>Simple Storage Service 장점
-뛰어난 접근성
: 웹 환경(온라인)이면 언제 어디서나 파일을 저장하거나 저장된 파일을 가져올 수 있음.
>Amazone S3
: Amazone에서 제공하는 Simple Storage Service
: 필요한만큼 사용할 수 있고, 사용한만큼 비용을 내면 됨.
: 스토리지 내구성이 굉장히 뛰어남. (파일이 유실될 확률이 적음)
: 높은 가용성을 지님. (저장된 파일을 정상적으로 사용할 수 있는 시간이 김)
: 다양한 스토리지 클래스를 제공
: 정적 웹 사이트 호스팅 가능(버킷)
>높은 내구성, 높은 가용성
: AWS로 제공하는 서비스들의 공통적인 특징들
: 이러한 특징을 갖을 수 있는 이유는 리전(Region)이라는 키워드때문.
>리전(Region)
: AWS에서 클라우드 서비스를 제공하기 위해 운영하는 물리적인 서버의 위치를 의미
: 세계 곳곳에 물리적인 서버(IDC, International Data Center)를 구축해놨고, 한 군데에서 이상이 생겨도 다른 곳에 모두 백업이되어있기 때문에 높은 내구성과, 높은 가용성이라는 특징을 갖음.
>스토리지 클래스
: 저장소의 사용 목적에 따라 효율적으로 나누어 놓은 개념
: 대표적으로 Standard와 Glacier 클래스가 존재
-Standard
: 범용적인 목적에 유용
: 데이터에 대한 빠른 접근 속도, 데이터 액세스 요청에 대한 빠른 처리 속도가 특징
: 단점은 데이터를 오래 보관하는 목적으로는 효율적이지 않음.(높은 보관 비용)
-Glacier
: 속도는 느리지만 데이터 보관 비용이 매우 저렴
: 장기간 데이터를 보관할 때 효율적임.
-기타 클래스
: Standard-IA, One Zone-IA, S3 Glacier Deep Archive 등
>정적 웹 사이트 호스팅
-정적
: 정적 파일은 서버의 개입 없이 생성된 파일을 의미함. (서버랑 관련없이 미리 만들어둔 파일)
//동적 파일: 클라이언트가 서버에 요청을 보내고, 요청에 맞추어 그 자리에서 생성한 파일
-웹 호스팅
: 서버의 한 공간을 임대해 주는 서비스
: 서비스 배포를 위해 개인이나 기업의 서버 공간 중 일부를 임대하는 개념
>버킷
: S3에서 제공하는 정적 웹 사이트 호스팅을 위한 저장 공간
: 버킷이라는 공간에 파일을 업로드하고 버킷을 웹 사이트 호스팅 용도로 구성하면, 정적 웹 사이트를 배포할 수 있음.
>버킷 추가 설명
: 파일을 저장하는 최상위 디렉토리이며 무한히 많은 파일을 저장할 수 있음.
: 각 리전에서 버킷의 이름을 고유해야하고, 버킷에 정책을 생성하여 다른 유저의 접근 권한을 설정할 수 있음.
>S3 객체
: 버킷에 저장되는 데이터, 즉 S3를 이용하여 저장한 데이터는 파일과 메타데이터로 구성됨.
: 그 중 파일은 키-값 페어 형식으로 저장되기 때문에 객체라고 부름
: 객체(파일)의 값에는 실제 데이터(최대 5TB)를 저장하고, 객체(파일)의 키는 식별자 역할을 함.
: 메타데이터는 객체의 생성일, 크기, 유형 등 객체를 설명하는 정보를 담고있는 데이터이다.
: 모든 객체는 고유한 URL 주소를 갖고 있고, 이를 통해 URL 주소로도 원하는 데이터에 접근할 수 있음.
>배포; Deploy
: 개발한 서비스를 사용자가 이용할 수 있도록 하는 것.
>클라이언트 배포(프론트엔드 서버)
: EC2 인스턴스까지 필요하지 않음
: S3 기능으로도 클라이언트는 배포할 수 있음.
: 빌드를 통해 정적 파일로 만든 후 S3를 통해 배포
>빌드
: 불필요한 데이터를 없애고, 통합/압축하여 배포하기 최적화된 상태를 만드는 것.
: 최적화를 시킨만큼 데이터의 용량이 줄어들고 웹 사이트 로딩 속도가 빨라짐.
>Amazon CloudFront
: AWS에서 제공하는 CDN 서비스(Contents Delivery Network)
: 각지의 데이터센터에 데이터를 분산시키고, 사용자가 서비스를 이용할 때 이용 지역 근처의 데이터센터에서 데이터를 주는 방식
>백엔드 서버 배포
: AWS EC2 서비스 이용
>배포된 애플리케이션이 이용할 데이터베이스
: AWS RDS 서비스
>간편하고 직관적인 도메인
: AWS Route 53 서비스
'코드스테이츠_국비교육 > [Section4]' 카테고리의 다른 글
72.04_[Cloud] AWS_인스턴스 연결_22.12.02 (0) | 2022.12.02 |
---|---|
72.03_[Cloud] AWS, Amazon Web Service_22.12.02 (0) | 2022.12.02 |
72.01_[Cloud] 운영 환경 구성_개요_22.12.02 (0) | 2022.12.02 |
71.01_[Spring WebFlux] Spring Web Flux_22.12.01 (0) | 2022.12.01 |
70.01_[Spring WebFlux] Project Reactor_22.11.30 (0) | 2022.11.30 |