애플리케이션의 구성
Application |
OS: Window/Linux |
Computing: CPU + RAM |
Storage: HDD/SSD |
Network: 랜카드/렌선 |
클라우드 컴퓨팅의 유형
클라우드 컴퓨팅 모델
IaaS (Infrastructure as a Service)
가상화의 가장 하위 단계 => 주로 하드웨어 리소스를 가상화
사용자는 가상 서버, 스토리지, 네트워크 등과 같은 기본적인 인프라를 이용하여 자체적으로 소프트웨어를 설치하고 관리
- 인프라만 제공 (Computing, Storage, Network만 제공)
- OS를 직접 설치하고 필요한 소프트웨어를 개발해서 사용
- 가상의 컴퓨터를 하나 임대하는 것과 비슷함
- 예) AWS EC2
PaaS (Platform as a Service)
가상화의 중간 단계 => 더 높은 수준의 추상화를 제공
사용자는 Application을 개발하고 배포하기 위한 플랫폼을 제공받음
=> 이를 통해 사용자는 서버, 스토리지, 네트워크와 같은 인프라에 대한 걱정 없이 개발 및 배포에만 신경 쓰면 됨
예를 들어 사용자는 PaaS를 사용하여 코드를 짜고 플랫폼에 업로드하여 실행할 수 있음
- 인프라 + OS + 런타임(기타 프로그램 실행에 필요한 부분)
- 개발자가 작성한 코드를 올려서 바로 실행 가능하도록 구성
- 예) Firebase, Google App Engine 등
SaaS (Software as a Service)
가상화의 최상위 단계 => 소프트웨어 자체를 가상화
사용자는 Application을 실행하기 위한 모든 인프라를 클라우드 공급 업체로부터 제공받음
=> 단순히 Application을 사용하고 관리만 하면 됨
- 인프라 + OS + 필요한 소프트웨어 모든 것을 제공
- 즉, 서비스 자체를 제공
- 별도의 세팅 없이 서비스만 이용
- 예) Gmail, DropBox, Office365 등
클라우드 컴퓨팅 배포 모델
공개형 (클라우드)
- 모든 부분이 클라우드에서 실행
- 낮은 비용
- 높은 확장성
혼합형 (하이브리드)
- 폐쇄형과 공개형의 혼합
- 폐쇄형에서 공개형으로 전환하는 과도기 혹은 폐쇄형의 백업으로 사용
온-프레미스 (폐쇄형)
- 높은 수준의 커스터마이징 가능
- 비싼 초기 비용 및 유지보수 비용
- 높은 보안
AWS 글로벌 인프라 구성
리전 (Region)
- AWS의 서비스가 제공되는 서버의 물리적 위치
- 전 세계에 지역(region) 별로 글로벌 데이터센터를 가지고 있음
- 각 리전에는 고유의 코드가 부여되며, 리전별로 사용 가능한 서비스가 다름
- 각 리전에는 여러 개의 가용 영역(AZ)을 가지고 있음
가용 영역 (AZ, Availability Zone)
- 리전의 하부 단위
- 한 개의 리전은 최소 3개 이상(최대 6개)의 가용 영역으로 구성
- 한 개의 리전은 최소 3개 이상(최대 6개)의 가용 영역으로 구성
- 각 AZ에는 한 개 이상의 독립적인 데이터 센터로 구성
- 각 AZ는 이중화된 전원, 네트워킹, 연결을 갖추고 있음
- 리전 간의 연결은 매우 빠른 전용 네트워크로 연결
- 각 AZs는 물리적으로 일정 거리 이상 떨어져 다른 곳에 위치함 (다만 모든 AZ는 서로 100km 이내의 거리에 위치)
- 각각 다른 네트워크와 전력원을 가지고 있음
- 여러 재해에 대한 대비 및 보안이 가능 (즉, 특정 가용 AZ에 문제가 발생해도 다른 AZ에 영향을 미치지 않음)
- 데이터 센터와 AZ는 고대영폭으로 연결
- 초저지연 네트워킹으로 연결되어 있고, 모두 함께 연결되어 하나의 리전이 됨
- 각 계정별로 AZ의 코드와 실제 위치는 다름
- 보안 및 한 AZ로 몰리는 현상을 방지
- 예) 계정 Test1의 AZ-A와 계정 Test2의 AZ-A는 다른 위치 (랜덤)
대규모 장애 발생 시 서비스 연속성 보장
- 하나의 같은 리전 안의 AZs는 고속 네트워킹이 가능하고 데이터들은 암호화되어 전송됨
- 만일 하나의 리전의 특정 AZ가 장애 발생 시 같은 region의 다른 AZ에서 서비스하여 무중단 서비스 가능
엣지 로케이션 (Edge Location)
- AWS의 CloudFront(CDN) 등의 여러 서비스들을 가장 빠른 속도로 제공(캐싱)하기 위한 거점
- 전 세계에 여러 장소에 흩어져 있음
- 리전, 가용영역과 별개로 AWS의 CDN 서비스인 CloudFront와 AWS의 DNS 서비스인 Route53의 캐시 서버를 의미함
각 지역마다 임시 데이터 저장소를 두고 사용자들은 근처에 있는 데이터 센터를 이용하며 사용자가 요청한 데이터를 일정 기간동안 저장해둠 => 속도 향상
CloudFront란? AWS에서 제공하는 CDN 서비스를 의미
CDN(Contents Delivery Network) 서비스는 콘텐츠를 보다 빠르게 전송하는 기술로, 속도 개선과 회선 비용 절감에 용이하다.
최초 요청 시에는 서버로부터 콘텐츠를 가져와 고객에게 전송하며, 동시에 CDN 캐싱 장비에 저장한다.
이후에는 CDN 캐싱 장비에 저장된 콘텐츠를 바로 전송하는 방식이다.
CDN 업체에서 지정하는 컨텐츠 만료 지점까지 호출이 없으면 주기적으로 삭제한다.
Cloud Front는 EC2나 S3 같은 서비스에서 사용할 경우, 가장 가까운 엣지로 라우팅되어 콘텐츠 전송 속도를 향상할 수 있다. 이를 통해 데이터, 동영상, 애플리케이션 및 API까지 전송 가능하다.
※ Static 캐싱 = 운영자가 콘텐츠를 미리 캐시 서버에 복사해서 요청 시 무조건 캐시 서버를 이용 가능
※ Dynamic 캐싱 = 운영자가 미리 복사하지 않아 콘텐츠가 없을 때 Origin 서버로부터 다운받아 전달하는 방식
글로벌 서비스 & 리전 서비스
서비스가 제공되는 지역의 기반에 따라 AWS 서비스를 분류
- 글로벌 서비스: 데이터 및 서비스를 전 세계의 모든 인프라가 공유
- CloudFront
- IAM
- Route53
- WAF
- 지역 서비스: 특정 리전을 기반으로 데이터 및 서비스를 제공
- 대부분의 서비스
- S3 (전 세계에서 동일하게 사용할 수 있으나 데이터 자체는 리전에 종속되어 리전 서비스로 분류)
ARN (Amazon Resource Name)
AWS의 모든 리소스의 고유 아이디
- 형식 "arn:[partition]:[service]:[region]:[account_id]:[resource_type]/resource_name/(qualifier)"
ex) arn:aws:s3:::test_bucket_test.txt - 맨 끝에 와일드카드(*)를 사용하여 다수의 리소스를 지정 가능
'개발 공부 > AWS' 카테고리의 다른 글
[AWS] SAA 공부 (3)-3 EC2 - 가격 정책 (0) | 2025.03.19 |
---|---|
[AWS] SAA 공부 (3)-2 EC2 - 보안 그룹 (0) | 2025.03.19 |
[AWS] SAA 공부 (3)-1 EC2 - EBS / Snapshots / AMI (0) | 2025.03.19 |
[AWS] SAA 공부 (3) EC2 (Elastic Compute Cloud) (0) | 2025.03.18 |
[AWS] SAA 공부 (2) - IAM (Identity and Access Management) (0) | 2025.03.17 |