VPC 네트워트를 구성한다는 것은 아마존 서비스를 구축한다는 것입니다.
어떤 서버를 외부와 통신이 가능하게 할 것인지 어떤 데이타베이스를 외부와 접속을 막은 채로 내부와만 통신을 할 것인지 결정해야 합니다. 그렇지 않으면 추후 서비스 상에서 보안적으로 안정성면에서 서비스 장애가 발생할 수 있습니다. 고객의 데이타, 중요한 데이타는 외부에서 접근이 불가능하도록 철저하게 내부에서만 관리가 이루어져야 합니다. 이것을 가능하게 하는 VPC를 활용하여 서비스를 구성하는 가상 네트워크입니다.
목차
Toggle목표
가상네트워크를 왜 사용해야 하며 그 사용법을 알아봅니다.
설명
정확히 이야기하면 Amazon Virtual Private Cloud 입니다.
서비스를 구성하기 위해 정의한 논리적으로 격리된 가상 네트워크입니다. IP 주소 범위, 라우팅 테이블, 게이트웨어 및 보안 설정을 사용자의 필요에 따라 구성이 가능합니다. 이 가상 네트워크에서 AWS에서 제공하는 다양한 리소스를 구성할 수 있습니다. 가상 네트워크 구성은 서비스 구축의 시작점입니다.
- 구성 형태
- 단일 퍼블릿 서브넷 VPC : 단일 티어 퍼블릭 웹 어플리케이션을 구성합니다.
- 퍼블릭과 프라이빗이 공존하는 VPC : 다중 티어 어플리케이션에 적합합니다. 퍼블릭에 웹 서버를 구축하고 DB서버는 프라이빗 서브넷에 구성합니다.
- VPN 액세스를 제공하는 VPC : 온프라미스 환경과 클라우드를 사설 통신으로 확장하는 구성입니다.
위 구조처럼 가상 네트워크를 구성할 수 있습니다. 이중화를 위해서 availability zone을 두가지로 구성할 수도 있습니다. 이중화라는 것은 서버가 동작 불능에 처했을 경우 무중단 서비스를 위해 다른 물리영역에 서버를 구성하는 것입니다.
EC2, RDS 같은 인스턴스를 가상 네트워크 내부에 설정됩니다. 그 안에는 subnet이라는 IP 주소 영역을 포함합니다. IP의 주소 범위로 public 영역과 private 영역으로 나뉩니다. public 영역은 외부 네트워크와 통신이 가능하고 private 영역은 내부 리소스와 연결이 가능합니다. private 영역을 두는 이유는 외부로 노출할 필요가 없는 리소스를 두기 위함입니다. 가령 RDS같은 데이타베이스는 외부로 노출해서는 안되는 중요한 리소스를 구성합니다.
AWS VPC 설정 방법
아래 표처럼 항목을 셋팅합니다.
항목 | 값 | 설명 |
---|---|---|
이름 | prod-v | Platform 가상네트워크 이름 |
IP4 CIDR 블록 | 10.0.0.0/16 | VPC에서 이용하는 프라이빗 네트워크의 IPv4 주소 범위 |
IP6 CIDR 블록 | 없음 | VPC에서 이용하는 프라이빗 네트워크의 IPv6 주소 범위 |
태넌시 | 기본값 | 가상 네트워크 리소스의 전용 하드웨어에서의 실행 여부 |
이름을 정하고 프라이빗 네트워크는 10.0.0.0/16으로 설정합니다. IP6는 그대로 두고 태넌시는 독자적인 하드웨어가 필요하지 않는 한 이것도 디폴트로 생성합니다.
위와 같이 구성하고 설정하면 서비스를 구성할 수 있는 가상네트워크가 생성됩니다.
VPC 요금
가상 네트워크를 생성하고 사용하는 데는 추가 요금이 없습니다. 하지만 어떻게 네트워크를 구성하느냐에 따라 비용이 발생할 수 있습니다. 가령 NAT Gateway를 사용한다면 시간 당 사용,처리량에 따라 지불해야 합니다.
https://aws.amazon.com/ko/vpc/pricing/
VPC 참고 사이트
설명
https://docs.aws.amazon.com/ko_kr/vpc/latest/userguide/what-is-amazon-vpc.html
AWS PrivateLink concepts
https://docs.aws.amazon.com/vpc/latest/privatelink/concepts.html