AWS를 좀 더 활용하기 위해서는 VPC에 대한 이해가 필요하다.



◆ VPC

프라이빗 클라우드를 만들기 위해 논리적인 독립 네트워크를 구성하는 리소스로, AWS에서는 대부분의 서비스가 VPC없이는 사용할 수 없지만, 설정하지 않을 경우 default로 만들어 주기 때문에 VPC를 몰라도 기본적인 사용엔 지장이 없다.


▶ VPC특징

  • VPC는 하나의 리전에 종속된다.
  • 한번 설정된 IP대역은 변경이 불가하다.


▶ CIDR( 사이더 )

사이더는 아이피 할당 방법중 하나이다. AWS에서 IP를 할당할 때 자주 사용됨으로 알아두는 것이 좋다.
VPC에서 또한 IP범위를 지정하는 방식으로 CIDR을 쓰며, /뒤에 따라오는 숫자에 따라 범위가 달라지는 방식이다.

192.168.0.0/24 
=> 2^(32-24) = 256개의 ip주소 
=>192.168.0.0 ~ 192.168.1.255


◆ VPC 환경 세팅

1. VPC생성

  • 사용 가능한 VPC 사설 아이피 대역
    • 10.0.0.0 ~ 10.255.255.255(10/8 prefix) = 10.0.0.0/8
    • 172.16.0.0 ~ 172.31.255.255(182.16/12 prefix) = 172.16.0.0/12
    • 192.168.0.0 ~ 192.168.255.255(192.168/16 prefix) = 192.168.0.0/16


  • DNS resolution
    DNS호스트 네임을 IP로 해석할 때 AWS에서 제공하는 DNS서버를 사용하는 기능
  • DNS hostnames
    해당 VPC내부에 생성되는 인스턴스에 퍼블릭DNS호스트네임을 할당해 주는 기능
  • default VPC는 두 기능 모두 Enabled되어 있지만, 수동으로 만든 VPC의 경우 DNS hostnames가 비활성화 되어있기 때문에 설정에서 활성화 시켜준다.
    ( vpc우클릭-> edit DNS hostnames )


▶ VPC생성 시 자동으로 함께 만들어지는 것들

  • 라우팅 테이블
    설정한 CIDR범위로 요청이 들어올 수 있도록 해당 VPC로컬에서 찾도록 하는 기능
  • DHCP옵션셋
    도메인네임서버, 도메인네임, NTP서버, NetBIOS서버 등의 정보를 가지고 있음
  • ACL, 시큐리티그룹
    방화벽 역할(인바운드, 아웃바운드 차단) ACL-서브넷앞단/시큐리티그룹-인스턴스앞단


2. 서브넷 생성

VPC는 논리적인 구획을 나눠줄 뿐, VPC안에 바로 인스턴스등을 생성 시킬 수 없다.
인스턴스는 가용존이라는 곳에서만 생성이 가능하고, 서브넷이 이 가용존과 연결되어 있는 주소이다. 따라서 인스턴스를 생성하기 위해서는 서브넷은 필수적으로 필요하다.

  • 서브넷 생성
  • VPC
    만들어둔 VPC를 선택
  • Availability Zone
    리전 선택
  • IPv4 CIDR block
    서브넷은 VPC보다 작은 단위

    이기 때문에 해당 서브넷 범위는 VPC범위에 포함되면서 보다 작은 범위로 만들어야 한다.
    ( 서브넷 생성 후 자동 할당 IP설정 수정 옵션에서 “퍼블릭 IPv4주소 자동 할당 활성화”체크해야 인스턴스 생성 시 ip주소를 할당받을 수 있다. )

서브넷은 2개이상 만드는 것이 좋다.
가용존은 단순히 가상적으로 분리되어 있는 것이 아닌 물리적인 공간 또한 분리되어 있기 때문에 하나의 가용존에 문제가 생기더라도 서비스에 장애가 발생하지 않도록 설계할 수 있다.


3. 인스턴스 연결( 인터넷 게이트웨이 생성 )

인스턴스 생성 시 위와 같이 생성된 VPC와 서브넷을 Network/Subnet옵션에 연결할 수 있다.
단, 수동으로 만든 vpc와 연결 시 인터넷엑세스가 허용되어 있지 않기 때문에 원격접근이 불가능하다.


* VPC 서브넷 인스턴스에 대한 인터넷 엑세스 활성화를 위한 조건

  • VPC에 인터넷 게이트 웨이를 연결
  • 서브넷의 라우팅 테이블이 인터넷 게이트웨이를 가리켜야함
  • 서브넷의 인스턴스가 고유한IP주소를 가지고 있어야 함 ( 2 - 퍼블릭 IPv4주소 자동 할당 활성화 )
  • 보안그룹 규칙에 적절한 트래픽이 인스턴스로 흐르도록 허용되어 있어야 함( ACL/시큐리티그룹 )


▶ 인터넷 게이트웨이 만들기

  1. 인터넷 게이트웨이 생성
    VPC - Internet Gateway탭에서 Create internet gateway로 인터넷 게이트웨이를 생성한 후에 attach to VPC를 통하여 해당 VPC에 연결하면 끝
  2. 라우팅 테이블 인터넷 게이트웨이 추가
    모든 접근(0.0.0.0/0)에 target을 인터넷게이트웨이로 추가