세션 1: VPC (Virtual Private Cloud)
VPC 개요
[리전 > 가용 영역 (AZ) > VPC > 서브넷 > 인스턴스]
-리전(Region): AWS가 데이터 센터를 위치시킨 특정 지리적 영역.
-가용 영역(AZ): 하나의 리전 안에서 물리적으로 분리된 데이터 센터. 여러 AZ를 활용해 가용성과 안정성을 확보.
-VPC: 가상 네트워크로, 고객이 AWS 리소스를 배치하고 관리할 수 있는 공간.
-서브넷: VPC 내에서 더 세분화된 네트워크로, 공용(퍼블릭) 또는 비공용(프라이빗)으로 나뉨.
-인스턴스: 서브넷 내부에 배치. 퍼블릭 서브넷에는 주로 웹 서버와 같은 인터넷 접근이 필요한 인스턴스, 프라이빗 서브넷에는 데이터베이스 서버와 같은 외부와 격리된 인스턴스를 배치.
VPC 흐름 다이어그램
리전
└─ 가용 영역 (AZ)
└─ VPC (가상 프라이빗 클라우드)
├─ 퍼블릭 서브넷 (예: 웹 서버용)
└─ 프라이빗 서브넷 (예: 데이터베이스용)
├─ NAT 게이트웨이 (외부 트래픽을 위한)
└─ IGW 없음 (인터넷과 격리됨)
주요 구성 요소와 비유
-VPC: 아파트 단지.
-서브넷: 개별 아파트 동.
- 초록색: 퍼블릭.
- 파란색: 프라이빗.
-인터넷 게이트웨이 (IGW): 아파트 단지의 정문.
-라우팅 테이블: 어떤 서버와 서브넷이 연결되는지 알려주는 이정표.
퍼블릭 및 프라이빗 접근
- IGW는 퍼블릭 서비스를 가능하게 하며 라우팅 테이블에 매핑.
- 퍼블릭 서브넷은 IGW를 사용, 프라이빗 서브넷은 NAT 게이트웨이를 통해 외부와 통신. 퍼블릭은 IGW를 타고 프라이빗은 NAT를 탄다고 기억하면 쉬움.
CIDR과 주소 체계
- CIDR은 사용 가능한 IP 범위를 결정 (예: 192.0.0.1/16). 포함 가능한 IP 주소 개수는 CIDR 접두사 길이에 따라 달라짐 (예: /16은 약 65,536개 IP).
- CIDR to IP Range 계산기 등을 사용해 처음과 마지막 IP를 확인 가능.
멀티 VPC 구성
- 개발/운영 환경 분리나 팀별 운영을 위해 여러 VPC를 사용 (예: 팀 A, 팀 B).
- Peering Service를 사용해 VPC를 연결할 수 있지만, 1:1 연결만 지원. 다수의 VPC를 효율적으로 연결하려면 AWS Transit Gateway를 사용. 예를 들어, A<->B<->C 연결 대신 Transit Gateway를 통해 A, B, C를 모두 연결 가능.
보안 그룹과 NACL
- 보안 그룹(Security Group): 인스턴스 수준에서 동작하는 방화벽으로, 인바운드(들어오는 트래픽)와 아웃바운드(나가는 트래픽)를 관리.
- 예: 특정 IP에서만 접근 허용, 특정 포트만 열 수 있음.
- 실생활 비유: 아파트 각 집의 비밀번호.
- NACL(Network Access Control List): 서브넷 수준에서 동작하는 방화벽으로, 서브넷에 들어오고 나가는 트래픽을 제어.
- 예: 서브넷 전체에 대한 접근 제어 규칙 설정.
- 실생활 비유: 아파트 단지 정문 비밀번호.
- 주요 차이:
- 보안 그룹은 상태 저장(stateful)으로, 요청에 대한 응답 트래픽을 자동으로 허용.
- NACL은 상태 비저장(stateless)으로, 요청과 응답 트래픽을 각각 따로 설정해야 함.
세션 2: EC2 (Amazon Elastic Compute Cloud = Amazon EC2)
EC2 기본
- EC2란: AWS의 가상 서버 서비스.
- AMI (Amazon Machine Image): OS, 애플리케이션 서버 등 인스턴스를 실행하는 데 필요한 템플릿.
- 인스턴스 유형: 필요한 CPU 및 성능에 따라 선택.
인스턴스 특징
- 유저 데이터: 인스턴스 시작 시 실행할 명령어 또는 스크립트를 정의.
- 수명 주기: EC2 인스턴스의 시작부터 종료까지의 단계.
로드 밸런싱 및 확장
- 탄력적 로드 밸런서 (ELB): 트래픽을 여러 인스턴스에 분배.
- 유형: 애플리케이션 (URL, 헤더 포함) / 네트워크 (IP와 포트 기반).
- 오토 스케일링: 비정상 서버를 교체하고 자동으로 용량을 조절. 예를 들어, CPU 사용률이 80% 이상일 때 인스턴스를 추가하거나 비정상 상태를 감지하면 교체.
실습을 위한 주요 팁
- 오토 스케일링 그룹에는 시작 템플릿과 대상 그룹을 반드시 포함.
세션 3: 데이터베이스
Amazon RDS (관계형 데이터베이스 서비스)
- AWS에서 관리하는 데이터베이스 서비스.
- 설정 시 스토리지와 인스턴스 유형을 선택.
설정 단계
- 보안 그룹 생성 (다양한 곳에 재사용 가능).
- RDS 인스턴스 또는 클러스터 생성.
세션 4: 스토리지
Amazon S3 (단순 스토리지 서비스)
- 목적: 다양한 용도의 객체 스토리지.
- 핵심 개념: 데이터는 버킷에 저장되며, 버킷 이름은 AWS 전체에서 고유해야 함. 버킷 이름은 소문자만 사용할 수 있고, 특수 문자 및 공백은 허용되지 않음.
- 스토리지 클래스: 접근 필요성에 따라 선택 (예: 표준, 비정기 접근).
기타 스토리지 옵션
- EBS (탄력적 블록 스토어): EC2 인스턴스를 위한 블록 스토리지.
- EFS (탄력적 파일 시스템): 공유 파일 시스템으로 비정기 접근 옵션 제공.
- 백업: 데이터 복구를 위해 백업 유지.
'WEB' 카테고리의 다른 글
동기 vs 비동기 쉬운 설명 (예제 코드 포함) (0) | 2020.11.01 |
---|---|
WEB 개발 LEARNING SITE (0) | 2020.03.30 |
마크다운 문법, 마크다운 문법 직접 연습/적용해볼 수 있는 툴 추천 (0) | 2020.03.18 |
[session이란?] 예제, 개념, 메소드, 쿠키와의 차이점 (0) | 2020.03.06 |
Comments