Azure Resource Manager의 새 API 플랫폼을 사용하여 네트워크 격리 변경
이 문서에서는 ARM(Azure Resource Manager)의 새 v2 API 플랫폼에서 네트워크 격리 변경 내용과 네트워크 격리에 미치는 영향에 대해 알아봅니다.
ARM(Azure Resource Manager)의 새로운 API 플랫폼이란?
v1 및 v2 API에서 사용하는 작업에는 두 가지 유형(ARM(Azure Resource Manager) 및 Azure Machine Learning 작업 영역)이 있습니다.
v1 API에서는 대부분의 작업에서 작업 영역을 사용했습니다. v2의 경우 공용 ARM을 사용하도록 대부분의 작업을 이동했습니다.
API 버전 | 공용 ARM | 작업 영역 가상 네트워크 내부 |
---|---|---|
v1 | 작업 영역 및 컴퓨팅 CRUD(만들기, 업데이트 및 삭제) 작업 | 실험과 같은 기타 작업 |
v2 | 작업 영역, 컴퓨팅, 데이터 저장소, 데이터 세트, 작업, 환경, 코드, 구성 요소, 엔드포인트와 같은 대부분의 작업 | 나머지 작업 |
v2 API는 한 곳에서 일관된 API를 제공합니다. Azure Resource Manager를 기반으로 하기 때문에 v2 API를 사용하여 리소스에 대해 Azure 역할 기반 액세스 제어 및 Azure Policy를 더 쉽게 사용할 수 있습니다.
Azure Machine Learning CLI v2는 새 v2 API 플랫폼을 사용합니다. 관리형 온라인 엔드포인트와 같은 새로운 기능은 v2 API 플랫폼을 사용하는 경우에만 사용할 수 있습니다.
V2의 네트워크 격리 변경 내용
이전 섹션에서 언급했듯이 작업에는 두 가지 유형(ARM 사용 및 작업 영역 사용)이 있습니다. 레거시 v1 API에서는 대부분의 작업에서 작업 영역을 사용했습니다. v1 API를 사용하여 작업 영역에 프라이빗 엔드포인트를 추가하면 작업 영역 또는 컴퓨팅 리소스에 대한 CRUD 작업을 제외한 모든 항목에 대한 네트워크 격리가 제공됩니다.
새 v2 API에서는 대부분의 작업에서 ARM을 사용합니다. 따라서 작업 영역에서 프라이빗 엔드포인트를 사용하도록 설정해도 동일한 수준의 네트워크 격리가 제공되지 않습니다. ARM을 사용하는 작업은 공용 네트워크를 통해 통신하며 작업에 사용되는 메타데이터(예: 리소스 ID) 또는 매개 변수를 포함합니다. 예를 들어 매개 변수입니다.
Important
대부분의 사람들은 공용 ARM 통신을 사용하는 것이 좋습니다.
- 공용 ARM 통신은 Azure 서비스를 사용한 관리 작업의 표준입니다. 예를 들어 Azure Storage 계정 또는 Azure Virtual Network를 만드는 데 ARM이 사용됩니다.
- Azure Machine Learning 작업은 공용 네트워크의 스토리지 계정(또는 VNet의 다른 스토리지)에 있는 데이터를 노출하지 않습니다. 예를 들어 VNet의 컴퓨팅 클러스터에서 실행되고 VNet의 스토리지 계정 데이터를 사용하는 학습 작업은 VNet을 사용하여 직접 데이터에 안전하게 액세스합니다.
- 공용 ARM과의 모든 통신은 TLS 1.2를 사용하여 암호화됩니다.
엔터프라이즈 솔루션에서 채택하기 전에 새 v2 API를 평가하는 데 시간이 필요하거나 공용 네트워크를 통한 통신 전송을 금지하는 회사 정책이 있는 경우 v1_legacy_mode 매개 변수를 사용하도록 설정할 수 있습니다. 사용하도록 설정하면 이 매개 변수는 작업 영역에 대한 v2 API를 사용하지 않도록 설정합니다.
Warning
v1_legacy_mode를 사용하도록 설정하면 v2 API에서 제공하는 기능을 사용할 수 없게 될 수 있습니다. 예를 들어 Azure Machine Learning 스튜디오의 일부 기능을 사용하지 못할 수 있습니다.
시나리오 및 필요한 작업
Warning
현재 v1_legacy_mode 매개 변수를 사용할 수 있지만 v2 API 차단 기능은 2022년 5월 15일부터 적용됩니다.
작업 영역에서 프라이빗 엔드포인트를 사용할 계획이 없다면 매개 변수를 사용하도록 설정할 필요가 없습니다.
공용 ARM과 통신하는 작업에 문제가 없으면 매개 변수를 사용하도록 설정할 필요가 없습니다.
작업 영역에서 프라이빗 엔드포인트를 사용하고 공용 네트워크를 통해 ARM 작업을 허용하지 않으려는 경우에만 매개 변수를 사용하도록 설정하면 됩니다.
매개 변수를 구현하면 다음 논리를 사용하여 기존 작업 영역에 소급 적용됩니다.
프라이빗 엔드포인트가 있는 기존 작업 영역이 있는 경우 플래그는 true입니다.
프라이빗 엔드포인트가 없는 기존 작업 영역(공용 작업 영역)이 있는 경우 플래그는 false입니다.
매개 변수가 구현된 후 플래그의 기본값은 작업 영역(프라이빗 엔드포인트 포함)을 만들 때 사용되는 기본 REST API 버전에 따라 달라집니다.
- API 버전이
2022-05-01
보다 이전이면 플래그는 기본적으로 true입니다. - API 버전이
2022-05-01
이상이면 플래그는 기본적으로 false입니다.
Important
작업 영역에서 v2 API를 사용하려면 v1_legacy_mode 매개 변수를 false로 설정해야 합니다.
v1_legacy_mode 매개 변수를 업데이트하는 방법
Warning
현재 v1_legacy_mode 매개 변수를 사용할 수 있지만 v2 API 차단 기능은 2022년 5월 15일부터 적용됩니다.
v1_legacy_mode를 업데이트하려면 다음 단계를 사용합니다.
Important
v2 API를 사용하지 않도록 설정하려면 Azure Machine Learning Python SDK v1을 사용합니다.
v1_legacy_mode를 사용하지 않도록 설정하려면 Workspace.update를 사용하고 v1_legacy_mode=false
를 설정합니다.
from azureml.core import Workspace
ws = Workspace.from_config()
ws.update(v1_legacy_mode=False)
Important
v1_legacy_mode 매개 변수를 true에서 false로 변경하여 작업 영역에 반영하는 데 약 30분에서 1시간 이상이 소요됩니다. 따라서 매개 변수를 false로 설정했지만 후속 작업에서 매개 변수가 true라는 오류가 발생하는 경우 몇 분 후에 시도해 보세요.