이전 Docker Swarm 을 활용함에 있어 불가피하게 서로 다른 EC2 간 통신이 필요하게 되었다.
당시에는 빠른 구성을 위해 서로 간 Public IP 를 통해 통신을 하도록 하였으나 이는 불필요한 통신 비용과, 보안적 이슈가 발생할 수 있기에 VPC 구성을 통해 동일한 네트워크에서 내부적으로 통신을 하도록 구성하고자 한다.
우선, VPC 메뉴에 진입해 VPC 생성 버튼을 누른다

원래는 해당 페이지에서 VPC 구성에 필요한 가용영역, 서브넷 등을 한 번에 구성할 수도 있지만, 이번 글에서는 별도로 설정하고자 하기에 생성할 리소스는 VPC 만을 선택하고 넘어가준다.
이후, IPv4 CIDR 을 지정해주면 되는데 이는 쉽게 말해 사용할 네트워크의 대역대이다.
보통 이러한 대역대는 실제 인터넷 트래픽과 충돌하지 않는 사설 대역을 활용하며 보통, 10.0.0.0 대역을 주로 활용하곤 한다.
또, 이러한 IP 에 서브넷을 구성하기 위해 /24 와 같은 대역을 지정하게 되는데 이는 CIDR의 프리픽스 길이로 , 숫자가 낮을 수록 할당할 수 있는 대역이 커진다.

이렇게 VPC 를 생성하고, 해당 VPC 내부에 EC2 를 배치하는 것만으로도 동일한 네트워크에서 동작 시킬 수 있지만, 각 대역대마다 역할을 지정하여 관리하는 것이 권장된다.
이러한 역할을 지정하는 것으로, 권한을 구분하여 관리할 수 있어 보안적으로도 이점이 생긴다.
때문에, 보통은 public/private 대역을 나눠 관리하는 것으로 public 서브넷에는 게이트웨이 서버를 연결하여 관리하곤 한다.
VPC 의 메뉴 중, 서브넷을 선택해 진입 한 뒤 서브넷 생성을 눌러준다.

이후 이전에 생성했던 VPC 를 선택 한 뒤 서브넷을 설정해주면 된다.
가용영역은, 자유롭게 선택하면 되나 서브넷마다 별도의 가용영역을 지정해주어야 특정 영역에 장애가 발생했을 때 대처가 가능하기에 서브넷 마다 다른 가용영역을 선택하는 것이 권장된다.
( 1번 서브넷이 ap-northeast-2a 였다면, 2번 서브넷은 ap-northeast-2b 로 지정 )
IPv4 서브넷 CIDR 블록은, 이전 VPC 의 설정했던 대역대 중 얼마만큼의 대역대를 해당 서브넷에 지정할지 결정하는 부분이기에 필요한 만큼 자유롭게 설정해주자.

이후 이렇게 설정한 VPC 에 EC2 를 연결하면 되는데, 네트워크를 설정하는 만큼 이미 생성된 EC2 의 VPC 는 변경할 수 없으니 참고 하면 좋을 것같다.
( VPC 내의 서브넷은 언제든지 자유롭게 변경 가능 )
VPC 를 새로 생성할 경우 “네트워크 설정” 부분에서 VPC와 서브넷을 설정해주면 되겠다.
