티스토리 뷰

Cloud/Google Cloud Platform

[GCP] VPC peering

Reo Dongmin Lee 2019. 5. 3. 00:45

VPC peering

VPC peering

GCP는 VPC network peering 기능을 제공한다. 

서로 다른 VPC network가 RFC 1918 (private ip)  를 사용한 connection을 맺게 해준다.

VPC peering의 장점은 서로 다른 organization, project의 VPC 네트워크라도 public internet을 거치지 않고 통신 가능하게 해주는 점이다. 

이로써 Low latency와 Security, 그리고 비용 측면에서 큰 이득이 있다.

비용 측면에 대해서 첨언하자면, GCP는 같은 zone에서 일어나는 통신이라도 External IP를 사용하는 egress (outbound traffic) bandwith 에 대한 비용이 발생하는데 VPC peering 된 프로젝트 끼리는 Internal IP를 사용하므로 egress bandwith에 대한 비용이 발생하지 않는다. 단 General network 비용은 여전히 발생한다.

Shared VPC와 VPC peering의 차이점은 Shared VPC는 Centralized 네트워크 관리 방식이고, VPC peering은 Decentralized 네트워크 관리방식이다.

예를들어, Shared VPC의 경우 하나의 host project의 VPC를 공유하는 형태라서 Shared VPC network 하나만 설정을 해주면 되었지만

VPC peering의 경우 서로 다른 VPC Network를 연결 하는 것이기 때문에 양쪽 다 설정을 따로 해줘야 한다. 한쪽이라도 설정이 안되어 매칭 되지 않으면 peering이 되지 않는다.

또한, VPC peering의 경우 각각의 VPC Network가 다 서로 다른 노드 구성, firewall rules, routing rule 등을 가지고 있기 때문에 이 설정들은 project 레벨에 종속 되며 타 organization 프로젝트와의 통신도 자유롭다.

Shared VPC는  설정을 위해 Shared VPC admin role이나 Organization Admin role 의 레벨까지 필요했고 다른 organization과 통신할 수 없었던 점과 대조적이다.

Multiple Peering

또한 위의 그림과 같이 각각의 peering connection은 독립적이다.

N1 - N2, N1 - N3, 이렇게 peering 되었다고 해서 N2와 N3가 peering 되지 않는다. 반드시 각각 pair들을 독립적으로 셋팅해줘야 한다.

이밖에 실제 구축을 위해서는 고려 사항들과 제한사항들이 있는데 다음 링크를 참고한다.

https://cloud.google.com/vpc/docs/vpc-peering#overview

댓글