본문 바로가기

Cloud/AZURE

Azure Private Link : Part 1

Today Keys : private link, privatelink, endpoint, private, provider, consumer, service, load balancer, azure, microsoft


이번 포스팅에서는 Azure에서 사용자의 서비스를 다른 사용자가 인터넷 통신이나, Peering 과 같은 VNet 연동을 통하지 않고 서비스를 호출 할 수 있도록 도와주는 Private Link에 대한 예제를 다룹니다.
Private Link에 대한 기술 정리 내용은 추후 포스팅에서 다시 다루며, 이번 포스팅에서는 Private link를 사용하기 위한 예제만 다룹니다.


이번 포스팅에서 다루게 될 Private Link에 대한 구성입니다.

Service Provider 역할을 하는 곳에서 간단한 웹페이지를 제공하는 서버가 있고, 그 앞에 로드밸런서가 연결됩니다.

각 로드 밸런서는 Internet facing과 Internal이 모두 있습니다.

Private Link로 제공되는 로드밸런서는 2가지 타입을 모두 지원합니다.

Consumer에서는 Private Link로 만들어진 서비스를 이용하기 위해서 Private Endpoint를 이용해서

Provider가 제공하는 서비스를 이용하게 됩니다.

    ※ 본 예제에서는 위의 모든 구성 모두를 다루지는 않습니다. 

 

     먼저 Provider에서 Private Link 서비스를 만듭니다.

 

     Private link에 연결한 LB와 VM은 이미 정상적으로 생성된 상태로 가정합니다. 

 

     Private link service를 접근하기 위한 제어 방식을 정합니다. 

 

     tag도 지정할 수 있지만, 예제에서는 패스합니다. 

 

    입력한 내용이 정상적으로 맞는 검증 후, Private link service를 생성합니다. 

 

     자 다음은, Consumer에서 Provider가 생성한 Private link service를 사용하도록 endpoint를 생성합니다. 

 

private link service의 리소스 정보를 입력합니다.

 

    이제 Private link service로 연결하는 endpoint가 만들어진 서브넷을 지정합니다.

해당 서브넷에 private link service를 위한 네트워크 카드가 생성된다고 보면 됩니다. 

Private DNS를 연결하는 것은 현재 로드맵이며, 지원되지는 않습니다. 

 

     tag는 마찬가지로 패스합니다 

 

    정보를 확인하고 생성합니다. 

 

    생성된 Endpoint는 Pending 상태이기 떄문에 Provider에서 Approve를 해주어야 합니다. 

 

    Provider에서 Approve 요청이 들어온 것을 확인 후, Approve를 합니다. 

 

    다음과 같이 어떤 Connection에 대한 Approve인지 학인을 다시하고, Approve합니다. 

 

     Consumer에서 정상적으로 Approve가 된 것을 볼 수 있습니다. 

 

    Consumer에서 Private Link Service를 호출하기 위해서 만든 Private Endpoint에 대한 주소로 서비스를 호출하면

다음과 같이 정상적으로 서비스가 호출된 것을 볼 수 있습니다.