Ważne
Ta strona zawiera instrukcje dotyczące zarządzania składnikami operacji usługi Azure IoT przy użyciu manifestów wdrażania platformy Kubernetes, które są w wersji zapoznawczej. Ta funkcja jest udostępniana z kilkoma ograniczeniami i nie powinna być używana w przypadku obciążeń produkcyjnych.
Zapoznaj się z dodatkowymi warunkami użytkowania dla wersji zapoznawczych platformy Microsoft Azure , aby zapoznać się z postanowieniami prawnymi dotyczącymi funkcji platformy Azure, które są w wersji beta, wersji zapoznawczej lub w inny sposób nie zostały jeszcze wydane w wersji ogólnodostępnej.
Wysyłanie danych do usługi Azure Data Lake Storage Gen2 w operacjach usługi Azure IoT przez skonfigurowanie punktu końcowego przepływu danych. Ta konfiguracja umożliwia określenie docelowego punktu końcowego, metody uwierzytelniania, tabeli i innych ustawień.
Wymagania wstępne
Przypisywanie uprawnień do tożsamości zarządzanej
Aby skonfigurować punkt końcowy przepływu danych dla usługi Azure Data Lake Storage Gen2, użyj tożsamości zarządzanej przypisanej przez użytkownika lub przypisanej przez system. Takie podejście jest bezpieczne i eliminuje konieczność ręcznego zarządzania poświadczeniami.
Po utworzeniu usługi Azure Data Lake Storage Gen2 musisz przypisać rolę do tożsamości zarządzanej Azure IoT Operations, która udziela uprawnień do zapisu na koncie przechowywania.
Jeśli używasz tożsamości zarządzanej przypisanej przez system, w portalu Azure przejdź do instancji operacyjnej Azure IoT i wybierz pozycję Przegląd. Skopiuj nazwę rozszerzenia wymienionego po rozszerzeniu Usługi Azure IoT Operations Arc. Na przykład azure-iot-operations-xxxx7. Tożsamość zarządzaną przypisaną przez system można znaleźć, używając tej samej nazwy rozszerzenia Azure IoT Operations Arc.
Następnie przejdź do konta usługi Azure Storage >Zarządzanie dostępem (IAM)>Dodaj przydział roli.
- Na karcie Rola wybierz odpowiednią rolę, taką jak
Storage Blob Data Contributor
. Dzięki temu tożsamość zarządzana ma niezbędne uprawnienia do zapisu w kontenerach blob Azure Storage. Aby dowiedzieć się więcej, zobacz Autoryzowanie dostępu do obiektów blob przy użyciu identyfikatora Entra firmy Microsoft.
- Na karcie Członkowie :
- Jeśli używasz tożsamości zarządzanej przypisanej przez system, w polu Przypisz dostęp do wybierz pozycję Użytkownik, grupa lub jednostka usługi, a następnie wybierz pozycję + Wybierz członków i wyszukaj nazwę rozszerzenia Azure IoT Operations Arc.
- Jeśli używasz tożsamości zarządzanej przypisanej przez użytkownika, w obszarze Przypisz dostęp wybierz pozycję Tożsamość zarządzana, a następnie wybierz + Wybierz członków i wyszukaj tożsamość zarządzaną przypisaną przez użytkownika skonfigurowaną dla połączeń z chmurą.
Tworzenie punktu końcowego przepływu danych dla usługi Azure Data Lake Storage Gen2
W portalu operacje IoT wybierz kartę Punkty końcowe przepływu danych .
W obszarze Tworzenie nowego punktu końcowego przepływu danych wybierz pozycję Azure Data Lake Storage (druga generacja)>Nowy.
Wprowadź następujące ustawienia punktu końcowego:
Ustawienie |
opis |
Nazwa/nazwisko |
Nazwa punktu końcowego przepływu danych. |
Gospodarz |
Nazwa hosta punktu końcowego usługi Azure Data Lake Storage Gen2 w formacie <account>.blob.core.windows.net . Zastąp symbol zastępczy konta nazwą konta punktu końcowego. |
Metoda uwierzytelniania |
Metoda używana do uwierzytelniania. Zalecamy wybranie tożsamości zarządzanej przypisanej przez system lub tożsamości zarządzanej przypisanej przez użytkownika. |
Identyfikator klienta |
Identyfikator klienta tożsamości zarządzanej przypisanej przez użytkownika. Wymagane w przypadku korzystania z tożsamości zarządzanej przypisanej przez użytkownika. |
Identyfikator dzierżawy |
Identyfikator dzierżawy tożsamości zarządzanej, przypisanej przez użytkownika. Wymagane w przypadku korzystania z tożsamości zarządzanej przypisanej przez użytkownika. |
Nazwa zsynchronizowanego wpisu tajnego |
Nazwa referencyjna tajemnicy w ustawieniach punktu końcowego przepływu danych oraz w klastrze Kubernetes. Wymagane w przypadku korzystania z tokenu dostępu. |
Nazwa tajnego tokenu dostępu |
Nazwa sekretu Kubernetes zawierającego token SAS. Wymagane w przypadku korzystania z tokenu dostępu. |
Wybierz Zastosuj, aby skonfigurować punkt końcowy.
Tworzenie lub zastępowanie
Użyj polecenia az iot ops dataflow create adls , aby utworzyć lub zastąpić punkt końcowy przepływu danych usługi Azure Data Lake Storage Gen2.
az iot ops dataflow endpoint create adls --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --storage-account <StorageAccountName>
Nazwa konta przechowywania to nazwa konta usługi Azure Data Lake Storage Gen2 w formacie <account>.blob.core.windows.net
.
Oto przykładowe polecenie umożliwiające utworzenie lub zastąpienie punktu końcowego przepływu danych usługi Azure Data Lake Storage Gen2 o nazwie adls-endpoint:
az iot ops dataflow endpoint create adls --resource-group myResourceGroup --instance myAioInstance --name adls-endpoint --storage-account adlsstorage
Tworzenie lub zmienianie
Użyj polecenia az iot ops dataflow endpoint apply , aby utworzyć lub zmienić punkt końcowy przepływu danych usługi Azure Data Lake Storage Gen2.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
Parametr --config-file
to ścieżka i nazwa pliku konfiguracji JSON zawierającego właściwości zasobu.
W tym przykładzie przyjęto założenie, że plik konfiguracji o nazwie adls-endpoint.json
z następującą zawartością jest przechowywany w katalogu głównym użytkownika.
{
"endpointType": "DataLakeStorage",
"dataLakeStorageSettings": {
"authentication": {
"method": "SystemAssignedManagedIdentity",
"systemAssignedManagedIdentitySettings": {}
},
"batching": {
"latencySeconds": 60,
"maxMessages": 100000
},
"host": "https://<account>.blob.core.windows.net"
}
}
Oto przykładowe polecenie umożliwiające utworzenie nowego punktu końcowego przepływu danych usługi Azure Data Lake Storage Gen2 o nazwie adls-endpoint:
az iot ops dataflow endpoint apply --resource-group myResourceGroupName --instance myAioInstanceName --name adls-endpoint --config-file ~/adls-endpoint.json
Utwórz plik Bicep .bicep
z następującą zawartością.
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>
}
}
}
}
Następnie wdróż za pomocą interfejsu wiersza polecenia platformy Azure.
az deployment group create --resource-group <RESOURCE_GROUP> --template-file <FILE>.bicep
Utwórz plik manifestu .yaml
kubernetes z następującą zawartością.
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>
Następnie zastosuj plik manifestu do klastra Kubernetes.
kubectl apply -f <FILE>.yaml
Korzystanie z uwierzytelniania tokenu dostępu
Wykonaj kroki opisane w sekcji token dostępu, aby uzyskać token SAS dla konta magazynowego i zapisać go w tajnym zasobie Kubernetes.
Następnie utwórz zasób DataflowEndpoint i określ metodę uwierzytelniania tokenu dostępu. W tym miejscu zastąp <SAS_SECRET_NAME>
nazwą sekretu zawierającego token SAS i inne wartości symboli zastępczych.
Zobacz sekcję tokenu dostępu, aby uzyskać instrukcje tworzenia sekretu w interfejsie użytkownika platformy operacyjnej.
Utwórz plik Bicep .bicep
z następującą zawartością.
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>'
}
}
}
}
}
Następnie wdróż za pomocą interfejsu wiersza polecenia platformy Azure.
az deployment group create --resource-group <RESOURCE_GROUP> --template-file <FILE>.bicep
Utwórz plik manifestu .yaml
kubernetes z następującą zawartością.
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>
Następnie zastosuj plik manifestu do klastra Kubernetes.
kubectl apply -f <FILE>.yaml
Dostępne metody uwierzytelniania
Następujące metody uwierzytelniania są dostępne dla punktów końcowych usługi Azure Data Lake Storage Gen2.
Tożsamość zarządzana przypisana przez system
Przed skonfigurowaniem punktu końcowego przepływu danych przypisz rolę do tożsamości zarządzanej usługi Azure IoT Operations, która udziela uprawnień do zapisu na koncie magazynowania.
- W portalu Azure przejdź do instancji operacji Azure IoT i wybierz pozycję Przegląd.
- Skopiuj nazwę rozszerzenia wymienionego po rozszerzeniu Usługi Azure IoT Operations Arc. Na przykład azure-iot-operations-xxxx7.
- Przejdź do zasobu w chmurze, któremu musisz nadać uprawnienia. Na przykład przejdź do konta usługi Azure Storage >Kontrola dostępu (IAM)>Dodaj przypisanie roli.
- Na karcie Rola wybierz odpowiednią rolę.
- Na karcie Członkowie w polu Przypisz dostęp do wybierz opcję Użytkownik, grupa lub jednostka usługi , a następnie wybierz pozycję + Wybierz członków i wyszukaj tożsamość zarządzaną operacji usługi Azure IoT Operations. Na przykład azure-iot-operations-xxxx7.
Następnie skonfiguruj punkt końcowy przepływu danych przy użyciu ustawień tożsamości zarządzanej przypisanej przez system.
Na stronie ustawienia punktu końcowego przepływu danych środowiska operacji wybierz kartę Podstawowa, a następnie wybierz pozycję Metoda> uwierzytelnianiaPrzypisana tożsamość zarządzana przez system.
W większości przypadków nie trzeba określać odbiorców usług. Nieokreślenie odbiorców tworzy tożsamość zarządzaną z domyślną grupą odbiorców przypisaną do konta magazynowego.
Tworzenie lub zastępowanie
Użyj polecenia az iot ops dataflow endpoint create adls, aby utworzyć lub zamienić punkt końcowy przepływu danych usługi Azure Data Lake Storage Gen2 z użyciem tożsamości zarządzanej przypisanej przez system.
az iot ops dataflow endpoint create adls --auth-type SystemAssignedManagedIdentity --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --storage-account <StorageAccountName>
Nazwa konta przechowywania to nazwa konta usługi Azure Data Lake Storage Gen2 w formacie <account>.blob.core.windows.net
.
Przykładowe polecenie umożliwiające utworzenie lub zastąpienie punktu końcowego my-endpoint
przepływu danych usługi Azure Data Lake Storage Gen2 to:
az iot ops dataflow endpoint create adls --auth-type SystemAssignedManagedIdentity --resource-group myResourceGroup --instance myAioInstance --name adls-endpoint --storage-account adlsstorage
Tworzenie lub zmienianie
Użyj polecenia az iot ops dataflow endpoint apply , aby utworzyć lub zmienić punkt końcowy przepływu danych usługi Azure Data Lake Storage Gen2 z przypisaną przez system tożsamością zarządzaną.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
Parametr --config-file
to ścieżka i nazwa pliku konfiguracji JSON zawierającego właściwości zasobu.
W tym przykładzie przyjęto założenie, że plik konfiguracji o nazwie adls-endpoint.json
z następującą zawartością jest przechowywany w katalogu głównym użytkownika.
{
"endpointType": "DataLakeStorage",
"dataLakeStorageSettings": {
"authentication": {
"method": "SystemAssignedManagedIdentity",
"systemAssignedManagedIdentitySettings": {}
},
"batching": {
"latencySeconds": 60,
"maxMessages": 100000
},
"host": "https://<account>.blob.core.windows.net"
}
}
Oto przykładowe polecenie umożliwiające utworzenie nowego punktu końcowego przepływu danych usługi Azure Data Lake Storage Gen2 o nazwie adls-endpoint:
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: {}
Jeśli musisz zastąpić domyślną grupę odbiorców tożsamości zarządzanej przydzieloną przez system, możesz określić ustawienie audience
.
W większości przypadków nie trzeba określać odbiorców usług. Nieokreślenie odbiorców tworzy tożsamość zarządzaną z domyślną grupą odbiorców przypisaną do konta magazynowego.
Tworzenie lub zastępowanie
Użyj polecenia az iot ops dataflow endpoint create adls, aby utworzyć lub zamienić punkt końcowy przepływu danych usługi Azure Data Lake Storage Gen2 z użyciem tożsamości zarządzanej przypisanej przez system.
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>
Nazwa konta przechowywania to nazwa konta usługi Azure Data Lake Storage Gen2 w formacie <account>.blob.core.windows.net
.
Przykładowe polecenie umożliwiające utworzenie lub zastąpienie punktu końcowego my-endpoint
przepływu danych usługi Azure Data Lake Storage Gen2 to:
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
Tworzenie lub zmienianie
Użyj polecenia az iot ops dataflow endpoint apply , aby utworzyć lub zmienić punkt końcowy przepływu danych usługi Azure Data Lake Storage Gen2 z przypisaną przez system tożsamością zarządzaną.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
Parametr --config-file
to ścieżka i nazwa pliku konfiguracji JSON zawierającego właściwości zasobu.
W tym przykładzie przyjęto założenie, że plik konfiguracji o nazwie adls-endpoint.json
z następującą zawartością jest przechowywany w katalogu głównym użytkownika.
{
"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"
}
}
Oto przykładowe polecenie umożliwiające utworzenie nowego punktu końcowego przepływu danych usługi Azure Data Lake Storage Gen2 o nazwie adls-endpoint:
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
Tożsamość zarządzana przypisana przez użytkownika
Aby użyć tożsamości zarządzanej przypisanej przez użytkownika do uwierzytelniania, należy najpierw wdrożyć operacje usługi Azure IoT z włączonymi bezpiecznymi ustawieniami. Następnie należy skonfigurować tożsamość zarządzaną przypisaną przez użytkownika dla połączeń w chmurze. Aby dowiedzieć się więcej, zobacz Włączanie bezpiecznych ustawień we wdrożeniu operacji usługi Azure IoT.
Przed skonfigurowaniem punktu końcowego przepływu danych przypisz rolę do tożsamości zarządzanej przypisanej przez użytkownika, która zapewnia uprawnienia do zapisu na koncie usługi przechowywania.
- W portalu Azure przejdź do zasobu w chmurze, któremu musisz nadać uprawnienia. Na przykład przejdź do konta usługi Azure Storage >Kontrola dostępu (IAM)>Dodaj przypisanie roli.
- Na karcie Rola wybierz odpowiednią rolę.
- Na karcie Członkowie w polu Przypisz dostęp do wybierz opcję Tożsamość zarządzana , a następnie wybierz pozycję + Wybierz członków i wyszukaj tożsamość zarządzaną przypisaną przez użytkownika.
Następnie skonfiguruj punkt końcowy przepływu danych przy użyciu ustawień tożsamości zarządzanej przypisanej przez użytkownika.
Na stronie ustawienia punktu końcowego przepływu danych środowiska operacji wybierz kartę Podstawowa, a następnie wybierz pozycję Metoda> uwierzytelnianiaTożsamość zarządzana przypisana przez użytkownika.
Wprowadź identyfikator klienta tożsamości zarządzanej nadanej przez użytkownika oraz identyfikator dzierżawy w odpowiednich polach.
Tworzenie lub zastępowanie
Użyj polecenia az iot ops dataflow endpoint create adls, aby utworzyć lub zastąpić punkt dostępowy przepływu danych usługi Azure Data Lake Storage Gen2 tożsamością zarządzaną przypisaną przez użytkownika.
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>
Nazwa konta przechowywania to nazwa konta usługi Azure Data Lake Storage Gen2 w formacie <account>.blob.core.windows.net
. Parametr --auth-type
określa metodę uwierzytelniania, która jest UserAssignedManagedIdentity
w tym przypadku. Parametry --client-id
, --tenant-id
i --scope
określają odpowiednio identyfikator klienta tożsamości zarządzanej przypisanej przez użytkownika, identyfikator dzierżawy i zakres.
Przykładowe polecenie umożliwiające utworzenie lub zastąpienie punktu końcowego my-endpoint
przepływu danych usługi Azure Data Lake Storage Gen2 to:
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
Tworzenie lub zmienianie
Użyj polecenia az iot ops dataflow endpoint apply , aby utworzyć lub zmienić punkt końcowy przepływu danych usługi Azure Data Lake Storage Gen2 z tożsamością zarządzaną przypisaną przez użytkownika.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
Parametr --config-file
to ścieżka i nazwa pliku konfiguracji JSON zawierającego właściwości zasobu.
W tym przykładzie przyjęto założenie, że plik konfiguracji o nazwie adls-endpoint.json
z następującą zawartością jest przechowywany w katalogu głównym użytkownika.
{
"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"
}
}
Oto przykładowe polecenie umożliwiające utworzenie nowego punktu końcowego przepływu danych usługi Azure Data Lake Storage Gen2 o nazwie adls-endpoint:
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>
W tym miejscu zakres jest opcjonalny i domyślnie ma wartość https://storage.azure.com/.default
. Jeśli musisz zastąpić zakres domyślny, określ scope
ustawienie za pośrednictwem manifestu Bicep lub Kubernetes.
Token dostępu
Użycie tokenu dostępu jest alternatywną metodą uwierzytelniania. Ta metoda wymaga utworzenia tajemnicy Kubernetes z tokenem SAS i odwołania się do tej tajemnicy w zasobie DataflowEndpoint.
Uzyskaj token SAS dla konta usługi Azure Data Lake Storage Gen2 (ADLSv2). Na przykład użyj portalu Azure, aby przejść do swojego konta magazynowania. W menu po lewej stronie wybierz pozycję Zabezpieczenia i sieć>Sygnatura dostępu współdzielonego. Użyj poniższej tabeli, aby ustawić wymagane uprawnienia.
Parametr |
Włączone ustawienie |
Dozwolone usługi |
Blob |
Dozwolone typy zasobów |
Obiekt, kontener |
Dozwolone uprawnienia |
Odczyt, zapis, usuwanie, lista, tworzenie |
Aby zwiększyć bezpieczeństwo i postępować zgodnie z zasadą najniższych uprawnień, możesz wygenerować token SAS dla określonego kontenera. Aby zapobiec błędom uwierzytelniania, upewnij się, że kontener określony w tokenie SAS jest zgodny z ustawieniem docelowym przepływu danych w konfiguracji.
Na stronie ustawień punktu końcowego przepływu danych środowiska operacji wybierz kartę Podstawowa, a następnie wybierz metodę uwierzytelniania>Token dostępu.
W tym miejscu, pod Zsynchronizowany sekret, wprowadź nazwę sekretu. Ta nazwa służy do odwołowania się do wpisu tajnego w ustawieniach punktu końcowego przepływu danych i jest nazwą wpisu tajnego przechowywanego w klastrze Kubernetes.
Następnie w obszarze Nazwa wpisu tajnego tokenu dostępu wybierz pozycję Dodaj odwołanie , aby dodać wpis tajny z usługi Azure Key Vault. Na następnej stronie wybierz wpis tajny z usługi Azure Key Vault z pozycją Dodaj z usługi Azure Key Vault lub Utwórz nowy wpis tajny.
W przypadku wybrania pozycji Utwórz nowy wprowadź następujące ustawienia:
Ustawienie |
opis |
Tajna nazwa |
Nazwa tajemnicy w usłudze Azure Key Vault. Wybierz nazwę, która jest łatwa do zapamiętania, aby później wybrać sekret z listy. |
Tajna wartość |
Token SAS w formacie '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>' . |
Ustawianie daty aktywacji |
Jeśli jest włączona, data, kiedy tajemnica stanie się aktywna. |
Ustawianie daty wygaśnięcia |
Jeśli jest włączone, data wygaśnięcia sekretu. |
Aby dowiedzieć się więcej na temat wpisów tajnych, zobacz Tworzenie wpisów tajnych i zarządzanie nimi w operacjach usługi Azure IoT.
Tworzenie lub zastępowanie
Użyj polecenia az iot ops dataflow create adls , aby utworzyć lub zastąpić punkt końcowy przepływu danych usługi Azure Data Lake Storage Gen2 za pomocą uwierzytelniania tokenu dostępu.
az iot ops dataflow endpoint create adls --auth-type AccessToken --secret-name <SasSecretName> --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --storage-account <StorageAccountName>
Nazwa konta przechowywania to nazwa konta usługi Azure Data Lake Storage Gen2 w formacie <account>.blob.core.windows.net
. Parametr --auth-type
określa metodę uwierzytelniania, która jest AccessToken
w tym przypadku. Parametr --secret-name
określa nazwę tajemnicy Kubernetes zawierającej token SAS.
Przykładowe polecenie umożliwiające utworzenie lub zastąpienie punktu końcowego my-endpoint
przepływu danych usługi Azure Data Lake Storage Gen2 to:
az iot ops dataflow endpoint create adls --auth-type AccessToken --secret-name mySasSecret --resource-group myResourceGroup --instance myAioInstance --name adls-endpoint --storage-account adlsstorage
Tworzenie lub zmienianie
Użyj polecenia az iot ops dataflow endpoint apply , aby utworzyć lub zmienić punkt końcowy przepływu danych usługi Azure Data Lake Storage Gen2 przy użyciu uwierzytelniania tokenu dostępu.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
Parametr --config-file
to ścieżka i nazwa pliku konfiguracji JSON zawierającego właściwości zasobu.
W tym przykładzie przyjęto założenie, że plik konfiguracji o nazwie adls-endpoint.json
z następującą zawartością jest przechowywany w katalogu głównym użytkownika.
{
"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>'
}
}
}
Oto przykładowe polecenie umożliwiające utworzenie nowego punktu końcowego przepływu danych usługi Azure Data Lake Storage Gen2 o nazwie adls-endpoint:
az iot ops dataflow endpoint apply --resource-group myResourceGroupName --instance myAioInstanceName --name adls-endpoint --config-file ~/adls-endpoint.json
Utwórz sekret Kubernetes z tokenem SAS.
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>
Ustawienia zaawansowane
Możesz ustawić zaawansowane ustawienia punktu końcowego usługi Azure Data Lake Storage Gen2, takie jak opóźnienie wsadowe i liczba komunikatów.
batching
Użyj ustawień, aby skonfigurować maksymalną liczbę komunikatów i maksymalne opóźnienie przed wysłaniem komunikatów do miejsca docelowego. To ustawienie jest przydatne, gdy chcesz zoptymalizować przepustowość sieci i zmniejszyć liczbę żądań do miejsca docelowego.
Pole |
opis |
Wymagane |
latencySeconds |
Maksymalna liczba sekund oczekiwania przed wysłaniem komunikatów do miejsca docelowego. Wartość domyślna to 60 sekund. |
Nie. |
maxMessages |
Maksymalna liczba komunikatów do wysłania do miejsca docelowego. Wartość domyślna to 100000 komunikatów. |
Nie. |
Aby na przykład skonfigurować maksymalną liczbę komunikatów do 1000 i maksymalne opóźnienie do 100 sekund, użyj następujących ustawień:
W środowisku operacji wybierz kartę Zaawansowane dla punktu końcowego przepływu danych.
Użyj polecenia az iot ops dataflow endpoint apply , aby utworzyć lub zmienić zaawansowane ustawienia punktu końcowego przepływu danych usługi Azure Data Lake Storage Gen2.
az iot ops dataflow endpoint apply --resource-group <ResourceGroupName> --instance <AioInstanceName> --name <EndpointName> --config-file <ConfigFilePathAndName>
Parametr --config-file
to ścieżka i nazwa pliku konfiguracji JSON zawierającego właściwości zasobu.
W tym przykładzie przyjęto założenie, że plik konfiguracji o nazwie adls-endpoint.json
z następującą zawartością jest przechowywany w katalogu głównym użytkownika.
{
"endpointType": "DataLakeStorage",
"dataLakeStorageSettings": {
"authentication": {
"method": "SystemAssignedManagedIdentity",
"systemAssignedManagedIdentitySettings": {}
},
"batching": {
"latencySeconds": 100,
"maxMessages": 1000
},
"host": "https://<account>.blob.core.windows.net"
}
}
Oto przykładowe polecenie umożliwiające utworzenie nowego punktu końcowego przepływu danych usługi Azure Data Lake Storage Gen2 o nazwie adls-endpoint:
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
Następne kroki