[AWS] VPC란 무엇인가?

양진혁·2022년 3월 23일
1

AWS

목록 보기
8/14

VPC(Virtual Private Cloud)란 무엇인가?

쉽게 말해 컴퓨터를 놓기 위한 네트워크를 구성하는 서비스라 할 수 있다.(Subnet, IP주소 부여, 같은 모든 망 구성 총괄, 나만의 데이터 센터를 만듦)

아마존에서 말하는 VPC

Amazon VPC를 사용하면 AWS 클라우드에서 논리적으로 격리된 공간을 프로비저닝(사용자의 요구에 맞게 시스템 자원을 할당, 배치, 배포해 두었다가 필요 시 시스템을 즉시 사용할 수 있는 상태로 미리 준비해 두는 것을 말한다.)하여 고객이 정의하는 가상 네트워크에서 AWS 리소스를 시작할 수 있다. IP 주소 범위 선택, Subnet 생성, 라우팅 테이블 및 Network Gateway 구성 등 가상 네트워킹 환경을 완벽하게 제어할 수 있다. Amazon VPC에서 IPv4와 IPv6를 모두 사용하여 리소스와 애플리케이션에 안전하고 쉽게 액세스 할 수 있다.

VPC 종류

  • Default VPC
    • 계정 생성시 자동으로 셋업되어 있음(모든 Region)
    • 모든 Subnet의 인터넷 접근이 가능하다.
    • EC2가 Public IP와 Private IP 모두 가지고 있다.
    • 삭제시 복구 불가
  • Custom VPC
    • 새로 만들어야 함
    • Default VPC의 특징을 가지지 않음(Default VPC와 반대)

VPC를 사용해 할 수 있는 일들

  • EC2 실행 가능
  • Subnet 구성 가능
  • 보안설정 가능(IP block, 인터넷에 노출되지 않는 EC2 구성 등)

VPC Peering(VPC간 연결)

  • Transitive peering 불가능: 한 다리 건너 연결되어 있다고 해서 Peering이 된 것이 아님(A와 B가 연결되어 있고 B와 C가 연결되어 있다 하더라도 A와 C가 연결된 것이 아니므로 그 둘을 연결하려면 선을 뚫어야 한다)

VPC Flow Log

  • VPC 로그를 Cloud Watch에 저장 가능

IP 대역 지정 가능

Region에 하나: 다른 Region으로 확장 불가능

VPC 구성요소

  • Availability Zone(AZ)
  • Subnet
  • InternetGateway(IGW)
  • Network Access Control List(NACL) / Security Group(SG)
  • Route Table
  • Network Address Translation Instance(NAT Instance) / NAT Gateway
  • Bastion Host
  • VPC Endpoint

Availability Zone

  • 물리적으로 분리되어 있는 인프라가 모여있는 데이터 센터(자연재해, 인공재해 등으로 인해 데이터가 소실되는걸 막기 위해 물리적으로 분리)
  • 고가용성을 위해 항상 일정 거리 이상 떨어져 있음
  • 하나의 Region은 2개 이상의 AZ로 이루어져 있음
  • 각 계정의 AZ는 다른 계정의 AZ와 다른 아이디를 부여 받음
    • 계정 1의 AZ-A는 계정 2의 AZ-A와 다른 곳에 있음

Subnet

  • VPC 하위 단위
  • 하나의 AZ에만 생성 가능: 다른 AZ로 확장 불가
    • 하나의 AZ에는 여러 Subnet 생성 가능
  • Private Subnet(보안을 위해): 인터넷 접근이 불가능한 Subnet
  • Public Subnet: 인터넷 접근 가능한 Subnet
  • CIDR Block Range 설정 가능(IP주소를 분배하는 방법)

Internet Gateway(IGW)

  • 인터넷으로 나가는 통로
  • 고가용성이 확보되어 있음
  • IGW로 연결되지 않은 서브넷 = Private Subnet
  • Route Table에 연결해줘야 한다.

NACL/Security Group

  • 검문소
  • NACL -> Stateless, SG -> Stateful
  • 기본적으로 VPC 생성 시 만들어줌
  • Deny는 NACL에서만 가능

Route Table

  • 트래픽이 어디로 가야 할지 알려주는 이정표
  • 기본적으로 VPC 생성시 만들어줌(자동생성)

NAT Instance/ NAT Gateway

  • Private Instance가 외부의 인터넷과 통신하기 위한 통로
  • NAT Instance는 단일 Instance = EC2(EC2가 꺼지면 끝, Instance 크기마다 트래픽 처리량이 다름, SG 영향을 받음 / NAT Gateway = 하나의 서비스 즉 AWS에서 제공하는 서비스(고가용성 보장, 트래픽의 수요에 따라 자동으로 나뉨, SG 영향을 받지 않음)
  • NAT Instance를 사용할 때 Source/Destination Check을 해제해야 한다.
  • NAT Instance는 Public Subnet에 있어야 한다.

Bastion Host

  • (우리가) Private Instance에 접근하기 위한 Instance
  • Public Subnet에 위치해야 한다.

VPC Endpoint

  • Interface Endpoint
    ENI(Elastic Network Interface) 기반

    • Private IP를 만들어 서비스를 연결
    • 많은 서비스들을 지원(SQS, SNS, kinesis, sagemaker 등)
  • Gateway Endpoint: 라우팅 테이블에서 경로의 대상으로 지정하여 사용

    • S3 및 DynamoDB 지원

    Reference

    https://www.youtube.com/channel/UCpDxKxars7BHR3owaNRctaQ

0개의 댓글