클라우드 크래프트

VPC (Virtual Private Cloud)

격리된 가상 네트워크 환경

VPC 가이드

VPC란?

Amazon VPC는 AWS 클라우드에서 논리적으로 격리된 가상 네트워크를 프로비저닝할 수 있게 해주는 서비스입니다. IP 주소 범위 선택, 서브넷 생성, 라우트 테이블 및 네트워크 게이트웨이 구성 등 가상 네트워킹 환경을 완벽하게 제어할 수 있습니다.

주요 개념

  • CIDR 블록: VPC의 IP 주소 범위를 정의합니다. 예: 10.0.0.0/16은 10.0.0.0부터 10.0.255.255까지의 주소를 포함합니다.
  • 서브넷(Subnet): VPC 내의 IP 주소 범위입니다. 퍼블릭 서브넷과 프라이빗 서브넷으로 구분할 수 있습니다.
  • 라우트 테이블(Route Table): 네트워크 트래픽이 전달되는 경로를 결정하는 규칙 집합입니다.
  • 인터넷 게이트웨이(Internet Gateway): VPC와 인터넷 간의 통신을 가능하게 하는 구성 요소입니다.
  • NAT 게이트웨이: 프라이빗 서브넷의 인스턴스가 인터넷에 연결할 수 있도록 하면서 인터넷에서 해당 인스턴스로의 연결은 차단합니다.

서브넷 유형

  • 퍼블릭 서브넷: 인터넷 게이트웨이로의 라우트가 있는 서브넷입니다. 인터넷에서 직접 액세스할 수 있는 리소스(예: 웹 서버)를 배치합니다.
  • 프라이빗 서브넷: 인터넷 게이트웨이로의 라우트가 없는 서브넷입니다. 데이터베이스나 애플리케이션 서버 같은 백엔드 리소스를 배치합니다.
  • VPN 전용 서브넷: VPN 연결을 통해서만 액세스할 수 있는 서브넷입니다.

보안 기능

VPC는 여러 계층의 보안 기능을 제공합니다:

  • 보안 그룹(Security Group): 인스턴스 수준의 가상 방화벽으로 상태 저장 방식으로 작동합니다.
  • 네트워크 ACL: 서브넷 수준의 방화벽으로 상태 비저장 방식으로 작동합니다.
  • VPN 연결: 온프레미스 네트워크와 VPC 간 안전한 연결
  • VPC 피어링: 다른 VPC와 프라이빗 IP를 통한 통신
  • VPC 엔드포인트: AWS 서비스에 인터넷 게이트웨이 없이 프라이빗하게 연결

라우팅

라우트 테이블은 네트워크 트래픽의 경로를 제어합니다. 각 서브넷은 라우트 테이블과 연결되어야 하며, 명시적으로 연결되지 않은 서브넷은 메인 라우트 테이블과 자동으로 연결됩니다.

예시: 퍼블릭 서브넷의 라우트 테이블에는 0.0.0.0/0 → 인터넷 게이트웨이 라우트가 있어 인터넷 액세스를 허용합니다.

VPC 설계 모범 사례

  • 여러 가용 영역을 사용하여 고가용성 확보
  • 퍼블릭 및 프라이빗 서브넷 분리로 보안 강화
  • 적절한 CIDR 블록 크기 선택 (향후 확장 고려)
  • 보안 그룹과 네트워크 ACL을 함께 사용하여 다층 보안 구현
  • VPC 흐름 로그를 활성화하여 네트워크 트래픽 모니터링
  • NAT 게이트웨이를 각 가용 영역에 배치하여 가용성 향상

연결 옵션

  • 인터넷 게이트웨이: 퍼블릭 인터넷 연결
  • NAT 게이트웨이/NAT 인스턴스: 프라이빗 서브넷의 아웃바운드 인터넷 연결
  • VPN 연결: 온프레미스 네트워크와 암호화된 연결
  • AWS Direct Connect: 전용 네트워크 연결
  • VPC 피어링: VPC 간 프라이빗 연결
  • Transit Gateway: 여러 VPC 및 온프레미스 네트워크 중앙 집중식 연결

사용 사례

  • 다중 계층 웹 애플리케이션 호스팅
  • 재해 복구 솔루션 구축
  • 하이브리드 클라우드 아키텍처
  • 격리된 개발, 테스트, 프로덕션 환경 구성
  • 규정 준수 요구사항 충족