1. AWS
클라우드 컴퓨팅♨
- 온디맨드로 서비스 엑세스
- 필요에 따라 컴퓨팅 리소스 프로비저닝(언제든 즉각 사용할 수 있도록 보장)
- 사용한 만큼만 요금 지불
- 자본적 지출 → 운영비용, CAPEX에서 OPEX로
Cloud Service Provider (CSP)
AWS, Google GCP, MS Azure, Naver cloud
CAPEX (Capital expenditures)
자본적 지출, 미래의 이윤을 창출하기 위해 지출된 비용
OPEX(Operating Expenditure)
업무지출 또는 운영비용, 갖춰진 설비를 운영하는 데 드는 제반 비용
클라우드 주요 이점♨
- 종량제(온디맨드)
- 거대한 규모의 경제로 얻게 되는 이점(scale merit)
- 용량 추정 불필요
- 속도 및 민첩성 향상
- 비용절감 목표 실현
- 몇 분만에 전 세계에 배포
클라우드 서비스 모델♨
1. IaaS(Infrastructure-as-a-Service) / 서비스형 인프라
-
IaaS 서비스 제공 업체(CSP)는 인터넷을 통해 인프라 자원을 제공
* 인프라 자원: 네트워크, 스토리지(저장 공간), 서버(+가상화) -
IaaS 사용자는 클라우드 콘솔 또는 API를 통해 인프라를 제어하고, 애플리케이션, 데이터, 운영체제(O/S), 미들웨어 및 런타임을 직접 처리
- 사용자는 IT 자원에 대해 가장 높은 수준의 유연성과 관리 자유도를 가짐
2. PaaS(Platform-as-a-Servicec) / 서비스형 플랫폼
- 핵심 인프라를 호스팅하고, 운영체제와 미들웨어까지 제공
* 미들웨어: 운영 체제와 애플리케이션 사이에서 운영 체제가 제공하지 않는 기능을 제공하는 소프트웨어
ex. WAS(웹 애플리케이션 서버) - 사용자는 애플리케이션 개발/배포, 서비스 관리를 담당
- 사용자는 인프라뿐 아니라 개발에 필요한 플랫폼 관리에 신경 쓰지 않고 웹/앱 개발에 집중할 수 있음
3. SaaS(Software-as-a-Service) / 서비스형 소프트웨어
- CSP가 인프라(IaaS)와 미들웨어(PaaS) 뿐 아니라 애플리케이션 형태로 완전한 소프트웨어를 제공
* 애플리케이션: 응용 프로그램, 최종 사용자에게 제공되는 완전한 소프트웨어 솔루션 - 사용자는 웹 브라우저 또는 앱을 통해 소프트웨어에 접속
- 사용자는 완전한 솔루션을 이용하기 때문에, 서비스 유지/관리에 가장 효율적이지만 보안 및 성능면에서 제어할 수 있는 부분이 적음
리전 선택
3개 이상의 가용 영역(AZ) 클러스터
- 지연 시간(latency)
- 요금
- 서비스 가용성
- 데이터 규정 준수
가용 영역(AZ)
하나 이상의 데이터 센터(DC)
data를 sync로 복제
엣지 로케이션(Edge Location)
WS와 같은 클라우드 서비스 제공자가 전 세계적으로 배포한 데이터 센터 위치 중 하나
사용자와 가까운 물리적 위치에 콘텐츠를 저장하거나 요청을 처리함으로써, 네트워크 지연(latency)을 줄이고 빠른 응답을 제공
POP(Point of Presence)
인터넷 네트워크나 클라우드 서비스 제공자가 데이터를 전송하거나 수신하기 위해 사용하는 물리적 위치
엣지 로케이션의 물리적 구현체, 일반적으로 엣지 로케이션과 동일한 개념
캐싱
오리진 서버에 있는 데이터를 복제해서 임시로 가져다 놓음
자주 요청되는 데이터를 미리 저장해 두었다가, 이후 요청 시 더 빠르게 제공하는 기술
엣지 로케이션에서 사용자 요청 데이터를 저장해, 원본 서버로의 요청 횟수를 줄이고, 사용자에게 더 빠르게 콘텐츠를 제공
IAM (Identity and Access Management)
AWS 계정 및 리소스에 대한 보안 엑세스를 관리할 수 있는 웹 서비스
- 인증(authentication)
- 인가(authorization)
AWS 관계자: 최소 권한의 원칙을 지켜야 함, 사용자, 리소스에 대해서, 보안 때문
- IAM root 사용자: 최고 권한의 원칙, 자격 증명
- IAM 사용자
- IAM 정책
- IAM 역할: 누가 언제 얼마동안 그 일을 하는지 임시로 자격 부여
IAM 기능
- 전 세계에서 사용 가능
- AWS 서비스와 통합
- AWS 계정에 대한 공유 엑세스
- MFA
- 자격 증명 연동
- 무료 사용
- 랩 1 - AWS Identity and Access Management 소개
2. AWS 컴퓨팅
AWS 컴퓨팅 서비스
- 인스턴스(가상 머신)
- 컨테이너
- 서버리스: 사용자가 서버를 관리할 필요 없음
서비스 (Service)
사용자가 특정한 작업을 수행할 수 있도록 제공하는 기능이나 플랫폼
인스턴스 (Instance)
서비스에서 생성된 구체적인 실행 단위, 사용자가 생성하고 관리할 수 있는 실제 작동하는 개별적인 단위
리소스 (Resource)
서비스와 인스턴스를 구성하는 요소, 클라우드에서 할당되거나 사용되는 물리적/가상적 자원
EC2(Elastic Compute Cloud)
: EC2 서비스 → 인스턴스 만듦 → 리소스
- 안전하고 크기 조정이 가능한 컴퓨팅 용량
- 몇 분 내에 프로비저닝 및 시작 가능(완전 즉각적인 것은 아님)
- 시간/초 단위로 용량 사용량에 해당하는 비용 지불
Amazon Machine Image(AMI)
EC2 인스턴스 시작할 때 먼저 AMI 지정
운영체제, 스토리지 매핑, 아키텍처 유형, 시작 권한 등을 포함
EC2 인스턴스 유형
- 범용
- 컴퓨팅 최적화
- 메모리 최적화
- 가속 컴퓨팅
- 스토리지 최적화
가상 머신 (Virtual Machine, VM)
물리적인 하드웨어를 소프트웨어적으로 가상화하여 독립적인 운영체제를 실행할 수 있는 환경을 제공
- 완전한 OS 포함: 자체 운영체제(Guest OS)
- 강력한 격리성: 물리적 하드웨어와 독립적으로 동작
- 하이퍼바이저: 물리적 하드웨어를 가상화하여 여러 VM을 실행할 수 있도록 관리하는 소프트웨어
- ex. VMware, Hyper-V, KVM
- +) 강력한 격리성, 다양한 OS 지원, 높은 호환성
- -) 무겁고 자원 소모가 큼, 느린 부팅 시간
→ EKS: Kubernetes 애플리케이션 실행 및 크기 조정
컨테이너 (Container)
애플리케이션 코드와 종속성을 패키징할 수 있는 표준 단위, 어떤 운영 체제에서나 실행 가능
Docker 엔진
- 호스트 OS 공유: 커널 공유
- 컨테이너 런타임 사용
- 경량화와 빠름
- ex. Docker, Podman
- +) 빠른 배포, 경량화, 이식성, 확장성
- -) 낮은 격리성, 특정 환경 종속성
→ ECS: 컨테이너식 애플리케이션 실행 및 크기 조정
서버리스 컴퓨팅
- 서버를 프로비저닝 또는 관리할 필요 없음
- 사용량에 따른 크기 조정
- 사용한 리소스만큼 비용 지불
- 가용성 및 내결함성 기본 제공
→ Fargate, Lambda
- 랩 2 - Amazon EC2 인스턴스에서 VPC 생성 및 웹 애플리케이션 시작
3. AWS 네트워킹
VPC (Virtual Private Cloud)
VPC 생성 시 필요한 정보
- 리전
- VPC 이름
- VPC의 IP 주소 범위
VPC 생성 후 서브넷 생성
서브넷
AWS 리소스를 저장하는 VPC 내 더 작은 네트워크
- 퍼블릭) 인터넷에 연결되도록 라우팅
- 프라이빗) 인터넷에 연결되지 않도록 라우팅 → 일반적
클래스 없는 도메인 간 라우팅 (CIDR)
VPC 생성 시 VPC용 IPv4 주소의 범위를 CIDR 블록으로 지정
IGW (Internet Gateway)
VPC에서 인터넷과의 연결을 제공하는 구성 요소
- 양방향 연결
: VPC 내부 리소스에서 외부 인터넷으로의 트래픽과, 외부 인터넷에서 내부로 들어오는 트래픽을 모두 허용 - 고가용성
- 라우팅
NAT (Network Address Translation)
내부 프라이빗 네트워크의 리소스가 인터넷에 액세스할 수 있도록 하면서도, 외부에서 내부 네트워크로 직접 접근하지 못하도록 보호하는 기술
- outbound만 가능, 유료 서비스
- NAT 게이트웨이
- 프라이빗 서브넷 지원
- NAT 인스턴스
Load Balancer
로드 밸런서는 여러 서버에 걸쳐 네트워크 트래픽을 분산하여 애플리케이션의 성능과 가용성을 향상
- inbound 가능
- 트래픽 분산
- 스케일링 지원
라우팅 테이블
사용자 지정 라우팅 테이블에 경로 추가
VPC의 모든 서브넷은 라우팅 테이블과 연결
네트워크 엑세스 제어 목록 (NACL)
서브넷의 인바운드 및 아웃바운드 네트워크 트래픽을 안전하게 제어하는 가상 방화벽
NACL 하나에 여러 서브넷 연결 가능, 서브넷은 NACL 하나에만 연결 가능
보안 그룹
인스턴스의 인바운드 및 아웃바운드 네트워크 트래픽을 안전하게 제어하는 가상 방화벽
VPN♨
공용 네트워크(인터넷)를 통해 보안이 강화된 개인 네트워크를 설정하는 기술
- 가상 네트워크
- 암호화
- 보안성
- +) 보안 강화, 프라이버시 보호, 검열 및 차단 우회, 원격 근무 지원
- -) 속도 저하, 신뢰 문제, 비용
OSI 7 Layer♨
4. AWS 스토리지
스토리지(Storage)
컴퓨터에 데이터를 저장하는 저장소의 역할, 하드디스크와 동일한 역할
스토리지 종류♨
1. DAS (Direct Attached Storage)
유선으로 외장하드처럼, PC나 서버에 다이랙트로 꽂아서 사용하는 데이터 스토리지
서버와 하드웨어를 1:1로 연결
하드디스크를 여러개 장착가능한 서버의 외장하드
- +) 속도 빠르고 확장 쉬움
- -) 연결 수에 한계 있음
2. NAS (Network Attached Storage)
와이파이나 랜으로 무선의 클라우드처럼 사용(DAS+네트워크)
하드디스크를 여러개 장착가능한 데이터 스토리지
- +) PORT수 제한이 없어 확장성과 유연성, 경제적 유리, 설치/유지보수 용이
- -) 접속증가시 성능저하, 전송속도 DAS보다 느림, 보안 취약(파일시스템 공유), 백업 어려움
3. SAN (Storage Area Network)
Fiber channel(광채널) switch로 연결한 고속데이터 네트워크
저장장치를 향상시켜 장치가 로컬 연결장치로 서버의 운영 체제에 표시, 전용 광채널 스위치로 빠른 속도 연결 유지
- +) DAS와 NAS의 단점보완: 서버당 접속 스토리지 수 제한 해결, 전용 광채널로 빠른속도의 연결을 유지
- -) 파일시스템 공유 불가, 별도 SAN 스위치 필요
스토리지 유형
1. 블록 스토리지
데이터가 크기가 고정된 블록으로 디바이스에 저장
파일 업데이트 시, 파일의 조각이 업데이트
- EC2 instance store
휘발성(저장X), 임시 스토리지 - EBS(Elastic Block Store)
가용 영역과 연결된 분리 가능 스토리지, 볼륨 장치- Solid State Drive(SSD) 볼륨 → 이제 저렴해져서 주로 사용
- Hard Disk Drive(HDD) 볼륨 → 높은 처리량 성능이 필요한 대규모 스트리밍 워크로드
스토리지 시스템 성능 지표
- IOPS(Input/Output Operations Per Second)
스토리지가 1초 동안 처리할 수 있는 입출력 횟수
IOPS = 1 / (평균 접근 시간 + 데이터 전송 시간) - 처리량(Throughput)
단위 시간당 처리되는 데이터의 양
대규모의 순차적 읽기/쓰기 작업이 얼마나 빠르게 처리되는지
2. 파일 스토리지
사용자, 애플리케이션, 서비스가 공유 파일 시스템의 데이터에 엑세스할 수 있음
- EFS
AWS 클라우드 서비스 및 온프레미스 리소스와 함께 사용되는 확장 가능한 파일 시스템, 공유 - FSx
클라우드 내 네트워크 연결 스토리지
완벽한 기능 및 완전 관리형, 고가용성 및 데이터 보호, 비용 효율적, 하이브리드 지원
3. 객체 스토리지♨
파일이 객체(데이터, 메타데이터, 객체 키: 고유 식별자)로 저장
파일 업데이트 시, 전체 파일 객체가 업데이트
- S3(Simple Storage Service)
인스턴스에 서비스를 연결하는 대신 웹을 통해 데이터 검색
확장성 뛰어나고 데이터도 제한없이 저장 가능 - S3 보안
S3 엑세스 권한을 부여하려는 경우,- IAM 정책, IAM 역할 연결
- 버킷 정책
- S3 스토리지 클래스
아래 기준에 따라 6가지로 분배
- 활성 데이터
- 자주엑세스하지 않는 데이터
- 아카이브된 데이터
- S3 버전 관리
- 객체를 업로드할 때마다 객체의 새 버전 생성
- 버킷수준에서 사용하도록 설정됨
- 기본적으로 사용 중지
5. 데이터베이스
데이터베이스
이점
- 목적별 DB
- 규모에 따른 성능
- 완전관리형
- 보안 및 고가용성
유형
- 관계형
- 키-값
- 인-메모리
- 문서
- 와이드 컬럼
- 그래프
- 시계열
- 원장
관계형 DB
- 복잡한 SQL 사용 가능
- 중복성 감소
- 널리 알려진 형식
- ACID 원칙
온프레미스 DB / EC2 인스턴스 / 관리형 DB
RDS(Relational Database Service)
고객이 AWS 클라우드에서 확장성이 뛰어나고 안전한 관계형 데이터베이스를 생성하고 관리할 수 있도록 지원하는 관리형 웹 서비스
SPOF♨
6. 모니터링, 로드 밸런싱 및 크기 조정
- 랩 3 - Amazon S3 버킷과 DynamoDB 테이블을 사용하도록 웹 애플리케이션 구성
- 랩 4 - 애플리케이션 고가용성 구성
'AWS 공인교육' 카테고리의 다른 글
41일차) 2025-02-26(공인교육6. Architecting on AWS) (0) | 2025.02.24 |
---|---|
40일차) 2025-02-25(공인교육5. Architecting on AWS) (0) | 2025.02.24 |
39일차) 2025-02-24(공인교육4. Architecting on AWS) (0) | 2025.02.24 |