중요합니다
이 페이지에는 미리 보기 상태인 Kubernetes 배포 매니페스트를 사용하여 Azure IoT Operations 구성 요소를 관리하기 위한 지침이 포함되어 있습니다. 이 기능은 몇 가지 제한 사항을 제공하며 프로덕션 워크로드에 사용하면 안 됩니다.
베타, 미리 보기 또는 아직 일반 공급으로 릴리스되지 않은 Azure 기능에 적용되는 법적 용어는 Microsoft Azure 미리 보기에 대한 추가 사용 약관 을 참조하세요.
데이터 흐름 엔드포인트를 구성하여 Azure IoT Operations에서 Azure Data Lake Storage Gen2로 데이터를 보냅니다. 이 구성을 사용하면 대상 엔드포인트, 인증 방법, 테이블 및 기타 설정을 지정할 수 있습니다.
필수 구성 요소
관리 ID에 권한 할당
Azure Data Lake Storage Gen2에 대한 데이터 흐름 엔드포인트를 구성하려면 사용자 할당 또는 시스템 할당 관리 ID를 사용합니다. 이 방법은 안전하며 자격 증명을 수동으로 관리할 필요가 없습니다.
Azure Data Lake Storage Gen2를 만든 후에는 Azure IoT 작업 관리 ID에 스토리지 계정에 대한 쓰기 권한을 부여하는 역할을 할당해야 합니다.
시스템 할당 관리 ID를 사용하는 경우 Azure Portal에서 Azure IoT Operations 인스턴스로 이동하여 개요를 선택합니다.
Azure IoT Operations Arc 확장 후에 나열된 확장의 이름을 복사합니다. 예를 들어, azure-iot-operations-xxxx7입니다. 시스템이 할당한 관리 ID는 Azure IoT 작업 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세대)>새로 만들기를 선택합니다.
엔드포인트에 대해 다음 설정을 입력합니다.
설정 |
설명 |
이름 |
데이터 흐름 엔드포인트의 이름입니다. |
호스트 |
<account>.blob.core.windows.net 형식의 Azure Data Lake Storage Gen2 엔드포인트의 호스트 이름. 계정 자리 표시자를 엔드포인트 계정 이름으로 바꿉니다. |
인증 방법 |
인증에 사용되는 방법입니다.
시스템 할당 관리 ID 또는 사용자 할당 관리 ID를 선택하는 것이 좋습니다. |
클라이언트 ID |
사용자가 할당한 관리 ID의 클라이언트 ID.
사용자 할당 관리 ID를 사용하는 경우 필요합니다. |
테넌트 ID |
사용자가 할당한 관리 ID의 테넌트 ID.
사용자 할당 관리 ID를 사용하는 경우 필요합니다. |
동기화된 비밀 이름 |
데이터 흐름 엔드포인트 설정 및 Kubernetes 클러스터의 비밀에 대한 참조 이름입니다.
액세스 토큰을 사용하는 경우 필수입니다. |
액세스 토큰 비밀 이름 |
SAS 토큰을 포함하는 Kubernetes 비밀의 이름.
액세스 토큰을 사용하는 경우 필수입니다. |
적용을 선택하여 엔드포인트를 프로비전합니다.
만들기 또는 바꾸기
az iot ops 데이터 흐름 엔드포인트 create adls 명령을 사용하여 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 바꿉니다.
az iot ops dataflow endpoint create adls --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --storage-account <StorageAccountName>
스토리지 계정 이름은 <account>.blob.core.windows.net
형식의 Azure Data Lake Storage Gen2 계정의 이름입니다.
adls-endpoint라는 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 바꾸는 예제 명령은 다음과 같습니다.
az iot ops dataflow endpoint create adls --resource-group myResourceGroup --instance myAioInstance --name adls-endpoint --storage-account adlsstorage
만들기 또는 변경
az iot ops 데이터 흐름 엔드포인트 적용 명령을 사용하여 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 변경합니다.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
--config-file
매개 변수는 리소스 속성을 포함하는 JSON 구성 파일의 경로 및 파일 이름입니다.
이 예제에서는 사용자의 홈 디렉터리에 저장된 다음 콘텐츠로 명명 adls-endpoint.json
된 구성 파일을 가정합니다.
{
"endpointType": "DataLakeStorage",
"dataLakeStorageSettings": {
"authentication": {
"method": "SystemAssignedManagedIdentity",
"systemAssignedManagedIdentitySettings": {}
},
"batching": {
"latencySeconds": 60,
"maxMessages": 100000
},
"host": "https://<account>.blob.core.windows.net"
}
}
adls-endpoint라는 새 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만드는 예제 명령은 다음과 같습니다.
az iot ops dataflow endpoint apply --resource-group myResourceGroupName --instance myAioInstanceName --name adls-endpoint --config-file ~/adls-endpoint.json
다음 콘텐츠로 Bicep .bicep
파일을 만듭니다.
param aioInstanceName string = '<AIO_INSTANCE_NAME>'
param customLocationName string = '<CUSTOM_LOCATION_NAME>'
param endpointName string = '<ENDPOINT_NAME>'
param host string = 'https://<ACCOUNT>.blob.core.windows.net'
resource aioInstance 'Microsoft.IoTOperations/instances@2024-11-01' existing = {
name: aioInstanceName
}
resource customLocation 'Microsoft.ExtendedLocation/customLocations@2021-08-31-preview' existing = {
name: customLocationName
}
resource adlsGen2Endpoint 'Microsoft.IoTOperations/instances/dataflowEndpoints@2024-11-01' = {
parent: aioInstance
name: endpointName
extendedLocation: {
name: customLocation.id
type: 'CustomLocation'
}
properties: {
endpointType: 'DataLakeStorage'
dataLakeStorageSettings: {
host: host
authentication: {
// See available authentication methods section for method types
// method: <METHOD_TYPE>
}
}
}
}
그런 다음 Azure CLI를 통해 배포합니다.
az deployment group create --resource-group <RESOURCE_GROUP> --template-file <FILE>.bicep
다음 콘텐츠로 Kubernetes 매니페스트 .yaml
파일을 만듭니다.
apiVersion: connectivity.iotoperations.azure.com/v1
kind: DataflowEndpoint
metadata:
name: <ENDPOINT_NAME>
namespace: azure-iot-operations
spec:
endpointType: DataLakeStorage
dataLakeStorageSettings:
host: https://<ACCOUNT>.blob.core.windows.net
authentication:
# See available authentication methods section for method types
# method: <METHOD_TYPE>
그런 다음 매니페스트 파일을 Kubernetes 클러스터에 적용합니다.
kubectl apply -f <FILE>.yaml
액세스 토큰 인증 사용
액세스 토큰 섹션의 단계에 따라 스토리지 계정에 대한 SAS 토큰을 가져와 Kubernetes 비밀에 저장합니다.
그런 다음 DataflowEndpoint 리소스를 만들고 액세스 토큰 인증 방법을 지정합니다. 여기에서 <SAS_SECRET_NAME>
을 SAS 토큰과 기타 자리 표시자 값이 포함된 비밀의 이름으로 바꿉니다.
작업 환경 웹 UI에서 비밀을 만드는 단계는 액세스 토큰 섹션을 참조하세요.
다음 콘텐츠로 Bicep .bicep
파일을 만듭니다.
param aioInstanceName string = '<AIO_INSTANCE_NAME>'
param customLocationName string = '<CUSTOM_LOCATION_NAME>'
param endpointName string = '<ENDPOINT_NAME>'
param host string = 'https://<ACCOUNT>.blob.core.windows.net'
resource aioInstance 'Microsoft.IoTOperations/instances@2024-11-01' existing = {
name: aioInstanceName
}
resource customLocation 'Microsoft.ExtendedLocation/customLocations@2021-08-31-preview' existing = {
name: customLocationName
}
resource adlsGen2Endpoint 'Microsoft.IoTOperations/instances/dataflowEndpoints@2024-11-01' = {
parent: aioInstance
name: endpointName
extendedLocation: {
name: customLocation.id
type: 'CustomLocation'
}
properties: {
endpointType: 'DataLakeStorage'
dataLakeStorageSettings: {
host: host
authentication: {
method: 'AccessToken'
accessTokenSettings: {
secretRef: '<SAS_SECRET_NAME>'
}
}
}
}
}
그런 다음 Azure CLI를 통해 배포합니다.
az deployment group create --resource-group <RESOURCE_GROUP> --template-file <FILE>.bicep
다음 콘텐츠로 Kubernetes 매니페스트 .yaml
파일을 만듭니다.
apiVersion: connectivity.iotoperations.azure.com/v1
kind: DataflowEndpoint
metadata:
name: <ENDPOINT_NAME>
namespace: azure-iot-operations
spec:
endpointType: DataLakeStorage
dataLakeStorageSettings:
host: https://<ACCOUNT>.blob.core.windows.net
authentication:
method: AccessToken
accessTokenSettings:
secretRef: <SAS_SECRET_NAME>
그런 다음 매니페스트 파일을 Kubernetes 클러스터에 적용합니다.
kubectl apply -f <FILE>.yaml
사용 가능한 인증 방법
Azure Data Lake Storage Gen2 엔드포인트에는 다음 인증 방법을 사용할 수 있습니다.
시스템 할당 관리 ID
데이터 흐름 엔드포인트를 구성하기 전에 Azure IoT 작업 관리 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가 만들어집니다.
만들기 또는 바꾸기
az iot ops 데이터 흐름 엔드포인트 create adls 명령을 사용하여 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 시스템 할당 관리 ID로 바꿉니다.
az iot ops dataflow endpoint create adls --auth-type SystemAssignedManagedIdentity --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --storage-account <StorageAccountName>
스토리지 계정 이름은 <account>.blob.core.windows.net
형식의 Azure Data Lake Storage Gen2 계정의 이름입니다.
명명된 my-endpoint
Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 바꾸는 예제 명령은 다음과 같습니다.
az iot ops dataflow endpoint create adls --auth-type SystemAssignedManagedIdentity --resource-group myResourceGroup --instance myAioInstance --name adls-endpoint --storage-account adlsstorage
만들기 또는 변경
az iot ops 데이터 흐름 엔드포인트 적용 명령을 사용하여 시스템 할당 관리 ID를 사용하여 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 변경합니다.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
--config-file
매개 변수는 리소스 속성을 포함하는 JSON 구성 파일의 경로 및 파일 이름입니다.
이 예제에서는 사용자의 홈 디렉터리에 저장된 다음 콘텐츠로 명명 adls-endpoint.json
된 구성 파일을 가정합니다.
{
"endpointType": "DataLakeStorage",
"dataLakeStorageSettings": {
"authentication": {
"method": "SystemAssignedManagedIdentity",
"systemAssignedManagedIdentitySettings": {}
},
"batching": {
"latencySeconds": 60,
"maxMessages": 100000
},
"host": "https://<account>.blob.core.windows.net"
}
}
adls-endpoint라는 새 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만드는 예제 명령은 다음과 같습니다.
az iot ops dataflow endpoint apply --resource-group myResourceGroupName --instance myAioInstanceName --name adls-endpoint --config-file ~/adls-endpoint.json
dataLakeStorageSettings: {
authentication: {
method: 'SystemAssignedManagedIdentity'
systemAssignedManagedIdentitySettings: {}
}
}
dataLakeStorageSettings:
authentication:
method: SystemAssignedManagedIdentity
systemAssignedManagedIdentitySettings: {}
시스템에서 할당한 관리 ID 대상 그룹을 재정의해야 하는 경우 audience
설정을 지정할 수 있습니다.
대부분의 경우 서비스 대상 그룹을 지정할 필요가 없습니다. 대상 그룹을 지정하지 않으면 스토리지 계정으로 범위가 지정된 기본 대상 그룹으로 관리 ID가 만들어집니다.
만들기 또는 바꾸기
az iot ops 데이터 흐름 엔드포인트 create adls 명령을 사용하여 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 시스템 할당 관리 ID로 바꿉니다.
az iot ops dataflow endpoint create adls --auth-type SystemAssignedManagedIdentity --audience https://<account>.blob.core.windows.net --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --storage-account <StorageAccountName>
스토리지 계정 이름은 <account>.blob.core.windows.net
형식의 Azure Data Lake Storage Gen2 계정의 이름입니다.
명명된 my-endpoint
Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 바꾸는 예제 명령은 다음과 같습니다.
az iot ops dataflow endpoint create adls --auth-type SystemAssignedManagedIdentity --audience https://<account>.blob.core.windows.net --resource-group myResourceGroup --instance myAioInstance --name adls-endpoint --storage-account adlsstorage
만들기 또는 변경
az iot ops 데이터 흐름 엔드포인트 적용 명령을 사용하여 시스템 할당 관리 ID를 사용하여 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 변경합니다.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
--config-file
매개 변수는 리소스 속성을 포함하는 JSON 구성 파일의 경로 및 파일 이름입니다.
이 예제에서는 사용자의 홈 디렉터리에 저장된 다음 콘텐츠로 명명 adls-endpoint.json
된 구성 파일을 가정합니다.
{
"endpointType": "DataLakeStorage",
"dataLakeStorageSettings": {
"authentication": {
"method": "SystemAssignedManagedIdentity",
"systemAssignedManagedIdentitySettings": {
"audience": "https://<account>.blob.core.windows.net"
}
},
"batching": {
"latencySeconds": 60,
"maxMessages": 100000
},
"host": "https://<account>.blob.core.windows.net"
}
}
adls-endpoint라는 새 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만드는 예제 명령은 다음과 같습니다.
az iot ops dataflow endpoint apply --resource-group myResourceGroupName --instance myAioInstanceName --name adls-endpoint --config-file ~/adls-endpoint.json
dataLakeStorageSettings: {
authentication: {
method: 'SystemAssignedManagedIdentity'
systemAssignedManagedIdentitySettings: {
audience: 'https://<ACCOUNT>.blob.core.windows.net'
}
}
}
dataLakeStorageSettings:
authentication:
method: SystemAssignedManagedIdentity
systemAssignedManagedIdentitySettings:
audience: https://<ACCOUNT>.blob.core.windows.net
사용자 할당 관리 ID
사용자가 할당한 관리 ID를 인증에 사용하려면 먼저 보안 설정을 사용하도록 설정하여 Azure IoT 작업을 배포해야 합니다. 그런 다음 클라우드 연결에 대한 사용자 할당 관리 ID를 설정해야 합니다. 자세한 내용은 Azure IoT Operations 배포에서 보안 설정 사용을 참조하세요.
데이터 흐름 엔드포인트를 구성하기 전에 사용자가 할당한 관리 ID에 스토리지 계정에 대한 쓰기 권한을 부여하는 역할을 할당합니다.
- Azure Portal에서 권한을 부여해야 하는 클라우드 리소스로 이동합니다. 예를 들어 Azure Storage 계정 >액세스 제어(IAM)>역할 할당 추가로 이동합니다.
-
역할 탭에서 적절한 역할을 선택합니다.
-
구성원 탭에서 액세스 할당에 대한관리 ID 옵션을 선택한 다음, + 구성원을 선택하고 사용자 할당 관리 ID를 검색합니다.
그런 다음 사용자가 할당한 관리 ID 설정으로 데이터 흐름 엔드포인트를 구성합니다.
작업 환경 데이터 흐름 엔드포인트 설정 페이지에서 기본 탭을 선택한 다음, 인증 방법>사용자 할당 관리 ID를 선택합니다.
적절한 필드에 사용자 할당 관리 ID 클라이언트 ID 및 테넌트 ID를 입력합니다.
만들기 또는 바꾸기
az iot ops 데이터 흐름 엔드포인트 create adls 명령을 사용하여 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 사용자 할당 관리 ID로 바꿉니다.
az iot ops dataflow endpoint create adls --auth-type UserAssignedManagedIdentity --client-id <ClientId> --tenant-id <TenantId> --scope <Scope> --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --storage-account <StorageAccountName>
스토리지 계정 이름은 <account>.blob.core.windows.net
형식의 Azure Data Lake Storage Gen2 계정의 이름입니다. 이 경우 매개 변수는 --auth-type
인증 방법을 UserAssignedManagedIdentity
지정합니다.
--client-id
, --tenant-id
, 및 --scope
매개 변수는 각각 사용자 할당 관리 ID 클라이언트 ID, 테넌트 ID 및 범위를 지정합니다.
명명된 my-endpoint
Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 바꾸는 예제 명령은 다음과 같습니다.
az iot ops dataflow endpoint create adls --auth-type UserAssignedManagedIdentity --client-id ClientId --tenant-id TenantId --scope https://storage.azure.com/.default --resource-group myResourceGroup --instance myAioInstance --name adls-endpoint --storage-account adlsstorage
만들기 또는 변경
az iot ops 데이터 흐름 엔드포인트 적용 명령을 사용하여 사용자 할당 관리 ID를 사용하여 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 변경합니다.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
--config-file
매개 변수는 리소스 속성을 포함하는 JSON 구성 파일의 경로 및 파일 이름입니다.
이 예제에서는 사용자의 홈 디렉터리에 저장된 다음 콘텐츠로 명명 adls-endpoint.json
된 구성 파일을 가정합니다.
{
"endpointType": "DataLakeStorage",
"dataLakeStorageSettings": {
"authentication": {
"method": "UserAssignedManagedIdentity",
"userAssignedManagedIdentitySettings": {
"clientId": "<ClientId>",
"scope": "<Scope>",
"tenantId": "<TenantId>"
}
},
"batching": {
"latencySeconds": 60,
"maxMessages": 100000
},
"host": "https://<account>.blob.core.windows.net"
}
}
adls-endpoint라는 새 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만드는 예제 명령은 다음과 같습니다.
az iot ops dataflow endpoint apply --resource-group myResourceGroupName --instance myAioInstanceName --name adls-endpoint --config-file ~/adls-endpoint.json
dataLakeStorageSettings: {
authentication: {
method: 'UserAssignedManagedIdentity'
userAssignedManagedIdentitySettings: {
clientId: '<ID>'
tenantId: '<ID>'
// Optional, defaults to 'https://storage.azure.com/.default'
// scope: 'https://<SCOPE_URL>'
}
}
}
dataLakeStorageSettings:
authentication:
method: UserAssignedManagedIdentity
userAssignedManagedIdentitySettings:
clientId: <ID>
tenantId: <ID>
# Optional, defaults to 'https://storage.azure.com/.default'
# scope: https://<SCOPE_URL>
여기서 범위는 선택 사항이며 기본값은 https://storage.azure.com/.default
입니다. 기본 범위를 재정의해야 하는 경우 Bicep 또는 Kubernetes 매니페스트를 통해 scope
설정을 지정합니다.
액세스 토큰
액세스 토큰을 사용하는 것은 대체 인증 방법입니다. 이 메서드를 사용하려면 SAS 토큰을 사용하여 Kubernetes 비밀을 만들고 DataflowEndpoint 리소스에서 비밀을 참조해야 합니다.
ADLSv2(Azure Data Lake Storage Gen2) 계정에 대한 SAS 토큰 을 가져옵니다. 예를 들어 Azure Portal을 사용하여 스토리지 계정으로 이동합니다. 왼쪽 메뉴에서 보안 + 네트워킹>공유 액세스 서명을 선택합니다. 다음 표를 사용하여 필요한 사용 권한을 설정합니다.
매개 변수 |
사용 설정 |
허용된 서비스 |
블롭 |
허용되는 리소스 유형 |
개체, 컨테이너 |
허용되는 권한 |
읽기, 쓰기, 삭제, 나열, 만들기 |
보안을 강화하고 최소 권한 원칙을 따르려면 특정 컨테이너에 대한 SAS 토큰을 생성할 수 있습니다. 인증 오류를 방지하려면 SAS 토큰에 지정된 컨테이너가 구성의 데이터 흐름 대상 설정과 일치하는지 확인합니다.
작업 환경 데이터 흐름 엔드포인트 설정 페이지에서 기본 탭을 선택한 다음 인증 방법>액세스 토큰을 선택합니다.
여기서 동기화된 비밀 이름 아래에 비밀의 이름을 입력합니다. 이 이름은 데이터 흐름 엔드포인트 설정에서 비밀을 참조하는 데 사용되며 Kubernetes 클러스터에 저장된 비밀의 이름입니다.
그런 다음 액세스 토큰 비밀 이름 아래에서 참조 추가 를 선택하여 Azure Key Vault에서 비밀을 추가합니다. 다음 페이지에서 Azure Key Vault에서 추가 또는 새 비밀 만들기를 사용하여 Azure Key Vault에서 비밀을 선택합니다.
새로 만들기를 선택하는 경우 다음 설정을 입력합니다.
설정 |
설명 |
비밀 이름 |
Azure Key Vault의 비밀 이름입니다. 나중에 목록에서 비밀을 선택할 때 기억하기 쉬운 이름을 선택합니다. |
비밀 값 |
'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>' 형식의 SAS 토큰. |
활성화 날짜 설정 |
켜져 있는 경우, 비밀이 활성화되는 날짜입니다. |
만료 날짜 설정 |
켜져 있는 경우, 비밀이 만료되는 날짜입니다. |
비밀에 대한 자세한 내용은 Azure IoT Operations에서 비밀 만들기 및 관리를 참조하세요.
만들기 또는 바꾸기
az iot ops 데이터 흐름 엔드포인트 create adls 명령을 사용하여 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 액세스 토큰 인증으로 바꿉니다.
az iot ops dataflow endpoint create adls --auth-type AccessToken --secret-name <SasSecretName> --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --storage-account <StorageAccountName>
스토리지 계정 이름은 <account>.blob.core.windows.net
형식의 Azure Data Lake Storage Gen2 계정의 이름입니다. 이 경우 매개 변수는 --auth-type
인증 방법을 AccessToken
지정합니다. 매개 변수는 --secret-name
SAS 토큰을 포함하는 Kubernetes 비밀의 이름을 지정합니다.
명명된 my-endpoint
Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 바꾸는 예제 명령은 다음과 같습니다.
az iot ops dataflow endpoint create adls --auth-type AccessToken --secret-name mySasSecret --resource-group myResourceGroup --instance myAioInstance --name adls-endpoint --storage-account adlsstorage
만들기 또는 변경
az iot ops 데이터 흐름 엔드포인트 적용 명령을 사용하여 액세스 토큰 인증을 사용하여 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만들거나 변경합니다.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
--config-file
매개 변수는 리소스 속성을 포함하는 JSON 구성 파일의 경로 및 파일 이름입니다.
이 예제에서는 사용자의 홈 디렉터리에 저장된 다음 콘텐츠로 명명 adls-endpoint.json
된 구성 파일을 가정합니다.
{
"endpointType": "DataLakeStorage",
"dataLakeStorageSettings": {
"authentication": {
"method": "AccessToken",
"accessTokenSettings": {
"secretRef": "<SAS_SECRET_NAME>"
}
},
"batching": {
"latencySeconds": 60,
"maxMessages": 100000
},
"host": "https://<account>.blob.core.windows.net"
}
}
dataLakeStorageSettings: {
authentication: {
method: 'AccessToken'
accessTokenSettings: {
secretRef: '<SAS_SECRET_NAME>'
}
}
}
adls-endpoint라는 새 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만드는 예제 명령은 다음과 같습니다.
az iot ops dataflow endpoint apply --resource-group myResourceGroupName --instance myAioInstanceName --name adls-endpoint --config-file ~/adls-endpoint.json
SAS 토큰을 사용하여 Kubernetes 비밀을 만듭니다.
kubectl create secret generic <SAS_SECRET_NAME> -n azure-iot-operations \
--from-literal=accessToken='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>'
dataLakeStorageSettings:
authentication:
method: AccessToken
accessTokenSettings:
secretRef: <SAS_SECRET_NAME>
고급 설정
Azure Data Lake Storage Gen2 엔드포인트에 대해 일괄 처리 대기 시간 및 메시지 수와 같은 고급 설정을 지정할 수 있습니다.
batching
설정을 사용하여 메시지가 대상에 전송되기 전 최대 메시지 수와 최대 대기 시간을 구성합니다. 이 설정은 네트워크 대역폭을 최적화하고 대상에 대한 요청 수를 줄이려는 경우에 유용합니다.
필드 |
설명 |
필수 |
latencySeconds |
메시지를 대상으로 보내기 전에 기다리는 최대 시간(초). 기본값은 60초입니다. |
아니요 |
maxMessages |
대상으로 보낼 수 있는 최대 메시지 수. 기본값은 100000개 메시지입니다. |
아니요 |
예를 들어, 최대 메시지 수를 1000개로, 최대 대기 시간을 100초로 구성하려면 다음 설정을 사용합니다.
작업 환경에서 데이터 흐름 엔드포인트에 대한 고급 탭을 선택합니다.
az iot ops 데이터 흐름 엔드포인트 적용 명령을 사용하여 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트 고급 설정을 만들거나 변경합니다.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
--config-file
매개 변수는 리소스 속성을 포함하는 JSON 구성 파일의 경로 및 파일 이름입니다.
이 예제에서는 사용자의 홈 디렉터리에 저장된 다음 콘텐츠로 명명 adls-endpoint.json
된 구성 파일을 가정합니다.
{
"endpointType": "DataLakeStorage",
"dataLakeStorageSettings": {
"authentication": {
"method": "SystemAssignedManagedIdentity",
"systemAssignedManagedIdentitySettings": {}
},
"batching": {
"latencySeconds": 100,
"maxMessages": 1000
},
"host": "https://<account>.blob.core.windows.net"
}
}
adls-endpoint라는 새 Azure Data Lake Storage Gen2 데이터 흐름 엔드포인트를 만드는 예제 명령은 다음과 같습니다.
az iot ops dataflow endpoint apply --resource-group myResourceGroupName --instance myAioInstanceName --name adls-endpoint --config-file ~/adls-endpoint.json
dataLakeStorageSettings: {
batching: {
latencySeconds: 100
maxMessages: 1000
}
}
dataLakeStorageSettings:
batching:
latencySeconds: 100
maxMessages: 1000
다음 단계