이것이 점프 투 공작소

Route53 Private Host존을 이용한 VPC간 Private Endpoint 공유 본문

aws

Route53 Private Host존을 이용한 VPC간 Private Endpoint 공유

겅겅겅 2023. 6. 16. 21:14

여러 vpc에서 Private Endpoint를 공유하는 방법에 대해 포스팅하려고합니다.

본 포스팅은 당근마켓 SRE MEET UP에서 공유된 내용을 보고 혼자서 실습해보는 형태로 진행해보았습니다

https://www.youtube.com/watch?v=tBZBYozvTO8 

 

PrivateEndpoint를 생성할 VPC와 PrivateEndpoint를 사용할 VPC 생성

먼저 PrivateEndpoint를 생성하고 제공할 producer-vpc와 producer-vpc에서 privateEndpoint를 공유받을 consumer-vpc를 생성합니다.  

 

서로 다른 vpc 생성

 

각 VPC에서 PrivateEndpoint를 조회할 EC2생성

각 vpc의 public subnet에 PrivateEndpoint를 조회할 EC2를 생성합니다.

1. producer-vpc에서 ec2생성

producer-ec2

2. consumer-vpc에서 ec2생성

cousumer-ec2

SecretManger 생성

endpoint를 공유할 SecretManager를 생성합니다.

 

SecretManager에 대한 PrivateEndpoint생성

privateEndpoint생성 서비스에서 secret manager에 대해 지정해주고 생성할 vpc를 지정합니다.

저는 producer-vpc에 생성하였습니다.

producer-vpc에 10.0.23.38, 10.0.11.217 의 privateIp로 privateEndpoint가 할당되었습니다.

privateEndpoint에 2개의 ip가 할당되는 이유는 하나는 vpc의 subnet에 또 다른 하나는 vpc의 게이트웨이에 할당됩니다.

private endpoint생성
생성된 2개의 private endpoint ip들

 

VPC내의 EC2 내에서 생성된 privateEndpoint도메인 조회

2개의 vpc에서 각각 생성된 secret manager의 ip조회를 조회해보면

1. producer-vpc의 ec2에서 privateEndpoint조회

private Endpoint가 생성된 producer-vpc존재하는 ec2에서 dig명령어로 private Endpoint 도메인을 조회하면 정상적으로 통하도록 vpc내의 privateIp대역에 할당되어있는걸 확인 할 수 있습니다.

producer ec2에서 private endpoint로 접근

1. consumer-vpc의 ec2에서 privateEndpoint조회

privateEndpoint가 생성되지 않은 consumer-vpc존재하는 ec2에서 dig명령어로 privateEndpoint 도메인을 조회하면 producer-vpc에서 조회된 private대역이 아니란걸 확인 할 수 있습니다.

consumer ec2에서 private endpoint로 접근

 

Route53에서 Private Host Zone 생성

PrivateEndpoint를 서로다른 vpc로 공유할 Private Host Zone을 생성합니다.

Private Host Zone을 생성할때 '호스팅 영역과 연결한 VPC'에 Private Endpoint 를 공유할 VPC를 모두 추가해주어야 합니다.

hosting 영역 생성
private hosting 영역 생성 시 private hosting zone를 공유할 vpc들 선택!

 

생성한 host zone에서 PrivateEndpoint 레코드 생성 

생성한 Route53 Private Host zone에서 Private Endpoint레코드를 secret.test라는 이름으로 생성합니다.

기존의 Private Endpoint를 레코드로 등록하려면 별칭(alias)를 활성화 후에 등록 할 수 있습니다.

private Host존에 Secret Manager Private Endpoint등록

생성된 레코드 확인

secret.text.common.com이라는 레코드로 private Endpoint가 할당되어 있음을 확인 할 수 있습니다.

 

2개의 VPC에서 Route53의 Private Host Zone의 Private Endpoint 조회

 

2. producer-vpc의 EC2에서 생성된 Private Host Zone의 레코드(Private Endpoint) 조회

dig명령어로 route53의 private host zone에 등록된 도메인을 질의하면 등록된 Private Endpoint의 ip와 동일한 pirvate대역의 ip를 확인 할 수 있습니다.

private record 등록 후 producer ec2에서 조회

2. consumer-vpc의 EC2에서 생성된 Private Host Zone의 레코드(Private Endpoint) 조회

consumer-vpc의 ec2에서 private endpoint를 조회했을때는 private대역의 ip가 나오지 않았지만,

Route53의 Private Host Zone에 레코드에 등록한 private endpoint의 도메인을 질의하면 동일한 private 대역의 ip를 확인 할 수 있습니다.

private record 등록 후 consumer ec2에서 조회