카테고리 없음

aws VPC,EC2, 스토리지

yumin630 2024. 12. 4. 23:10

1. VPC (Virtual Private Cloud)

  • 정의: VPC는 AWS 클라우드에서 사용자가 설정할 수 있는 가상 네트워크 환경입니다.
    • 사용자는 자신의 VPC에서 원하는 대로 네트워크를 설계하고, 서브넷, 라우팅 테이블, 게이트웨이를 설정할 수 있습니다.

VPC 주요 개념

  1. 리전(Region)과 가용 영역(Availability Zone, AZ):
    • AWS는 전 세계에 리전을 두고 있으며, 각 리전은 2개 이상의 가용 영역(AZ)으로 나뉩니다.
    • AZ는 물리적으로 분리된 데이터 센터로, 높은 가용성과 내결함성을 제공합니다.
  2. CIDR 블록:
    • IP 주소 범위를 설정하는 방식으로, 예를 들어 10.0.0.0/16은 65,536개의 IP 주소를 포함합니다.
    • 이를 서브넷으로 나눠 네트워크를 세분화할 수 있습니다.
  3. 서브넷(Subnet):
    • VPC의 IP 주소를 기반으로 세분화된 네트워크.
    • 퍼블릭 서브넷: 인터넷과 직접 연결 가능.
    • 프라이빗 서브넷: 외부 인터넷에 직접 노출되지 않음.
  4. 라우팅 테이블:
    • 네트워크 트래픽이 어디로 향해야 하는지 경로를 정의합니다.
    • 기본적으로 모든 서브넷은 로컬 트래픽을 허용하지만, 외부로 나가는 트래픽은 라우팅 테이블에 추가 설정이 필요합니다.

2. 인터넷 연결

  1. 인터넷 게이트웨이 (IGW):
    • 퍼블릭 서브넷에서 인터넷 트래픽을 주고받도록 지원합니다.
    • 예: 웹 애플리케이션 서버에 필요.
  2. NAT 게이트웨이 (Network Address Translation):
    • 프라이빗 서브넷에서 인터넷에 아웃바운드 트래픽을 보낼 수 있도록 설정.
    • 외부에서 프라이빗 서브넷으로의 직접 접근은 차단됩니다.

3. 보안 설정

  1. 보안 그룹(Security Group):
    • EC2 인스턴스와 같은 리소스에 대한 인바운드아웃바운드 트래픽을 제어합니다.
    • 허용 규칙만 지원하며, 주로 애플리케이션 레벨에서 보안을 관리합니다.
    • 예:
      • HTTP(포트 80)와 SSH(포트 22) 허용 규칙 설정 가능.
  2. 네트워크 ACL (Access Control List):
    • 서브넷 단위에서 트래픽을 허용하거나 거부.
    • 보안 그룹보다 세분화된 규칙을 적용할 수 있습니다.
    • 허용 및 거부 규칙 모두 지원하며, 규칙은 번호 순으로 평가됩니다.

보안 그룹 vs 네트워크 ACL

  • 보안 그룹은 리소스에 적용되고, 허용 규칙만 설정 가능.
  • NACL은 서브넷 단위에서 적용되며, 허용 및 거부 규칙 모두 지원.

4. VPC 간 연결

  1. VPC 피어링:
    • 두 개의 VPC 간 프라이빗 네트워크 연결을 설정.
    • 서로 다른 리전이나 계정 간에도 연결 가능.
  2. Site-to-Site VPN:
    • 온프레미스 네트워크와 AWS VPC 간 안전한 연결을 설정.
    • 인터넷을 통해 VPN 터널을 생성하여 데이터를 암호화함.
  3. Direct Connect:
    • 인터넷을 거치지 않고 AWS와 온프레미스 네트워크를 전용 네트워크로 연결.
    • 고속 데이터 전송과 보안이 필요한 경우 사용.

5. Amazon EC2 (Elastic Compute Cloud)

  • 정의: AWS의 가상 서버로, 사용자가 필요에 따라 인스턴스를 생성하고 운영할 수 있는 서비스입니다.

EC2의 주요 구성 요소

  1. AMI (Amazon Machine Image):
    • EC2 인스턴스를 생성할 때 사용하는 템플릿으로, 운영체제(OS), 애플리케이션 등을 포함.
    • AMI를 사용하면 동일한 환경을 쉽게 복제 가능.
  2. 인스턴스 유형:
    • 사용 목적에 따라 다양한 유형 제공:
      • 범용 인스턴스: 일반적인 애플리케이션 실행.
      • 컴퓨팅 최적화: CPU 집약적 작업.
      • 메모리 최적화: 대규모 데이터 처리.
      • 스토리지 최적화: 데이터베이스 및 대용량 저장.
  3. 스토리지 옵션:
    • EBS (Elastic Block Store): 블록 스토리지, 데이터베이스 등 빠른 데이터 읽기/쓰기에 적합.
    • Instance Store: 임시 스토리지, 인스턴스 종료 시 데이터 삭제.
    • S3(Simple Storage Service): 객체 스토리지, 데이터 백업 및 아카이빙.
  4. 보안:
    • EC2에 연결하려면 키 페어(Key Pair)를 생성하고 SSH를 사용해 인증.

6. EC2와 VPC의 관계

  • VPC는 EC2 인스턴스를 배치할 네트워크 환경을 제공합니다.
  • 사용자는 EC2를 퍼블릭 서브넷에 배치해 인터넷 접근이 가능하도록 설정하거나, 프라이빗 서브넷에 배치해 내부 데이터 처리 작업에 활용할 수 있습니다.

 


1. AWS 스토리지 서비스 개요

AWS 스토리지는 데이터를 저장하고 관리하기 위한 다양한 유형의 서비스를 제공합니다. 주요 유형은 다음과 같습니다:

  1. Amazon EBS (Elastic Block Store): 블록 스토리지
  2. Amazon EFS (Elastic File System): 파일 스토리지
  3. Amazon S3 (Simple Storage Service): 객체 스토리지

2. Amazon EBS (Elastic Block Store)

EBS의 특징

  • 정의: EC2 인스턴스에 연결되는 블록 스토리지 서비스.
  • 특징:
    • 데이터 지속성: 인스턴스를 종료해도 데이터는 유지됩니다.
    • 빠른 읽기/쓰기 성능으로 데이터베이스, 로그 처리 등에 적합.
  • 용도:
    • 데이터베이스 저장소, 부팅 볼륨, 로그 파일 저장.

EBS 볼륨 유형

  1. SSD 기반 볼륨:
    • 범용 SSD: 일반적인 워크로드에 적합.
    • 프로비저닝된 IOPS SSD: I/O 집약적인 애플리케이션(데이터베이스)용.
  2. HDD 기반 볼륨:
    • 처리량 최적화 HDD: 빅데이터, 로그 처리에 적합.
    • 콜드 HDD: 자주 접근하지 않는 데이터 저장용.

EBS의 이점

  • 데이터 백업:
    • EBS 스냅샷 기능을 통해 현재 데이터를 캡처하고 복구.
  • 확장성:
    • 필요 시 스토리지 크기를 조정할 수 있음.

3. Amazon EFS (Elastic File System)

EFS의 특징

  • 정의: 공유 파일 스토리지 서비스.
  • 특징:
    • 다수의 EC2 인스턴스에서 동시에 액세스 가능.
    • 자동 확장: 저장 용량이 자동으로 증가 또는 감소.
  • 용도:
    • 애플리케이션 데이터 공유, 컨테이너 기반 작업, 분석 워크로드.

EFS와 EBS의 차이점

  • EFS:
    • 여러 인스턴스에서 공유 가능.
    • 파일 기반 스토리지.
  • EBS:
    • 단일 인스턴스에 연결.
    • 블록 기반 스토리지.

4. Amazon S3 (Simple Storage Service)

S3의 특징

  • 정의: 객체 스토리지 서비스로 대규모 데이터를 저장하고 관리.
  • 특징:
    • 확장성: 페타바이트 규모의 데이터를 저장 가능.
    • 내구성: 99.999999999% (11 9s) 내구성 제공.
    • 다양한 스토리지 클래스 지원.

S3 스토리지 클래스

  1. S3 Standard:
    • 자주 접근하는 데이터를 위한 높은 가용성과 내구성.
  2. S3 Intelligent-Tiering:
    • 액세스 패턴에 따라 비용을 자동 최적화.
  3. S3 Standard-IA (Infrequent Access):
    • 드물게 접근하는 데이터에 적합.
  4. S3 Glacier:
    • 데이터 아카이빙 및 백업용으로 저렴.
  5. S3 Glacier Deep Archive:
    • 가장 저렴한 옵션으로, 긴 보관 주기 데이터를 저장.

S3의 주요 기능

  • 버킷: 데이터를 저장하는 컨테이너.
  • 객체: S3에 저장되는 개별 데이터 단위.
  • 버전 관리:
    • 객체 변경 시 이전 버전을 보관.
  • 수명 주기 정책:
    • 데이터를 특정 기간 이후에 자동으로 아카이빙하거나 삭제.

5. 데이터 전송 및 관리

데이터 전송

  1. AWS Storage Gateway:
    • 온프레미스 데이터와 AWS 클라우드 간 연결.
  2. AWS Snowball:
    • 대규모 데이터를 AWS로 이동할 때 물리적 장치를 활용.
  3. Direct Connect:
    • AWS와 온프레미스 네트워크 간 전용 연결.

데이터 보안

  • 암호화:
    • S3, EBS, EFS는 데이터 암호화를 기본 제공.
    • 서버 측 암호화(SSE) 및 클라이언트 측 암호화 지원.
  • 액세스 제어:
    • IAM 정책과 S3 버킷 정책으로 데이터 접근 권한 제어.
    • ACL(Access Control List)로 세부적인 접근 권한 설정.

6. 데이터 활용과 분석

S3와 데이터 분석

  • AWS Glue:
    • S3 데이터를 크롤링하고, ETL(추출, 변환, 적재) 작업을 지원.
  • Amazon Athena:
    • S3 데이터를 쿼리하는 서버리스 서비스.

백업 및 복구

  • S3와 Glacier를 활용한 데이터 백업 및 장기 보관.
  • 데이터 복구는 몇 분 안에 가능.

7. 스토리지 선택 기준

  • EBS: EC2 인스턴스와 연계하여 높은 성능을 요구하는 애플리케이션.
  • EFS: 다수의 인스턴스에서 데이터를 공유해야 하는 경우.
  • S3: 대규모 데이터 저장, 분석, 장기 보관.