EC2 (Elastic Compute Cloud)
클라우드에서 탄력적으로 컴퓨팅 자원을 제공해주는 서비스이다.
EC2는 가상 머신을 인터넷을 통해서 제공해주는 서비스이기 때문에 가상 서버 서비스라고 부른다.
또한 리소스를 재구성이 가능하다는 특징이 있어서, 인스턴스가 생성 된 이후에도 성능을 올리거나 내릴 수 있다. 이러한 특징 덕분에 쉽게 컴퓨팅 용량을 확장하거나 축소 할 수 있다.
EC2는 다양한 인스턴스 타입도 제공을 하며 사용한 만큼만 과금한다.
특징
- 가상 서버 서비스
- 재구성이 가능한 컴퓨팅 리소스
- 쉽게 확장/축소되는 컴퓨팅 용량
- 용도에 따른 다양한 인스턴스 타입 제공
- 사용한 만큼만 과금
EC2의 다양한 타입
M : 컴퓨팅, 메모리, 네트워크 리소스를 균형적으로 사용할 수 있는 범용 인스턴스 타입
C : 최고 성능의 프로세서를 제공해 성능 대비 저렴한 가격의 인스턴스 타입
R : 메모리 용량이 많이 필요한 애플리케이션을 위한 애플리케이션용 인스턴스 타입
T : 성능 순간 확장 가능한 인스턴스 타입
G,P : 그래픽 및 일반 목적의 GPU 컴퓨팅 애플리케이션을 위한 인스턴스
I : SSD 기반의 초고속 인스턴스 스토리지 인스턴스
D : 높은 디스크 처리량, 단위당 최소의 가격인 인스턴스
EC2인스턴스 표기법
인스턴스 패밀리 : 인스턴스의 종류를 의미한다.
인스턴스 세대 : 인스턴스의 세대가 높을수록 최신 세대 이며, 최신일수록 비용대비 성능이 우수하다.
인스턴스 크리 : 인스턴스의 크기를 의미하며 한단계가 커질때마다 비용 및 용량이 2배씩 증가된다.(micro, samll, medium, large)
EC2 과금 옵션 및 비용 최적화
On-Demand : 약정이 없는 가장 기본적인 요금제 신규 서비스의 경우 초기에 트래픽이 예측이 힘들기 때문에 해당 요금제를 쓰는 경우가 많다.
Reserved : RI라고 부르는데 인스턴스를 예약해서 사용하는 것으로 쉽게 약정할인이라고 생각 하면 된다.
Spot : AWS에서 남는 자원을 경매 방식으로 입찰 받아서 값싼 비용으로 사용할 수 있게 해주는 요금제이다. 단 낙찰을 못받으면 사용할 수 없다.
Elastic IP
다른 서비스와 유연하게 연동해서 사용할 수 있는 IP를 사용하는 서비스이다.
각 계정별 5개 까지만 할당 받을 수 있다.
Elastic IP를 사용하면 클라이언트에서 접속하는 IP주소의 변경 없이 서버의 장애를 극복할수 있다.
하나의 인스턴스에서 장애가 발생하면 다른 인스턴스로 연결을 해주기 때문이다.
Elastic IP는 인스턴스에 붙여놓으면 과금이 되지 않지만, 아무 인스턴스를 연결해 두지 않으면 시간당 0.005달러의 과금이 된다.
Security Group
보안그룹으로 하나 이상의 인스턴스에 대한 트래픽을 제어하는 가상의 방화벽 역활을 하는 그룹이다.
보안 그룹은 액세스를 거부하는 규칙은 생성할 수 없으며, 항상 허용하는 규칙만 생성을 할수 있다.
여기서 인바운드 규칙은 서버의 입장에서 안으로 들어오는 트래픽을, 아웃바운드 규칙은 서벅의 밖으로 나가는 트래픽을 의미한다.
보안 그룹은 연결된 인스턴스에 자동 적용 되며 여러 보안 그룹을 하나의 인스턴스에 연결을 할 수도 있다.
EBS(Elastic Block Store)
EC2에 연결해서(Attach) 쓸수 있는 블록 스토리지를 의미한다.
단일 가용영역내에 여러 서버에 걸쳐서 복제가 가능하다.
특정 시점에 대한 볼륨 스냅샷을 만들수 있다.(백업파일)
스냅샷은 객체 기반 스토리지(S3)에 저장되며, 복수 개의 가용영역에 걸쳐 자동으로 복제 된다.
한개의 EBS를 여러개의 EC2인스턴스에 연결하는 것은 불가능 하지만 반대로 EC2한개에 여러개의 EBS를 붙이는 것은 가능하다.(컴퓨터의 하드 디스크를 떠올리면 된다.)
관련 용어
볼륨(Volumn)
가장 기본적인 형태로 EC2에 바로 연결 가능
스냅샷(Snapshot)
볼륨의 특정 시점을 그대로 복사하여 저장한 파일
스냅샹을 이용하여 볼륨 및 AMI 생성 가능
AMI(Amazon Machine Image)
OS가 설치된 형태의 이미지 파일
AMI를 이용하여 EC2 인스턴스 생성 가능
IOPS(Input/Output Operations Per Second)
저장 장치의 성능 측정 단위
16KB 단위로 처리됨
추가 비용을 지불하여 더 높은 IOPS의 EBS를 생성 할 수 있음
Elastic Load Balancing
서버에 들어오는 클라이언트의 요청(트래픽) 즉, 부하를 여러대의 서버로 잘 분산시켜서 요청 시간내에 처리할수 있게 하는 서비스이다.
서버로 오는 요청들을 자신이 정한 알고리즘을 따라서 골고로 각 서버로 분산 시켜주는 서비스로 제한시간(timeout)내에 요청들을 처리할수 있게 해준다.
목적
- 성능 향상 : 많은 요청을 여러대의 서버가 나눠서 처리 하기 때문에 빠르게 응답을 줄 수 있음
- 안정성 향상 : 여러 EC2 인스턴스가 죽어도, 남아있는 EC2 인스턴스들이 클라이언트들의 요청을 처리해 줄 수 있음
- 서버 장애 예방 : EC2 인스턴스가 중간에 죽더라도 미리 계획 해둔 백업 플랜을 따라서 EC2 인스턴스를 더 띄어서 서버의 장애를 예방 할 수 있음
- 고가용성(High Availability, HA) : 장애가 나지 않고 지속적으로 서버가 잘 작동함(안정성 향상 및 서버 장애 예방의 기능이 있기 때문)
- 성능 향상 기반 제공 : 클라이언트의 요청이 갑자기 많아져도 EC2 인스턴스를 늘리고 부하를 분산 시킴으로써 성능을 향상 시킬 수 있음
관련 용어
- Load Balabcing 알고리즘
- 트래픽을 각 서버에 분배하는 방법
- Health Check
- 서버가 살아있는지 확인하는 것
- 만약 서버가 중단 되었다면 트래픽을 분배하지 않음
- Connection Draining(등록 취소 지연)
- 사용자의 요청을 처리중인 서버를 곧바로 삭제하지 못하도록 방지하는 기능
- 트래픽이 줄어서 늘렸던 인스턴스 중 몇개를 삭제하려고 할 때, 삭제될 인스턴스에 연결중인 사용자가 있을 수 있기 때문에 지정한 시간 만큼 기다린 이후에 인스턴스를 삭제
- Latency
- Load Balancer와 서버 사이의 지연 시간
ELB의 종류
ALB
Application Load Balancer, 요청 수준에서 작동하는 Load Balancer
HTTP 및 HTTPS 트랙픽을 사용하는 애플리케이션을 위한 유연한 기능이 필요할 때 사용한다.
또한 마이크서비스 및 컨테이너를 비롯한 애플리케이션 아키텍처를 대상으로 하는 고급 라우팅 및 표시 기능을 제공한다.
NLB
Network Load Balancer, 연결 수준에서 작동하는 Load Balncer
애플리케이션에서 초고성능, 대규모 TLS 옾로딩, 중앙 집중화 된 인증서 배포, UDP에 대한 지원 및 고정 IP주소가 필요한 경우에 사용
안전하게 초당 수백만개의 요청을 처리하면서도 극히 낮은 지연시간을 유지 할 수 있음
CLB
Classic Load Balancer, 과거에 사용하던 Load Balancer
EC2-Classic 네트워크에서 구축된 기존 애플리 케이션이 있는 경우 사용
Auto Saling
트래픽에 따라서 자동으로 EC2 인스턴스 개수를 조절해주는 기능
서버의 최대 용량은 고정이 되었지만, 서버로 들어오는 트래픽의 양은 고정되어 있지 않다.
따라서 갑자기 트래픽이 몰려오게 되면, 서버 용량 초과로 인해 서버에 장애가 발생해 고객에게 정상적인 서비스를 제공할 수 없는 상태가 된다.
이를 방지하기 위해 서버의 최대 용량을 늘릴수도 있지만 평소 낭비되는 자원이 많아져 비용적인 측면에서 굉장히 비 효율적이다.
이러한 상황에 안정적으로 서비스를 제공하면서 자원이 낭비되지 않도록 하기 위해 등장한 것이 Auto Scaling이다.
Auto Scaling은 ELB와 함께 사용 된다.
기본 실행
클라이언트의 요청이 ELB로 들어오게 되면 로드밸런서에서 ASG(Auto Sacliing Group)으로 부하를 분산 시킨다.
ASG는 Amazon Machine Image를 필요로 하고, CloudWatch라는 클라우드 모니터링 서비스를 사용해서 서버의 용량을 늘릴지 줄일지 결정한다.
이에 따라 EC2 인스턴스를 시작하기 위한 시작구성을 설정해야 한다.
현재는 시작 템플릿(Launch Templete)을 주로 사용한다.
RDS(Relational Database Service)
관계형 데이터 베이스를 제공해 주는 서비스로 DB와 관련된 모든 작업들을 제공한다.(완전 관리형 관계형 데이터베이스, Fully Managed Relational Database)
특징
- ORACLE, MySQL, PostgreSQL, MariaDB, Aurora등 다양한 DB 엔진을 제공한다.
- DB이중화 작업이나 Read Replica todtjdeh thstnlqrp gkf tn dlTdma
- 인스턴스 확정을 손쉽게 할 수 있음
RDS를 사용해야 하는 이유
DBA(Database Administrator)가 하루에 하는 일을 알아보면 알 수 있다.
일반적으로 데이터베이스 설치, 업그레이드, 마이그레이션, 백업 및 복구, 보안설정, 스토리지 용량 계획 세우기, 성능 모니터링 및 튜니, 문제해결등 많은 것을 해야하는데 RDS는 완전관리형 관계형 데이터 베이스이기 때문에 데이터 베이스를 관리하는데 더 적은 시간과 노력이 필요하다.
RDS의 기본 구조
'M'이라고 쓰여져 있는 Master DB인스턴스(Primary DB)가 있고 이를 통해서 읽고 쓰기 작업이 이루어 지며 다른 가용 영역에 S(Stanby DB)가 있다. 이 S는 Master DB와 동기 복제 되며 DB 이중화 작업을 위해서 사용된다.
R은 Read Replica로 읽기 전용 복제본이고 데이터를 쓰는 용도가 아닌 읽기만 하는 용도로 사용하는 인스턴스 이다.
이때 R은 다른 리전에 존재 할 수 있고 M과는 비동기 복제가 이루어 진다.
이러한 구조에서 M에서 장애가 발생하면 이를 극복하기 위한 Failover가 이루어져 S가 Master DB 역할을 하게 된다.
AWS Storage Services
파일 스토리지(File Storage) : EFS
데이터를 파일로 관리하는 스토리지로 우리가 흔히 보는 스토리지가 해당 종류의 스토리지이다.
파일 스토리지에는 파일 시스템이라는 것이 존재하며 그 안에는 다양한 경로의 파일들이 존재하게 된다.
특징
- 파일들이 계층으로 나눠져서 구성됨 (Window나 Mac OS에서 폴더내에 파일이 존재하는 것처럼)
- 파일 시스템을 통해서 데이터를 파일단위로 저장함
- 파일의 일부분만 수정이 가능
- 공유 파일을 액세스 하거나 파일 시스템이 있어야 하는경우 적합
- 대표적으로 NAS, 대규모 콘텐츠 레포지토리, 미디어 스토어, 사용자 홈 디렉토리등에 사용 됨
블록 스토리지(Block Storage) : EBS
데이터를 블록을 관리하는 스토리지로 여기서 블록은 저장공간을 나누는 단위이다.
특징
- 데이터를 작은 블록 단위로 저장하며, 각 블록은 고유한 주소 또는 식별자를 가짐
- 가상 서버에 프로비저닝 되기 때문에 엄청나게 낮은 지연시간을 가지는데 이로인해 고성능 워크로드에 사용하기 적합
- 주로 데이터베이스 시스템, 가상머신, 클라우드 스토리지 등에서 사용됨
- 메타데이터 없이 순수한 데이터 블록만을 저장
객체 스토리지(Object Storage) : S3
데이터를 객체로 저장하는 스토리지 이다.
객체는 무수히 많아질수도 있으면 1개만 존재 할 수도 있다.
각 객체는 아이디, 데이터, 메타데이터를 포함하고 있다.
특징
- 방대한 확장성과 메타데이터를 가지고 있음
- 규모와 유연성이 필요한 애플리케이션을 구축하는데 적합
- 기존 데이터 스토어를 가져오는데에 사용이 가능해 분석이나 백업 또는 아카이브 목적으로 사용할 수 있음
- 데이터를 일부분만 수정하는 것은 불가능 하며 데이터 전체를 덮어 써야 함
S3 특징
- 무제한 파일 저장 스토리지
- URL을 통해 손쉽게 파일을 공유 가능
- 높은 내구성(99.999999999%)
- 사용한 만큼만 지불(GB당 과금)
- 정적 웹사이트 호스팅 가능
- 다양한 AWS의 서비스들과의 통합을 지원해줌
- 객체 스토리지 특성상 수정이 잘 일어나지 않는 최종 파일을 저장하는 용도로 사용됨
S3 관련 용어
- Bucket : Object를 담는 최상위 단위, 이름과 개수에 제한이 있음
- Object : Bucket에 담는 데이터이 단위
- Metadata : Object에 대한 여러가지 정보를 담고 있는 데이터
- Policy : Bucket, Object에 대한 접근을 통제하는 권한 정보
S3 사용 방법
- Buket 생성
- HTTP로 Bucket에 파일 업로드(Object로 저장)
- Object에 권한 설정
- HTTP로 Buket에서 파일 다운로드
CloudFront
CDN(Content Delivery Network)서비스로 컨텐츠 전송 네트워크 서비스 이다.
해당 서비스를 이용하면 콘텐츠를 전세계로 빠르게 전송 할 수 있다.
특징
- CDN 서비스
- 컨텐츠(이미지, HTML)를 캐싱하여 성능 가속
- Edge Loation을 통해 전세계로 전송
- 글로벌 고속 백본 네트워크를 확보
- AWS서비스와의 데이터 전송이 무료
- DDoS방어 무료 제공
기본용어
- 배포(Distribution)
- 가장 기본적인 단위
- 각 배포는 고유의 도메인을 가지게 됨
- Route53을 이용, 자신이 구입한 도메인에 연결도 가능
- 오리진(Origin)
- 원본 파일을 가져오는 위치
- 기본설정 : S3
- 커스텀 설정 : EC2, ELB, 외부 서버
- 원본 파일을 가져오는 위치
Route53
AWS 서비스들과 쉽게 연동하여 사용할 수 있는 DNS
클라이언트의 요청을 EC2, ELB, S3, CloudFront등 AWS에서 실행되는 인프라에 효과적으로 연결해서 사용할 수 있다.
또한 AWS 외부의 인프라로 라우팅 하는데도 사용 가능하다.
기본개념
- 호스팅 영역(Hosted Zone)
- Public Hosting : 인터넷에서 트래픽을 라우팅하고자 하는 방법을 지정하는 레코드를 포함하는 것
- Privit Hosting : VPC에서 트래칙을 라우팅 하고자 하는 방법을 지정하는 레코드를 포함 한 것
- 레코드(Record) : 도메인과 연결된 IP주소
- DNS 쿼리 : 도메인 이름을 IP주소로 변환하여 요청
- DNS 장애 조치 : Route 53에 연결 된 서버 또는 ELB에 장애가 발생할 경우, 다른 대체 위치로 라우팅 해주는 기능
레코드 유형
- A(address) : IPv4주소
- AAAA(Address) : IPv6주소
- CNAME(Canonical Name) : 별칭 레코드
- MX(Mail eXcahnge) : 이메일을 전달하기 위한 레코드
- NS(Name Server) : 네임서버 주소를 담고 있는 레코드(자동생성 되며 마음대로 변경하면 안됨)
- SOA(Start of Authority) : 권한 시작 레코드, 도메인에 대한 기본 DNS 정보 식별(자동생성, 마음대로 변경하면 안됨)
라우팅 방식
- 지연 시간 기반 라우팅(Latency based Routing) : 지연 시간이 가장 낮은 리전의 IP주소로 라우팅 하는 방식
- 가중치 기반 라우팅(Weighted based Routing) : IP 주소나 ELB DNS주소에 각각 가중치를 부여하여 가중치에 따라서 라우팅을 하는 방식
- 지역 기반 라우팅(Geo Routing) : 지역에 따라서 각기 다른 IP주소로 라우팅 하는 방식
IAM(Identity and Access Management)
AWS 리소스에 대한 권한을 관리하는 서비스
특징
- AWS 서비스와 리소스에 대한 액세스를 관리하기 위한 서비스로 IAM 사용자 및 그룹을 만들어서 관리
- 권한을 사용해 AWS 리소스에 대한 액세스를 허용 및 거부 할 수 있음
- 추가 비용 없이 제공 됨
- Key를 발급 함으로써 AWS 외부에서 API로 접근할 수 있음
- Root계정 노출 없이 사용자에게 제한적인 권한을 부여하고 싶을 때 사용
- Programmatic Acess : AWS SDK를 이용하여 AWS서비스에 API로 접근
- AWS Management Console Acess : 브라우저를 통해 전용 Console login link로 접속하는 방식으로 접근
기본개념
- User : AWS 서비스 사용자
- Group : User들의 집합
- Role : AWS의 작업과 리소스에 대한 액세스를 부여하는 권한 세트
- Policy : 특정 AWS 요소의 특정 기능을 사용하기 위한 정책
- Permission : Policy들의 집합
CloudWatch
클라우드 모니터링 서비스
실시간 로그, 지표 및 이벤트 데이터를 자동화된 대시보드로 수집하고 이를 시각화 하여 인프라 및 애플리케이션 유지 관리를 간소화 해줌
특징
- AWS리소스 및 애플리케이션 모니터링 서비스
- 강력한 시각화 도구 제공
- 사전에 지정된 값에 따라 알림 발송 가능
- 로그 및 지표에서 도출된 이사이트를 통해 운영 문제 해결
DynamoDB
AWS에서 제공하는 매우 빠르고 확장 가능한 완전관리형 클라우드 NoSQL데이터 베이스 서비스
특징
- 완전 관리형 클라우드 NoSQL 데이터 베이스
- 규모와 관계없이 10ms 미만의 지연시간을 보장
- 유연한데이터 모델, 용량 제한 없음
- 안정적인 성능
- 처리 용량 자동 조정 가능
- 용량과 읽기/쓰기 유닛에 대하여 과금
- Amazon DynamoDB Acelerator(DAX)
- 가용성이 뛰어난 완전관리형 인 메모리 캐시
- 초당 수백만개의 요청에도 DynamoDB 응답 시간을 밀리초에서 마이크로초로 단축할 수 있음
Read방식
- Eventually Consistent Read(기본값)
- 최근 완료된 쓰기 작업의 결과를 반영하지 않을 수 있음
- 부실데이터가 일부 포함될 수 있음
- 잠시 후 읽기 요청을 반복하면 응답이 최신 데이터를 반환
- Strongly Consistent Read
- 성공한 모든 이전 쓰기 작업의 업데이트를 반영하여 가장 최신 데이터로 응답
- 네트워크 지연 또는 중단이 발생한 경우에 사용이 어려울 수 있음
과금 방식
- 스토리지 요금 : GB당 월 0.27달러
- 읽기/쓰기 용량 유닛 : 읽기 요청 유닛은 100만건 당 0.271달러, 쓰기 요청 유닛은 100만건단 1.3556달러
기본구성
- Table : Item의 집합
- Item : Attribute의 집합
- Attribute
- key-value 방식의 데이터
- key는 문자열
데이터 타입
- 스칼라 형식
- Number(N) : 양수, 음수 또는 0, 최대 38자리까지 지원
- String(S) : UTF-8 이진 인코딩을 사용하는 유니코드
- Binary(B) : 압축 텍스트, 암호화 데이터, 또는 이미지 같은 모든 이진수 데이터 저장 가능
- Boolean(S, 0 or 1) : True or False
- Null(NULL) : 알려지지 않았거나 정의되지 않은 상태의 속성
- 문서형식(내포 속성이 있는 복잡한 구조를 표현
- LIst(L) : 순서가 지정된 값 모음을 저장 할 수 있음
- Map(M) : 정렬되지 않은 이름-값 쌍의 모음을 저장할 수 있음
- 다중 값 형식(여러 스칼라 값을 표현
- String Set(SS)
- Number Set(NS)
- Binary Set(BS)
파티션 및 키
파티션
DynamoDB가 데이터를 저장하는 곳으로 SSD로 백업되는 테이블용 스토리지 할당을 의미하며, 하나의 AWS리전내에 여러 가용영역에 자동으로 복제 됨
키
Table내에서 각 Item을 구분하는 고유 식별자
- 기본키(Primary Key)
- Table내에서 각 Item을 구분하는 고유 식별자
- 단순 기본 키 : 파티션 키만 사용
- 복합 기본 키 : 파티션 키와 정렬 키를 함께 사용
- 파티션 키(Partition Key)
- 내부 해시 함수에 대한 입력으로 파티션 키 값을 사용
- 출ㄹ력에 따라 항목을 저장할 파티션이 결정 됨
- 정렬 키(Sort Key)
- 파티션 키가 동일한 모든 항목들을 정렬한 키 값
보조 인덱스
DynamoDB테이블에서는 하나 이상의 보조 인덱스를 생성 할 수 있으며 2가지의 보조 인덱스가 있다.
- 로컬 보조 인덱스(Loal Secondary Index, LSI) : 테이블과 파티션 키는 동일하지만 정렬 키는 다른 인덱스, 테이블에 정렬 키를 추가로 하나더 만든다고 생각하면 됨
- 글로벌 보조 인덱스(Global Secondary Index, GSI) : 파티션 키 및 정렬 키가 테이블의 파티션 키 및 정렬 키와 다를 수 있는 인덱스
테이블당 퇴대 20개의 글로벌 보조 인덱스와 5개의 로컬 보조 인덱스를 정의 할 수 있다.
조회 방식
Query
기본 키 값을 기반으로 항목을 찾는 방식으로 복합 기본키가 있는 테이블 또는 보조인덱스를 쿼리 할 수 있다.
파티션 키 속성의 이름과 해당 속성의 단일 값을 제공해야하며, 해당 파티션 키 값을 갖는 모든 항목을 반환한다.
선택적으로 정렬 키 속성을 제공하고, 비교 연산자를 사용하여 검색 결과의 범위를 좁힐 수 있다.
Scan
테이블 또는 보조 인덱스의 모든 항목을 읽어온다.
테이블이나 인덱스에 속한 항목의 데이터 속성을 모두 반환한다.
Projection Expression 파라미터를 사용하면 일부 속성만 가져올 수 있다.
항상 결과 집합을 반환하며 일치 항목이 없으면 비어있는 집합을 반환한다.
최대 1MB의 데이터를 가져올 수 있으며 옵션으로 필터 표현식을 적용하면 반환되는 결과 범위를 좁힐 수 있다.
데이터를 조회할때는 되도록이면 Query를 사용하는 것이 좋으며 Scan은 느리고 비싸기 때문에 웬만하면 사용하지 않는것이 좋다.
Lambda
서버리스 컴퓨티 서비스로, 다양한 애플리케이션을 실행하고 관리하는데 사용된다.
특징
- 서버리스 컴퓨팅 서비스이다.
- 이벤트 기반실행 : HTTP 요청, 데이터 베이스 변경등의 이벤트에 대한 리액션을 정의 할 수 있음
- 다양한 프로그래밍 언어 지원 : 다양한 프로그래밍 언어를 지원하며 코드의 여러 버전을 관리하고 특정 버전으 배포하는 기능도 제공
- 비용이 효율적 : 필요할 때만 실행되며 실행시간에 따라 비용이 청구됨 ,트래픽이 자주 변하는 애플리케이션에 이상적
- 순간적 확장성 : 자동으로 인스턴스를 관리하기 때문에 Auto Scaling등의 확장성을 위한 설정을 하지 않아도 됨
- 다양한 클라우드 서비스와 통합 : 다양한 클라우드 서비스를 통합하여 다양한 기능을 활용할 수 있음
- 실행 역할(Role)을 통한 액세스 권한 관리 : 액세스 권한 관리를 통해 다른 AWS리소스와 안전하게 상호작용하도록 만들 수 있음
Serverless
서버리스 컴퓨팅을 줄여서 부르는 말로 서버가 없는 컴퓨팅을 의미 한다.
내가 관리할 서버가 없다는 말이다.
특징
- 서버 관리의 대한 부담이 없다 : 개발자는 코드 작성에만 집중할 수 있음
- 이벤트 기반실행 : HTTP 요청, 데이터 베이스 변경등의 이벤트에 대한 리액션을 정의 할 수 있음
- 비용이 효율적 : 필요할 때만 실행되며 실행시간에 따라 비용이 청구됨 ,트래픽이 자주 변하는 애플리케이션에 이상적
- 순간적 확장성 : 자동으로 인스턴스를 관리하기 때문에 Auto Scaling등의 확장성을 위한 설정을 하지 않아도 됨
- 작은코드 단위 : 모듈화가 쉽고 테스트가 편함
- 다양한 클라우드 서비스와 통합 : 다양한 클라우드 서비스를 통합하여 다양한 기능을 활용할 수 있음
'BootCamp(OZ Coding School)' 카테고리의 다른 글
[AWS] 클라우드 컴퓨팅과 AWS 실습 (0) | 2024.05.14 |
---|---|
[miniProject] 심리테스트 웹페이지 프로젝트를 분석해보자! (0) | 2024.05.08 |