프라이빗 링크가 있는 Arc 지원 Kubernetes 클러스터에 프라이빗 연결 사용(미리 보기)
Azure Private Link를 사용하면 프라이빗 엔드포인트를 사용하여 Azure 서비스를 가상 네트워크에 안전하게 연결할 수 있습니다. 즉, 온-프레미스 Kubernetes 클러스터를 Azure Arc와 연결하고 공용 네트워크를 사용하는 대신 Azure ExpressRoute 또는 사이트 간 VPN 연결을 통해 모든 트래픽을 보낼 수 있습니다. Azure Arc에서 프라이빗 링크 범위 모델을 사용하여 여러 Kubernetes 클러스터가 단일 프라이빗 엔드포인트를 사용하여 해당 Azure Arc 리소스와 통신할 수 있습니다.
이 문서에서는 Azure Arc Private Link(미리 보기)를 사용하는 시기와 설정 방법을 설명합니다.
Important
Azure Arc Private Link 기능은 현재 동남 아시아를 제외하고 Azure Arc 지원 Kubernetes가 있는 모든 지역에서 미리 보기에 있습니다. 베타, 미리 보기로 제공되거나 아직 일반 공급으로 릴리스되지 않은 Azure 기능에 적용되는 약관은 Microsoft Azure 미리 보기에 대한 추가 사용 약관을 참조하세요.
장점
Private Link를 사용하면 다음을 수행할 수 있습니다.
- 공용 네트워크 액세스를 개방하지 않고 Azure Arc에 비공개로 연결
- Arc 지원 Kubernetes 클러스터의 데이터가 승인된 개인 네트워크를 통해서만 액세스되도록 합니다.
- 프라이빗 엔드포인트를 통해 연결되는 특정 Azure Arc 지원 Kubernetes 클러스터 및 기타 Azure 서비스 리소스(예: Azure Monitor)를 정의하여 개인 네트워크에서 데이터 반출을 방지합니다.
- ExpressRoute 및 Private Link를 사용하여 온-프레미스 개인 네트워크를 Azure Arc에 안전하게 연결
- Microsoft Azure 백본 네트워크 내에서 모든 트래픽을 유지합니다.
자세한 내용은 Azure Private Link의 주요 이점을 참조하세요.
작동 방식
Azure Arc 프라이빗 링크 범위는 프라이빗 엔드포인트(및 포함된 가상 네트워크)를 Azure 리소스에 연결합니다. 이 경우 Azure Arc 사용 가능한 Kubernetes 클러스터입니다. Arc 지원 Kubernetes 클러스터 확장을 사용하도록 설정하면 이러한 시나리오에 다른 Azure 리소스에 대한 연결이 필요할 수 있습니다. 예를 들어 Azure Monitor를 사용하면 클러스터에서 수집된 로그가 Log Analytics 작업 영역으로 전송됩니다.
앞서 나열된 Arc 지원 Kubernetes 클러스터에서 다른 Azure 리소스에 연결하려면 각 서비스에 대해 Private Link를 구성해야 합니다. 예를 보려면 Azure Monitor용 Private Link를 참조하세요.
현재 제한 사항
Private Link 설정을 계획할 때 이러한 현재 제한 사항을 고려합니다.
하나의 Azure Arc Private Link 범위만 가상 네트워크와 연결할 수 있습니다.
Azure Arc 지원 Kubernetes 클러스터는 하나의 Azure Arc 프라이빗 링크 범위에만 연결할 수 있습니다.
모든 온-프레미스 Kubernetes 클러스터는 동일한 DNS 전달자를 사용하여 올바른 프라이빗 엔드포인트 정보(FQDN 레코드 이름 및 개인 IP 주소)를 확인하여 동일한 프라이빗 엔드포인트를 사용해야 합니다. 자세한 내용은 Azure 프라이빗 엔드포인트 프라이빗 DNS 영역 값을 참조 하세요. Azure Arc 지원 Kubernetes 클러스터, Azure Arc 프라이빗 링크 범위 및 가상 네트워크는 동일한 Azure 지역에 있어야 합니다. 프라이빗 엔드포인트와 가상 네트워크도 동일한 Azure 지역에 있어야 하지만 이 지역은 Azure Arc 프라이빗 링크 범위 및 Arc 지원 Kubernetes 클러스터의 지역과 다를 수 있습니다.
미리 보기 중에 온-프레미스 네트워크 방화벽을 통해 Microsoft Entra ID, Azure Resource Manager 및 Microsoft Container Registry 서비스 태그에 대한 트래픽을 허용해야 합니다.
Azure Monitor와 같이 사용하는 다른 Azure 서비스에는 가상 네트워크에 자체 프라이빗 엔드포인트가 필요할 수 있습니다.
프라이빗 링크를 통해 네트워크 연결을 지원하는 클러스터 확장
프라이빗 링크로 구성된 Azure Arc 지원 Kubernetes 클러스터에서 이러한 확장은 프라이빗 링크를 통한 엔드투엔드 연결을 지원합니다.
프라이빗 링크 설정 계획
프라이빗 링크를 통해 Kubernetes 클러스터를 Azure Arc에 연결하려면 다음과 같이 네트워크를 구성합니다.
- 사이트 간 VPN 또는 ExpressRoute 회로를 사용하여 온-프레미스 네트워크와 Azure 가상 네트워크 간에 연결을 설정합니다.
- 프라이빗 엔드포인트를 통해 Azure Arc와 통신할 수 있는 Kubernetes 클러스터를 제어하고 프라이빗 엔드포인트를 사용하여 Azure 가상 네트워크와 연결하는 Azure Arc Private Link 범위를 배포합니다.
- 로컬 네트워크에서 DNS 구성을 업데이트하여 프라이빗 엔드포인트 주소를 확인합니다.
- Microsoft Entra ID, Azure Resource Manager 및 Microsoft Container Registry에 대한 액세스를 허용하도록 로컬 방화벽을 구성합니다.
- Azure Arc 지원 Kubernetes 클러스터를 Azure Arc 프라이빗 링크 범위와 연결합니다.
- 필요에 따라 Azure Monitor와 같이 Azure Arc 지원 Kubernetes 클러스터와 함께 사용되는 다른 Azure 서비스에 대한 프라이빗 엔드포인트를 배포합니다.
이 문서의 나머지 부분에는 ExpressRoute 회로 또는 사이트 간의 VPN 연결이 이미 설정되어 있다고 가정합니다.
네트워크 구성
Azure Arc 지원 Kubernetes는 여러 Azure 서비스와 통합되어 하이브리드 Kubernetes 클러스터에 클라우드 관리 및 거버넌스를 제공합니다. 이러한 서비스의 대부분은 이미 프라이빗 엔드포인트를 제공합니다. 그러나 해당 서비스가 프라이빗 엔드포인트를 제공할 때까지 인터넷을 통해 Microsoft Entra ID 및 Azure Resource Manager에 대한 액세스를 허용하도록 방화벽 및 라우팅 규칙을 구성해야 합니다. 또한 Microsoft Container Registry(및 Microsoft Container Registry의 전구체로 AzureFrontDoor.FirstParty)에 대한 액세스를 허용하여 이미지 및 Helm 차트를 끌어와 Azure Monitor와 같은 서비스를 사용하도록 설정하고 Kubernetes 클러스터에서 Azure Arc 에이전트를 초기 설정하도록 허용해야 합니다.
이 구성을 사용하도록 설정하는 방법에는 두 가지가 있습니다.
네트워크가 Azure VPN 또는 ExpressRoute 회로를 통해 모든 인터넷 바인딩 트래픽을 라우팅하도록 구성된 경우 서비스 태그를 사용하여 Microsoft Entra ID, Azure Resource Manager, Azure Front Door 및 Microsoft Container Registry에 대한 아웃바운드 TCP 443(HTTPS) 액세스를 허용하도록 Azure의 서브넷과 연결된 NSG(네트워크 보안 그룹)를 구성할 수 있습니다. NSG 규칙은 다음과 같습니다.
설정 Microsoft Entra ID 규칙 Azure Resource Manager 규칙 AzureFrontDoorFirstParty 규칙 Microsoft Container Registry 규칙 원본 Virtual Network Virtual Network Virtual Network Virtual Network 원본 포트 범위 * * * * 대상 서비스 태그 서비스 태그 서비스 태그 서비스 태그 대상 서비스 태그 AzureActiveDirectory
AzureResourceManager
AzureFrontDoor.FirstParty
MicrosoftContainerRegistry
대상 포트 범위 443 443 443 443 프로토콜 TCP TCP TCP TCP 작업 허용 허용 허용(인바운드 및 아웃바운드 모두) 허용 우선 순위 150(인터넷 액세스를 차단하는 규칙보다 작아야 함) 151(인터넷 액세스를 차단하는 규칙보다 작아야 함) 152(인터넷 액세스를 차단하는 규칙보다 작아야 함) 153(인터넷 액세스를 차단하는 규칙보다 작아야 함) 속성 AllowAADOutboundAccess
AllowAzOutboundAccess
AllowAzureFrontDoorFirstPartyAccess
AllowMCROutboundAccess
또는 Microsoft Entra ID, Azure Resource Manager 및 Microsoft Container Registry에 대한 아웃바운드 TCP 443(HTTPS) 액세스 및 다운로드 가능한 서비스 태그 파일을 사용하는 인바운드 및 아웃바운드 액세스를 허용하도록 로컬 네트워크에서 방화벽을
AzureFrontDoor.FirstParty
구성합니다. JSON 파일에는 Microsoft Entra ID, Azure Resource ManagerAzureFrontDoor.FirstParty
및 Microsoft Container Registry에서 사용하는 모든 공용 IP 주소 범위가 포함되며 변경 내용을 반영하도록 매월 업데이트됩니다. Microsoft Entra 서비스 태그는AzureActiveDirectory
Azure Resource Manager의 서비스 태그,AzureResourceManager
Microsoft Container Registry의 서비스 태그,MicrosoftContainerRegistry
Azure Front Door의 서비스 태그입니다AzureFrontDoor.FirstParty
. 네트워크 관리자 및 네트워크 방화벽 공급업체에 문의하여 방화벽 규칙을 구성하는 방법을 알아보세요.
Azure Arc 프라이빗 링크 범위 만들기
Azure Portal에 로그인합니다.
Azure Portal에서 리소스 만들기로 이동하여 Azure Arc Private Link 범위를 검색한 다음 만들기를 선택합니다. 또는 Azure Portal의 Azure Arc Private Link 범위 페이지로 직접 이동한 다음, Azure Arc Private Link 범위 만들기를 선택합니다.
구독 및 리소스 그룹을 선택합니다. 미리 보기 중에 가상 네트워크 및 Azure Arc 지원 Kubernetes 클러스터는 Azure Arc 프라이빗 링크 범위와 동일한 구독에 있어야 합니다.
Azure Arc Private Link 범위의 이름을 지정합니다.
이 Azure Arc Private Link 범위와 연결된 모든 Arc 지원 Kubernetes 클러스터가 프라이빗 엔드포인트를 통해 서비스에 데이터를 보내도록 하려면 공용 네트워크 액세스 허용을 선택합니다. 이렇게 하면 이 Azure Arc Private Link 범위와 연결된 Kubernetes 클러스터가 프라이빗 네트워크 또는 공용 네트워크를 통해 서비스와 통신할 수 있습니다. 필요에 따라 범위를 만든 후 이 설정을 변경할 수 있습니다.
검토 + 만들기를 선택합니다.
유효성 검사가 완료되면 만들기를 선택합니다.
프라이빗 엔드포인트 만들기
Azure Arc 프라이빗 링크 범위를 만들고 나면 프라이빗 엔드포인트를 사용하여 하나 이상의 가상 네트워크에 연결해야 합니다. 프라이빗 엔드포인트는 가상 네트워크 주소 공간에서 개인 IP의 Azure Arc 서비스에 대한 액세스를 표시합니다.
가상 네트워크의 프라이빗 엔드포인트를 사용하면 이러한 엔드포인트의 공용 IP를 사용하는 대신 네트워크 풀의 개인 IP를 통해 Azure Arc 지원 Kubernetes 클러스터 엔드포인트에 도달할 수 있습니다. 이를 통해 요청되지 않은 아웃바운드 트래픽에 대해 VNet을 열지 않고 Azure Arc 지원 Kubernetes 클러스터를 계속 사용할 수 있습니다. 프라이빗 엔드포인트에서 리소스로의 트래픽은 Microsoft Azure를 통과하며 공용 네트워크로 라우팅되지 않습니다.
Azure Portal에서 Azure Arc Private Link 범위 리소스로 이동합니다.
리소스 메뉴의 구성 아래에서 프라이빗 엔드포인트 연결을 선택합니다.
추가를 선택하여 엔드포인트 만들기 프로세스를 시작합니다. Private Link 센터에서 시작된 연결을 선택한 다음 승인을 선택하여 승인할 수도 있습니다.
구독 및 리소스 그룹을 선택하고 엔드포인트의 이름을 입력합니다. 가상 네트워크와 동일한 지역을 선택합니다.
다음: 리소스를 선택합니다.
리소스 페이지에서 이러한 값을 아직 선택하지 않은 경우 다음을 수행합니다.
- Azure Arc 프라이빗 링크 범위 리소스가 포함된 구독을 선택합니다.
- 리소스 종류에 대해 .를 선택합니다
Microsoft.HybridCompute/privateLinkScopes
. - 리소스의 경우 이전에 만든 Azure Arc Private Link 범위를 선택합니다.
- 다음: Virtual Network를 선택합니다.
Virtual Network 페이지에서 다음을 수행합니다.
- Azure Arc 지원 Kubernetes 클러스터에 연결하려는 가상 네트워크 및 서브넷을 선택합니다.
- 다음: DNS를 선택합니다.
DNS 페이지에서 다음을 수행합니다.
프라이빗 DNS 영역과 통합에서 예를 선택합니다. 새 프라이빗 DNS 영역이 만들어집니다.
또는 DNS 레코드를 수동으로 관리하려면 아니요를 선택한 다음 이 프라이빗 엔드포인트 및 프라이빗 범위 구성을 포함하여 Private Link 설정을 완료합니다. 다음으로, Azure 프라이빗 엔드포인트 프라이빗 DNS 영역 값의 지침에 따라 DNS를 구성합니다. Private Link 설정을 위한 준비로 빈 레코드를 만들지 않도록 합니다. 만든 DNS 레코드는 기존 설정을 재정의하고 Arc 지원 Kubernetes 클러스터와의 연결에 영향을 줄 수 있습니다.
Important
프라이빗 링크를 사용하는 Arc 리소스와 프라이빗 링크를 사용하지 않는 리소스 모두에 동일한 VNET/DNS 영역을 사용할 수 없습니다. 프라이빗 링크가 연결되지 않은 Arc 리소스는 퍼블릭 엔드포인트로 확인되어야 합니다.
검토 + 만들기를 선택합니다.
유효성 검사를 통과하도록 합니다.
만들기를 실행합니다.
온-프레미스 DNS 전달 구성
온-프레미스 Kubernetes 클러스터는 프라이빗 링크 DNS 레코드를 프라이빗 엔드포인트 IP 주소로 확인할 수 있어야 합니다. 구성 단계는 Azure 프라이빗 DNS 영역을 사용하여 DNS 레코드를 유지 관리하는지 또는 자체 DNS 서버 온-프레미스를 유지 관리하는지에 따라 달라집니다.
Azure 통합 개인 DNS 영역을 사용하는 DNS 구성
프라이빗 엔드포인트를 만들 때 프라이빗 DNS 영역과 통합하기 위해 예를 선택한 경우 온-프레미스 Kubernetes 클러스터는 기본 제공 Azure DNS 서버에 DNS 쿼리를 전달하여 프라이빗 엔드포인트 주소를 올바르게 확인할 수 있어야 합니다. Azure에는 DNS 전달자가 필요합니다(특수 목적으로 구축된 VM 또는 DNS 프록시가 사용하도록 설정된 Azure Firewall 인스턴스). 그런 다음, 쿼리를 Azure로 전달하도록 온-프레미스 DNS 서버를 구성하여 프라이빗 엔드포인트 IP 주소를 확인할 수 있습니다.
자세한 내용은 온-프레미스 DNS 전달자를 사용하는 Azure Private Resolver를 참조 하세요.
수동 DNS 서버 구성
프라이빗 엔드포인트를 만드는 동안 Azure 프라이빗 DNS 영역 사용을 옵트아웃한 경우 온-프레미스 DNS 서버에 필요한 DNS 레코드를 만들어야 합니다.
- Azure Portal에서 가상 네트워크 및 프라이빗 링크 범위와 연결된 프라이빗 엔드포인트 리소스로 이동합니다.
- 서비스 메뉴의 설정에서 DNS 구성을 선택하여 DNS 서버에서 설정해야 하는 DNS 레코드 및 해당 IP 주소 목록을 확인합니다. FQDN 및 IP 주소는 프라이빗 엔드포인트에 대해 선택한 지역과 서브넷에서 사용 가능한 IP 주소에 따라 변경됩니다.
- DNS 서버 공급업체의 지침에 따라 포털의 테이블과 일치하도록 필요한 DNS 영역 및 A 레코드를 추가합니다. 네트워크에 대해 적절하게 범위가 지정된 DNS 서버를 선택해야 합니다. 이 DNS 서버를 사용하는 모든 Kubernetes 클러스터는 이제 프라이빗 엔드포인트 IP 주소를 확인하고 Azure Arc 프라이빗 링크 범위와 연결되어야 합니다. 그렇지 않으면 연결이 거부됩니다.
프라이빗 링크 구성
참고 항목
Azure Arc 지원 Kubernetes 클러스터에 대한 프라이빗 링크 구성은 connectedk8s
CLI 확장 버전 1.3.0부터 지원되지만 2.3.0보다 큰 Azure CLI 버전이 필요합니다. connectedk8s
CLI 확장에 대해 1.3.0보다 높은 버전을 사용하는 경우 2.3.0보다 큰 Azure CLI 버전을 실행 중인 경우에만 클러스터의 유효성을 검사하고 Azure Arc에 연결하는 유효성 검사를 도입했습니다.
기존 Azure Arc 지원 Kubernetes 클러스터에 대한 프라이빗 링크를 구성하거나 다음 명령을 사용하여 Kubernetes 클러스터를 Azure Arc에 처음으로 온보딩할 때 구성할 수 있습니다.
az connectedk8s connect -g <resource-group-name> -n <connected-cluster-name> -l <location> --enable-private-link true --private-link-scope-resource-id <pls-arm-id>
매개 변수 이름 | 설명 |
---|---|
--enable-private-link |
로 설정된 경우 프라이빗 링크 기능을 사용하도록 설정합니다 True . |
--private-link-scope-resource-id |
이전에 만든 프라이빗 링크 범위 리소스의 ID입니다. 예: /subscriptions//resourceGroups//providers/Microsoft.HybridCompute/privateLinkScopes/ |
Azure Arc 프라이빗 링크 범위를 구성하기 전에 설정된 Azure Arc 지원 Kubernetes 클러스터의 경우 다음 단계를 사용하여 Azure Portal에서 프라이빗 링크를 구성합니다.
- Azure Portal에서 Azure Arc Private Link 범위 리소스로 이동합니다.
- 서비스 메뉴의 구성에서 Azure Arc 리소스를 선택합니다. 그런 후 추가를 선택합니다.
- Private Link 범위와 동일한 구독 및 지역에 Arc 지원 Kubernetes 클러스터가 모두 표시됩니다. Private Link 범위와 연결하려는 각 Kubernetes 클러스터에 대한 확인란을 선택합니다. 완료되면 [선택]을 선택하여 변경 내용을 저장합니다.
문제 해결
문제가 발생하면 다음 제안이 도움이 될 수 있습니다.
온-프레미스 DNS 서버를 확인하여 Azure DNS에 전달하거나 프라이빗 링크 영역에서 적절한 A 레코드로 구성되어 있는지 확인합니다. 이러한 조회 명령은 Azure Virtual Network에서 개인 IP 주소를 반환해야 합니다. 공용 IP 주소를 확인하는 경우 서버 및 네트워크의 DNS 구성을 다시 확인합니다.
nslookup gbl.his.arc.azure.com nslookup agentserviceapi.guestconfiguration.azure.com nslookup dp.kubernetesconfiguration.azure.com
Kubernetes 클러스터를 온보딩하는 데 문제가 있는 경우 Microsoft Entra ID, Azure Resource Manager, AzureFrontDoor.FirstParty 및 Microsoft Container Registry 서비스 태그를 로컬 네트워크 방화벽에 추가했음을 확인합니다.
자세한 문제 해결 팁은 Azure 프라이빗 엔드포인트 연결 문제 해결을 참조 하세요.
다음 단계
- Azure 프라이빗 엔드포인트에 대해 자세히 알아봅니다.
- Azure Private Endpoint 연결 문제 해결 방법에 대해 알아봅니다.
- Azure Monitor용 Private Link 구성 방법에 대해 알아봅니다.