본문 바로가기
WEB

AWS 기초 교육 정리

by sjs_2215 2024. 12. 20.

https://miro.medium.com/v2/resize:fit:1200/1*DGp9FSicaRJOs8IWFPxKag.png


세션 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에서 관리하는 데이터베이스 서비스.
  • 설정 시 스토리지와 인스턴스 유형을 선택.

설정 단계

  1. 보안 그룹 생성 (다양한 곳에 재사용 가능).
  2. RDS 인스턴스 또는 클러스터 생성.

세션 4: 스토리지

Amazon S3 (단순 스토리지 서비스)

  • 목적: 다양한 용도의 객체 스토리지.
  • 핵심 개념: 데이터는 버킷에 저장되며, 버킷 이름은 AWS 전체에서 고유해야 함. 버킷 이름은 소문자만 사용할 수 있고, 특수 문자 및 공백은 허용되지 않음.
  • 스토리지 클래스: 접근 필요성에 따라 선택 (예: 표준, 비정기 접근).

기타 스토리지 옵션

  • EBS (탄력적 블록 스토어): EC2 인스턴스를 위한 블록 스토리지.
  • EFS (탄력적 파일 시스템): 공유 파일 시스템으로 비정기 접근 옵션 제공.
  • 백업: 데이터 복구를 위해 백업 유지.

Comments