VPC Peering

2개의 VPC간 연결을 구성합니다.

소개

Peering connection

Peering Connection은 서로 다른 두 개의 VPC간에 네트워크 터널을 구성하여 VPC 내의 인스턴스들 간에 프라이빗 IP통신을 제공하는 기능을 제공합니다. VPC Peering Connection을 통해 마치 동일한 네트워크 내에 있는 것 처럼 서로 통신을 할 수 있습니다.

특장점 및 고려사항

  • VPC Peering을 사용하면 발생하는 트래픽은 AWS 백본 네트워크를 통하여 전달되므로, 암호화 및 전송 비용 절감의 이점이 있습니다.

  • 동일 계정내 VPC Peering 구성 뿐만이 아닌, 타 계정간에도 VPC Peering 을 지원하여 리소스 중복 사용을 최소화 하여 데이터의 공유 효과를 얻을 수 있습니다.

  • 중국 리전을 제외한 타 리전에 있는 VPC 간에도 Peering 구성을 제공합니다.

  • VPC Peering을 구성하기 위해서는 VPC에 할당된 IP 주소 CIDR는 동일하거나 겹치지 않아야 합니다.

  • VPC간에 Transit Routing을 지원하지 않으므로 Peering된 VPC의 인터넷 게이트웨이, NAT 게이트웨이, VPN, Direct Connect 을 사용하지는 못합니다.

  • VPC Peering은 1:1 연결만 가능하므로, 다수의 VPC를 서로 연결하는 경우 전송 게이트이(Transit Gateway)의 사용을 권장합니다.

실습 목표 구성

본 Lab은 VPC Peering을 통하여 2개의 VPC 간에 프라이빗 IP 통신을 확인합니다.

Task1. Peering VPC 생성하기

Peering VPC에 사용될 새로운 VPC 환경 및 EC2 인스턴스를 CloudFormation으로 생성합니다.

아래 링크에서 "VPCPeering.yaml" 파일을 다운 받습니다.

file-download
3KB

1-1 Cloudformation 적용 하기

AWS Management Console의 서비스 찾기에서 “Cloudformation”를 검색하고 선택합니다.

[Create Stack] 을 클릭합니다.

  • [Template is ready] 선택

  • [Upload a template file] 선택

  • [Chose file] 을 클릭하여 다운 받은 "VPCPeering.yaml" 파일 선택

  • Stack name tag - "VPCPeeringlab" 입력

  • KeyName - "IMD-PUB-PPK" 선택 (VPC Create에서 생서한 Keypair를 선택함)

Configure stack options 에서는 그대로 [Next]를 클릭합니다. Review VPCPeeringlab 에서 [Create stack]를 클릭하여 프로비저을 수행합니다.

프로비저닝이 완료되면 "CREATE_COMPETE"를 확인할 수 있습니다. (약 5분이 소요됩니다.)

CloudFormation을 수행하면 실습을 위한 추가 VPC가 생성됩니다. 생성된 자원을 확인합니다.

1-2 VPC Peering 구성 하기

VPC Peering 구성 전에 각 EC2 Instance에 접속하여 프라이빗 IP 통신을 확인합니다.

각 EC2 Instance로 ping 테스트로 확인 합니다.

VPC 메뉴의 Peering Connection 으로 이동합니다. [Create Peering Connection]을 클릭합니다.

  • Peering connection name tag : " VPCPeeringlab " 입력

  • VPC (Requester) : " IMD-VPC " 선택

  • VPC (Accepter) : " VPCPeering " 선택

  • Tags - Key: Name , Value: VPCPeeringlab 입력

[Create Peering Connection]을 클릭하여 Peering 연결을 생성합니다.

생성된 Peering 연결을 확인합니다.아직 상대 VPC에서 연결을 수락하지 않았으므로, 상태는 "Pending Acceptance"로 확인이 됩니다.

circle-info

별도의 수락 절차를 수행하는 이유는 타 계정과의 연결 시 서로 간의 운영 관리가 다르기 때문입니다.

[Action]에 Accept Request를 클리하여 Peering 연결을 수락합니다. 그후 상태가 " Active " 로 변경되게 됩니다.

1-3 Route Tables 수정 하기

VPC간에 Peering 연결은 되었으나, 네트워크 트래픽에 대한 경로를 지정하기 위하여 각 VPC의 Public Route Table을 수정합니다.

VPC 메뉴의 Route Tables 로 이동합니다. " PUBLIC-RT "와 "VPCPeering-Public-RT"에 상대 VPC로 향하는 경로를 추가합니다.

Route Table

Destination

Target

PUBLIC-RT

10.2.0.0/16

Peering Connection -> pcx-XXXXXXXXXXXX

VPCPeering-Public-RT

10.1.0.0/16

Peering Connection -> pcx-XXXXXXXXXXXX

1-4 Peering 연결 확인

각 EC2 Instance에 접속하여 프라이빗 IP 통신을 확인합니다.

각 EC2 Instance로 ping 테스트로 프라이빗 통신을 확인합니다.

circle-info

본 Lab에서는 Security Group의 허용(Inbound) 규칙이 모두 허용을 되어 있습니다.실제 환경에서는 Security Group에서 상대방의 VPC IP 대역 또는 특정 EC2 Instance의 IP에 대한 허용 규칙이 추가되어야 합니다.

circle-info

VPC Peering 연결 속성에서 "요청자 & 수락자 DNS 확인"이 비활성화 되어 있다면, 서로 다른 VPC의 인스턴스 간에 VPC DNS (=인스턴스 Public DNS)와 통신 시 퍼블릭 IP로 접근합니다.

반대로 VPC Peering 연결 속성에 "요청자 & 수락자 DNS 확인이 활성화 되어 있으면, 서로 다른 VPC내 인스턴스 간에 VPC DNS 통신 시 Private IP로 통신을 합니다.

circle-check

Last updated