Creare un runtime di integrazione self-hosted condiviso in Azure Data Factory
SI APPLICA A: Azure Data Factory Azure Synapse Analytics
Suggerimento
Provare Data Factory in Microsoft Fabric, una soluzione di analisi all-in-one per le aziende. Microsoft Fabric copre tutto, dallo spostamento dati al data science, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Vedere le informazioni su come iniziare una nuova prova gratuita!
Questa guida illustra come creare un runtime di integrazione self-hosted condiviso in Azure Data Factory. È quindi possibile usare il runtime di integrazione self-hosted condiviso in un'altra data factory.
Nota
Quando si condivide il runtime di integrazione self-hosted tra più data factory, un carico di lavoro aumentato può talvolta portare a tempi di coda più lunghi. Se i tempi di coda diventano eccessivi, è possibile aumentare le prestazioni del nodo o aumentare il numero di istanze aggiungendo nodi aggiuntivi. È possibile aggiungere fino a 4 nodi.
Creare un runtime di integrazione self-hosted condiviso in Azure Data Factory
È possibile usare nuovamente un'infrastruttura del runtime di integrazione self-hosted esistente già configurata in una data factory. Questo riutilizzo consente di creare un runtime di integrazione self-hosted collegato in una data factory diversa facendo riferimento a un runtime di integrazione self-hosted condiviso esistente.
Per visualizzare un'introduzione e una dimostrazione di questa funzionalità, guardare il video di 12 minuti seguente:
Terminologia
- Runtime di integrazione condiviso: runtime di integrazione self-hosted originale eseguito in un'infrastruttura fisica.
- Runtime di integrazione collegato: runtime di integrazione che fa riferimento a un altro runtime di integrazione condiviso. Il runtime di integrazione collegato è un runtime di integrazione logico e usa l'infrastruttura di un altro runtime di integrazione self-hosted condiviso.
Creare un runtime di integrazione self-hosted condiviso usando l'interfaccia utente di Azure Data Factory
Per creare un runtime di integrazione self-hosted condiviso usando l'interfaccia utente di Azure Data Factory, è possibile seguire questa procedura:
Nel runtime di integrazione self-hosted da condividere selezionare Concedi autorizzazione a un'altra data factory e nella pagina "Integration runtime setup" (Configurazione del runtime di integrazione) selezionare la data factory in cui si vuole creare il runtime di integrazione collegato.
Prendere nota e copiare l'"ID risorsa" precedente del runtime di integrazione self-hosted da condividere.
Nella data factory per cui sono state concesse le autorizzazioni creare un nuovo runtime di integrazione self-hosted (collegato) e immettere l'ID risorsa.
Creare un runtime di integrazione self-hosted condiviso usando Azure PowerShell
Per creare un runtime di integrazione self-hosted condiviso usando Azure PowerShell, è possibile seguire questa procedura:
- Creare una data factory.
- Creare un runtime di integrazione self-hosted.
- Condividere il runtime di integrazione self-hosted con altre data factory.
- Creare un runtime di integrazione collegato.
- Revocare la condivisione.
Prerequisiti
Nota
È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.
Sottoscrizione di Azure. Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.
Azure PowerShell. Seguire le istruzioni fornite in Installare Azure PowerShell in Windows con PowerShellGet. Usare PowerShell per eseguire uno script per creare un runtime di integrazione self-hosted che può essere condiviso con altre data factory.
Nota
Per un elenco delle aree di Azure in cui Data Factory è attualmente disponibile, selezionare le aree di interesse in Prodotti disponibili in base all'area.
Creare una data factory
Avviare Windows PowerShell Integrated Scripting Environment (ISE).
Creare le variabili. Copiare e incollare lo script seguente. Sostituire le variabili, ad esempio SubscriptionName e ResourceGroupName, con gli effettivi valori:
# If input contains a PSH special character, e.g. "$", precede it with the escape character "`" like "`$". $SubscriptionName = "[Azure subscription name]" $ResourceGroupName = "[Azure resource group name]" $DataFactoryLocation = "EastUS" # Shared Self-hosted integration runtime information. This is a Data Factory compute resource for running any activities # Data factory name. Must be globally unique $SharedDataFactoryName = "[Shared Data factory name]" $SharedIntegrationRuntimeName = "[Shared Integration Runtime Name]" $SharedIntegrationRuntimeDescription = "[Description for Shared Integration Runtime]" # Linked integration runtime information. This is a Data Factory compute resource for running any activities # Data factory name. Must be globally unique $LinkedDataFactoryName = "[Linked Data factory name]" $LinkedIntegrationRuntimeName = "[Linked Integration Runtime Name]" $LinkedIntegrationRuntimeDescription = "[Description for Linked Integration Runtime]"
Eseguire l'accesso e selezionare una sottoscrizione. Aggiungere il codice seguente allo script per eseguire l'accesso e selezionare la sottoscrizione di Azure:
Connect-AzAccount Select-AzSubscription -SubscriptionName $SubscriptionName
Creare un gruppo di risorse e una data factory.
Nota
Questo passaggio è facoltativo. Se è già presente una data factory, ignorare questo passaggio.
Creare un Gruppo di risorse di Azure con il comando New-AzResourceGroup. Un gruppo di risorse è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite come gruppo. L'esempio seguente crea un gruppo di risorse denominato
myResourceGroup
nell'area Europa occidentale:New-AzResourceGroup -Location $DataFactoryLocation -Name $ResourceGroupName
Eseguire questo comando per creare una data factory:
Set-AzDataFactoryV2 -ResourceGroupName $ResourceGroupName ` -Location $DataFactoryLocation ` -Name $SharedDataFactoryName
Creare un runtime di integrazione self-hosted
Nota
Questo passaggio è facoltativo. Se è già presente un runtime di integrazione self-hosted che si vuole condividere con altre data factory, ignorare questo passaggio.
Eseguire questo comando per creare un runtime di integrazione self-hosted:
$SharedIR = Set-AzDataFactoryV2IntegrationRuntime `
-ResourceGroupName $ResourceGroupName `
-DataFactoryName $SharedDataFactoryName `
-Name $SharedIntegrationRuntimeName `
-Type SelfHosted `
-Description $SharedIntegrationRuntimeDescription
Ottenere la chiave di autenticazione per il runtime di integrazione e registrare un nodo
Eseguire questo comando per ottenere la chiave di autenticazione per il runtime di integrazione self-hosted:
Get-AzDataFactoryV2IntegrationRuntimeKey `
-ResourceGroupName $ResourceGroupName `
-DataFactoryName $SharedDataFactoryName `
-Name $SharedIntegrationRuntimeName
La risposta contiene la chiave di autenticazione per il runtime di integrazione self-hosted. Questa chiave viene usata al momento della registrazione del nodo del runtime di integrazione.
Installare e registrare il runtime di integrazione self-hosted
Scaricare il programma di installazione del runtime di integrazione self-hosted da Azure Data Factory Integration Runtime.
Eseguire il programma scaricato per installare l'integrazione self-hosted in un computer locale.
Registrare la nuova integrazione self-hosted con la chiave di autenticazione ottenuta in uno dei passaggi precedenti.
Condividere il runtime di integrazione self-hosted con un'altra data factory
Creare un'altra data factory
Nota
Questo passaggio è facoltativo. Se è già presente la data factory per la condivisione, ignorare questo passaggio. Tuttavia, per aggiungere o rimuovere assegnazioni di ruolo ad altre data factory, è necessario disporre Microsoft.Authorization/roleAssignments/write
di autorizzazioni e Microsoft.Authorization/roleAssignments/delete
, ad esempio Amministratore accesso utenti o Proprietario.
$factory = Set-AzDataFactoryV2 -ResourceGroupName $ResourceGroupName `
-Location $DataFactoryLocation `
-Name $LinkedDataFactoryName
Concedere un'autorizzazione
Concedere l'autorizzazione alla data factory che deve accedere al runtime di integrazione self-hosted creato e registrato.
Importante
Non ignorare questo passaggio.
New-AzRoleAssignment `
-ObjectId $factory.Identity.PrincipalId ` #MSI of the Data Factory with which it needs to be shared
-RoleDefinitionName 'Contributor' `
-Scope $SharedIR.Id
Creare un runtime di integrazione self-hosted collegato
Eseguire questo comando per creare un runtime di integrazione self-hosted collegato:
Set-AzDataFactoryV2IntegrationRuntime `
-ResourceGroupName $ResourceGroupName `
-DataFactoryName $LinkedDataFactoryName `
-Name $LinkedIntegrationRuntimeName `
-Type SelfHosted `
-SharedIntegrationRuntimeResourceId $SharedIR.Id `
-Description $LinkedIntegrationRuntimeDescription
È ora possibile usare questo runtime di integrazione collegato in qualsiasi servizio collegato. Per eseguire le attività, il runtime di integrazione collegato usa il runtime di integrazione condiviso.
Revocare la condivisione del runtime di integrazione da una data factory
Per revocare l'accesso di una data factory al runtime di integrazione condiviso, è possibile eseguire il comando seguente:
Remove-AzRoleAssignment `
-ObjectId $factory.Identity.PrincipalId `
-RoleDefinitionName 'Contributor' `
-Scope $SharedIR.Id
Per rimuovere il runtime di integrazione collegato esistente, è possibile eseguire il comando seguente sul runtime di integrazione condiviso:
Remove-AzDataFactoryV2IntegrationRuntime `
-ResourceGroupName $ResourceGroupName `
-DataFactoryName $SharedDataFactoryName `
-Name $SharedIntegrationRuntimeName `
-LinkedDataFactoryName $LinkedDataFactoryName
Monitoraggio
IR condiviso
IR collegato
Limitazioni note della condivisione del runtime di integrazione self-hosted
La data factory in cui viene creato un runtime di integrazione collegato deve avere un'identità gestita. Per impostazione predefinita, le data factory create nei cmdlet di portale di Azure o PowerShell hanno un'identità gestita creata in modo implicito. Tuttavia, quando una data factory viene creata tramite un modello o un SDK di Azure Resource Manager, è necessario impostare la proprietà Identity in modo esplicito. Questa impostazione garantisce che Resource Manager crei una data factory contenente un'identità gestita.
Data Factory .NET SDK che supporta questa funzionalità deve essere la versione 1.1.0 o successiva.
Per concedere l'autorizzazione, è necessario il ruolo Proprietario o proprietario ereditato nella data factory in cui esiste il runtime di integrazione condiviso.
La funzionalità di condivisione funziona solo per le data factory all'interno dello stesso tenant di Microsoft Entra.
Per gli utenti guest di Microsoft Entra ID, la funzionalità di ricerca nell'interfaccia utente, che elenca tutte le data factory usando una parola chiave di ricerca, non funziona. Tuttavia, purché l'utente guest sia il proprietario della data factory, è possibile condividere il runtime di integrazione senza la funzionalità di ricerca. Per l'identità gestita della data factory che deve condividere il runtime di integrazione, immettere tale identità gestita nella casella Assegna autorizzazione e selezionare Aggiungi nell'interfaccia utente di Data Factory.
Nota
Questa funzionalità è disponibile solo in Data Factory V2.