20230724

아홍·2023년 7월 24일

2023.07

목록 보기
9/12

클라우드 컴퓨팅

클라우드 등장 이전, 서버실 등에 컴퓨터를 배치하여 서비스를 제공할 경우, 요청에 대한 수용 능력이 한계에 도달한다면 컴퓨터를 추가하거나 컴퓨터의 성능을 높이는 방식으로 문제를 해결했었다.

그러나 이러한 방식은 주기적인 관리가 필요하고,
컴퓨터를 배치할 공간이 필요하다는 단점이 있었다.

이를 극복하기 위해 데이터 센터가 등장했고, 유휴자원을 대여해주는 서비스인 클라우드 서비스가 등장했다.

클라우드 서비스의 장점은
1. 필요할 때마다 컴퓨팅 능력을 조절할 수 있고
2. 사용한 만큼의 요금만 지불하면 되고
3. 다른 컴퓨터로 즉시 이주가 가능하다

운영환경이 벤더에 종속된다는 단점도 존재한다.

Iaas Infrastructure as a Service

벤더가 가상 컴퓨터를 제공. 대부분 이에 해당한다

Paas Platform as a Service

DB, 개발 플랫폼까지 제공

Saas Software as a Service

당장 사용 가능한 소프트웨어까지 제공

Deploy

서비스를 사용자들이 이용 가능하게 하는 일련의 과정
기본적으로 아래 네 단계를 거친다

Development

구성원이 각자의 컴퓨터에서 코드를 작성, 테스트하는 과정

Integration

코드를 합치는 과정

Staging

복제된 실제 데이터 등을 복사해서 테스트하는 단계
모든 관계자들의 검증을 거친다

Production

실제로 서비스가 제공된다

deveopment 와 production 단계의 환경은 서로 다를 수 있다.
환경 설정을 코드와 분리하는 것이 중요하다.
이를 위해서
1. 서로 다른 환경에서도 정상작동될 수 있게 환경 변수를 설정하고
2. 절대경로 대신 상대경로를 사용하고
3. Docker 등을 사용해 환경을 통일시키기도 한다.

EC2 (Elastic Compute Cloud)

AWS에서 제공하는 클라우드 컴퓨팅 서비스
성능, 용량등을 유연하게 조절할 수 있다
AWS에서 컴퓨터를 빌리는 것을 인스턴스를 생성한다고 한다

장점
1. 구성하는데 필요한 시간이 짧다
2. 용도에 따라, AMI를 통해 다양한 운영체제를 선택할 수 있다

AMI (Amazon Machine Image)

소프트웨어 구성이 기재된 템플릿

RDS (Relational Database Service)

AWS에서 제공하는 관계형 데이터베이스

DB를 따로 분리해서 사용한다면 DB의 유지보수를 RDS에서 전적으로 관리하기 때문에
사용자가 DB 엔진의 설치, 버전관리, 백업 등을 할 필요가 없다.
또한 분리하지 않는다면 가용성과 내구성이 확보되지 않아 데이터가 유실될 수도 있고, DB의 규모를 추후에 확장하기 어렵다.

S3 (Simple Storage Service)

AWS에서 제공하는 클라우드 스토리지 서비스

S3의 장점은
1. 확장성이 높아, 비용만 지불하면 스토리지의 용량을 얼마든지 확장할 수 있다
2. 내구성이 높아, 데이터를 유실할 가능성이 낮다
3. 가용성이 높아, 스토리지의 데이터을 정상적으로 사용할 수 있는 시간이 길다
4. 다양한 스토리지 클래스를 제공한다

  • Standard : 데이터 접근, 처리가 빠르지만 보관 비용이 높다
  • Glacier : Standard보다 느리지만 데이터 보관 비용이 저렴해 장기 보관에 적절하다
    이 외에도 다양한 선택지가 있으니, 이용 목적에 따라 선택 가능하다
  1. 정적 웹사이트 호스팅이 가능하다. 버킷이 정적 웹사이트를 배포할 수 있는 공간을 제공한다.

버킷

S3에 파일이 저장되는 최상위 디렉토리
버킷의 이름은 각 리전에서 고유해야 한다
버킷 정책을 생성하여 액세스 권한을 부여할 수 있다

객체

S3에서 버킷에 담기는 파일
S3에서는 데이터를 저장할 때 키-값 형식으로 저장한다. 이 때, 값에는 실제 데이터를, 키에는 메타데이터를 저장해 각 객체를 고유하게 만드는 식별자 역할을 한다
객체는 고유한 URL 주소를 가지고, 그 주소를 통해 객체에 접근이 가능하다

3티어 아키텍처 배포 전략

클라이언트

S3을 이용해 제공
CDN 서비스인 CloudFront를 통해 더 빠르게 배포할 수 있다

서버

EC2를 통해 서버를 구동할 수 있다

DB

RDS

DNS

Route53

1개의 댓글

comment-user-thumbnail
2023년 7월 24일

감사합니다. 이런 정보를 나눠주셔서 좋아요.

답글 달기