Azure Data Lake Storage Gen2에 대한 데이터 흐름 엔드포인트 구성
Important
이 페이지에는 미리 보기 상태인 Kubernetes 배포 매니페스트를 사용하여 Azure IoT Operations 구성 요소를 관리하기 위한 지침이 포함되어 있습니다. 이 기능은 몇 가지 제한 사항을 제공하며 프로덕션 워크로드에 사용하면 안 됩니다.
베타, 미리 보기로 제공되거나 아직 일반 공급으로 릴리스되지 않은 Azure 기능에 적용되는 약관은 Microsoft Azure 미리 보기에 대한 추가 사용 약관을 참조하세요.
Azure IoT Operations에서 Azure Data Lake Storage Gen2로 데이터를 보내려면 데이터 흐름 엔드포인트를 구성할 수 있습니다. 이 구성을 사용하면 대상 엔드포인트, 인증 방법, 테이블 및 기타 설정을 지정할 수 있습니다.
필수 조건
- Azure IoT Operations의 인스턴스
- Azure Data Lake Storage Gen2 계정
- 스토리지 계정에서 미리 만든 스토리지 컨테이너
관리 ID에 권한 할당
Azure Data Lake Storage Gen2에 대한 데이터 흐름 엔드포인트를 구성하려면 사용자 할당 또는 시스템 할당 관리 ID를 사용하는 것이 좋습니다. 이 방법은 안전하며 자격 증명을 수동으로 관리할 필요가 없습니다.
Azure Data Lake Storage Gen2를 만든 후에는 스토리지 계정에 쓸 수 있는 권한을 부여하는 Azure IoT Operations 관리 ID에 역할을 할당해야 합니다.
시스템 할당 관리 ID를 사용하는 경우 Azure Portal에서 Azure IoT Operations 인스턴스로 이동하여 개요를 선택합니다. Azure IoT Operations Arc 확장 후에 나열된 확장의 이름을 복사합니다. 예를 들어 azure-iot-operations-xxxx7입니다. 시스템 할당 관리 ID는 Azure IoT Operations Arc 확장의 동일한 이름을 사용하여 찾을 수 있습니다.
그런 다음, Azure Storage 계정 >액세스 제어(IAM)>로 이동하여 역할 할당을 추가합니다.
- 역할 탭에서 다음과 같은
Storage Blob Data Contributor
적절한 역할을 선택합니다. 이렇게 하면 관리 ID에 Azure Storage Blob 컨테이너에 쓰는 데 필요한 권한이 부여됩니다. 자세한 내용은 Microsoft Entra ID를 사용하여 Blob에 대한 액세스 권한 부여를 참조하세요. - 멤버 탭에서 다음을 수행 합니다 .
- 시스템 할당 관리 ID를 사용하는 경우 액세스 할당을 위해 사용자, 그룹 또는 서비스 주체 옵션을 선택한 다음, + 멤버를 선택하고 Azure IoT Operations Arc 확장의 이름을 검색합니다.
- 사용자 할당 관리 ID를 사용하는 경우 액세스 할당에 대한 관리 ID 옵션을 선택한 다음, + 구성원을 선택하고 클라우드 연결에 대해 설정된 사용자 할당 관리 ID를 검색합니다.
Azure Data Lake Storage Gen2에 대한 데이터 흐름 엔드포인트 만들기
IoT 작업 포털에서 데이터 흐름 엔드포인트 탭을 선택합니다.
새 데이터 흐름 엔드포인트 만들기에서 Azure Data Lake Storage(2세대) 새로 만들기를> 선택합니다.
엔드포인트에 대해 다음 설정을 입력합니다.
설정 Description 이름 데이터 흐름 엔드포인트의 이름입니다. 호스트 형식의 Azure Data Lake Storage Gen2 엔드포인트의 <account>.blob.core.windows.net
호스트 이름입니다. 계정 자리 표시자를 엔드포인트 계정 이름으로 바꿉다.인증 방법 인증에 사용되는 방법입니다. 시스템 할당 관리 ID 또는 사용자 할당 관리 ID를 선택하는 것이 좋습니다. 클라이언트 ID 사용자 할당 관리 ID의 클라이언트 ID입니다. 사용자 할당 관리 ID를 사용하는 경우 필요합니다. 테넌트 ID 사용자 할당 관리 ID의 테넌트 ID입니다. 사용자 할당 관리 ID를 사용하는 경우 필요합니다. 액세스 토큰 비밀 이름 SAS 토큰을 포함하는 Kubernetes 비밀의 이름입니다. 액세스 토큰을 사용하는 경우 필수입니다. 적용을 선택하여 엔드포인트를 프로비전합니다.
액세스 토큰 인증 사용
액세스 토큰 섹션의 단계에 따라 스토리지 계정에 대한 SAS 토큰을 가져와 Kubernetes 비밀에 저장합니다.
그런 다음 DataflowEndpoint 리소스를 만들고 액세스 토큰 인증 방법을 지정합니다. 여기서 SAS 토큰 및 기타 자리 표시자 값을 포함하는 비밀의 이름으로 바꿉 <SAS_SECRET_NAME>
니다.
작업 환경 포털에서 비밀을 만드는 단계는 액세스 토큰 섹션을 참조하세요.
사용 가능한 인증 방법
다음 인증 방법은 Azure Data Lake Storage Gen2 엔드포인트에 사용할 수 있습니다.
시스템 할당 관리 ID
데이터 흐름 엔드포인트를 구성하기 전에 스토리지 계정에 쓸 수 있는 권한을 부여하는 Azure IoT Operations 관리 ID에 역할을 할당합니다.
- Azure Portal에서 Azure IoT Operations 인스턴스로 이동하여 개요를 선택합니다.
- Azure IoT Operations Arc 확장 후에 나열된 확장의 이름을 복사합니다. 예를 들어 azure-iot-operations-xxxx7입니다.
- 권한을 부여해야 하는 클라우드 리소스로 이동합니다. 예를 들어 Azure Storage 계정 >액세스 제어(IAM)>역할 할당 추가로 이동합니다.
- 역할 탭에서 적절한 역할을 선택합니다.
- 구성원 탭에서 액세스 권한 할당을 위해 사용자, 그룹 또는 서비스 주체 옵션을 선택한 다음, + 멤버를 선택하고 Azure IoT Operations 관리 ID를 검색합니다. 예를 들어 azure-iot-operations-xxxx7입니다.
그런 다음 시스템 할당 관리 ID 설정을 사용하여 데이터 흐름 엔드포인트를 구성합니다.
작업 환경 데이터 흐름 엔드포인트 설정 페이지에서 기본 탭을 선택한 다음 인증 방법>시스템 할당 관리 ID를 선택합니다.
대부분의 경우 서비스 대상 그룹을 지정할 필요가 없습니다. 대상 그룹을 지정하지 않으면 기본 대상 그룹 범위가 스토리지 계정으로 범위가 지정된 관리 ID가 만들어집니다.
시스템 할당 관리 ID 대상 그룹을 재정의해야 하는 경우 설정을 지정할 audience
수 있습니다.
대부분의 경우 서비스 대상 그룹을 지정할 필요가 없습니다. 대상 그룹을 지정하지 않으면 기본 대상 그룹 범위가 스토리지 계정으로 범위가 지정된 관리 ID가 만들어집니다.
사용자 할당 관리 ID
인증에 사용자 할당 관리 ID를 사용하려면 먼저 보안 설정을 사용하도록 설정된 Azure IoT 작업을 배포해야 합니다. 그런 다음 클라우드 연결에 대한 사용자 할당 관리 ID를 설정해야 합니다. 자세한 내용은 Azure IoT Operations 배포에서 보안 설정 사용을 참조하세요.
데이터 흐름 엔드포인트를 구성하기 전에 스토리지 계정에 쓸 수 있는 권한을 부여하는 사용자 할당 관리 ID에 역할을 할당합니다.
- Azure Portal에서 권한을 부여해야 하는 클라우드 리소스로 이동합니다. 예를 들어 Azure Storage 계정 >액세스 제어(IAM)>역할 할당 추가로 이동합니다.
- 역할 탭에서 적절한 역할을 선택합니다.
- 구성원 탭에서 액세스 할당에 대한 관리 ID 옵션을 선택한 다음, + 구성원을 선택하고 사용자 할당 관리 ID를 검색합니다.
그런 다음 사용자 할당 관리 ID 설정을 사용하여 데이터 흐름 엔드포인트를 구성합니다.
작업 환경 데이터 흐름 엔드포인트 설정 페이지에서 기본 탭을 선택한 다음, 인증 방법>사용자 할당 관리 ID를 선택합니다.
적절한 필드에 사용자 할당 관리 ID 클라이언트 ID 및 테넌트 ID를 입력합니다.
여기서 범위는 선택 사항이며 기본값은 .입니다 https://storage.azure.com/.default
. 기본 범위를 재정의해야 하는 경우 Bicep 또는 Kubernetes 매니페스트를 통해 설정을 지정 scope
합니다.
액세스 토큰
액세스 토큰을 사용하는 것은 대체 인증 방법입니다. 이 메서드를 사용하려면 SAS 토큰을 사용하여 Kubernetes 비밀을 만들고 DataflowEndpoint 리소스에서 비밀을 참조해야 합니다.
ADLSv2(Azure Data Lake Storage Gen2) 계정에 대한 SAS 토큰을 가져옵니다. 예를 들어 Azure Portal을 사용하여 스토리지 계정으로 이동합니다. 왼쪽 메뉴에서 보안 + 네트워킹>공유 액세스 서명을 선택합니다. 다음 표를 사용하여 필요한 사용 권한을 설정합니다.
매개 변수 | 사용 설정 |
---|---|
허용되는 서비스 | Blob |
허용되는 리소스 유형 | 개체, 컨테이너 |
허용되는 권한 | 읽기, 쓰기, 삭제, 나열, 만들기 |
보안을 강화하고 최소 권한 원칙을 따르려면 특정 컨테이너에 대한 SAS 토큰을 생성할 수 있습니다. 인증 오류를 방지하려면 SAS 토큰에 지정된 컨테이너가 구성의 데이터 흐름 대상 설정과 일치하는지 확인합니다.
Important
작업 환경 포털을 사용하여 비밀을 관리하려면 먼저 Azure Key Vault를 구성하고 워크로드 ID를 사용하도록 설정하여 보안 설정을 사용하여 Azure IoT Operations를 사용하도록 설정해야 합니다. 자세한 내용은 Azure IoT Operations 배포에서 보안 설정 사용을 참조하세요.
작업 환경 데이터 흐름 엔드포인트 설정 페이지에서 기본 탭을 선택한 다음 인증 방법>액세스 토큰을 선택합니다.
여기서 동기화된 비밀 이름 아래에 비밀의 이름을 입력합니다. 이 이름은 데이터 흐름 엔드포인트 설정에서 비밀을 참조하는 데 사용되며 Kubernetes 클러스터에 저장된 비밀의 이름입니다.
그런 다음 액세스 토큰 비밀 이름 아래에서 참조 추가를 선택하여 Azure Key Vault에서 비밀을 추가합니다. 다음 페이지에서 Azure Key Vault에서 추가 또는 새 비밀 만들기를 사용하여 Azure Key Vault에서 비밀을 선택합니다.
새로 만들기를 선택하는 경우 다음 설정을 입력합니다.
설정 | 설명 |
---|---|
비밀 이름 | Azure Key Vault의 비밀 이름입니다. 나중에 목록에서 비밀을 선택하기 위해 기억하기 쉬운 이름을 선택합니다. |
비밀 값 | 의 형식으로 된 SAS 토큰입니다 'sv=2022-11-02&ss=b&srt=c&sp=rwdlax&se=2023-07-22T05:47:40Z&st=2023-07-21T21:47:40Z&spr=https&sig=<signature>' . |
활성화 날짜 설정 | 설정하면 비밀이 활성화되는 날짜입니다. |
만료 날짜 설정 | 설정하면 비밀이 만료되는 날짜입니다. |
고급 설정
일괄 처리 대기 시간 및 메시지 수와 같은 Azure Data Lake Storage Gen2 엔드포인트에 대한 고급 설정을 설정할 수 있습니다.
batching
설정을 사용하여 메시지를 대상으로 보내기 전에 최대 메시지 수와 최대 대기 시간을 구성할 수 있습니다. 이 설정은 네트워크 대역폭을 최적화하고 대상에 대한 요청 수를 줄이려는 경우에 유용합니다.
필드 | 설명 | 필수 |
---|---|---|
latencySeconds |
메시지를 대상으로 보내기 전에 대기할 최대 시간(초)입니다. 기본값은 60초입니다. | 아니요 |
maxMessages |
대상에 보낼 최대 메시지 수입니다. 기본값은 100000개 메시지입니다. | 아니요 |
예를 들어 최대 메시지 수를 1000으로 구성하고 최대 대기 시간을 100초로 구성하려면 다음 설정을 사용합니다.
작업 환경에서 데이터 흐름 엔드포인트에 대한 고급 탭을 선택합니다.
다음 단계
- 데이터 흐름에 대한 자세한 내용은 데이터 흐름 만들기를 참조 하세요.
- 데이터 흐름을 사용하여 Azure Data Lake Storage Gen2로 데이터를 보내는 방법에 대한 자습서를 보려면 자습서: Azure Data Lake Storage Gen2로 데이터 보내기를 참조하세요.