Skapa en delad integrationskörning med lokalt installerad integrationskörning i Azure Data Factory

GÄLLER FÖR: Azure Data Factory Azure Synapse Analytics

Dricks

Prova Data Factory i Microsoft Fabric, en allt-i-ett-analyslösning för företag. Microsoft Fabric omfattar allt från dataflytt till datavetenskap, realtidsanalys, business intelligence och rapportering. Lär dig hur du startar en ny utvärderingsversion kostnadsfritt!

Den här guiden visar hur du skapar en delad integrationskörning med egen värd i Azure Data Factory Sedan kan du använda den delade lokala integrationskörningen i en annan datafabrik.

Kommentar

När du delar din lokala integrationskörning mellan fler datafabriker kan ökad arbetsbelastning ibland leda till längre kötider. Om kötiderna blir för höga kan du skala upp noden eller skala ut genom att lägga till ytterligare noder. Du kan lägga till upp till 4 noder.

Skapa en delad integrationskörning med lokalt installerad integrationskörning i Azure Data Factory

Du kan återanvända en befintlig lokalt installerad integrationskörningsinfrastruktur som du redan har konfigurerat i en datafabrik. Med den här återanvändningen kan du skapa en länkad lokalt installerad integrationskörning i en annan datafabrik genom att referera till en befintlig delad lokalt installerad IR.

Om du vill se en introduktion och demonstration av den här funktionen kan du titta på följande 12-minutersvideo:

Terminologi

  • Delad IR: En ursprunglig lokalt installerad IR som körs på en fysisk infrastruktur.
  • Länkad IR: En IR som refererar till en annan delad IR. Den länkade IR:en är en logisk IR och använder infrastrukturen för en annan delad lokalt installerad IR.

Skapa en delad lokalt installerad IR med hjälp av Azure Data Factory-användargränssnittet

Om du vill skapa en delad lokalt installerad IR med hjälp av Azure Data Factory-användargränssnittet kan du utföra följande steg:

  1. I den lokalt installerade IR som ska delas väljer du Bevilja behörighet till en annan datafabrik och på sidan "Installation av integrationskörning" väljer du datafabriken där du vill skapa den länkade IR:en.

    Knapp för att bevilja behörighet på fliken Delning

  2. Observera och kopiera ovanstående "Resurs-ID" för den lokalt installerade IR som ska delas.

  3. I datafabriken som behörigheterna har beviljats till skapar du en ny lokalt installerad IR (länkad) och anger resurs-ID:t.

    Knapp för att skapa en lokalt installerad integrationskörning

    Knapp för att skapa en länkad lokalt installerad integrationskörning

    Rutor för namn och resurs-ID

Skapa en delad lokalt installerad IR med Azure PowerShell

Om du vill skapa en delad lokalt installerad IR med Azure PowerShell kan du utföra följande steg:

  1. Skapa en datafabrik.
  2. Skapa en lokalt installerad integrationskörning.
  3. Dela integrationskörningen med egen värd med andra datafabriker.
  4. Skapa en länkad integrationskörning.
  5. Återkalla delning.

Förutsättningar

Kommentar

Vi rekommenderar att du använder Azure Az PowerShell-modulen för att interagera med Azure. Se Installera Azure PowerShell för att komma igång. Information om hur du migrerar till Az PowerShell-modulen finns i artikeln om att migrera Azure PowerShell från AzureRM till Az.

Kommentar

Om du vill ha en lista över Azure-regioner där Data Factory för närvarande är tillgängligt väljer du de regioner som intresserar dig för produkter som är tillgängliga per region.

Skapa en datafabrik

  1. Starta Windows PowerShell ISE.

  2. Skapa variabler. Kopiera och klistra in följande skript. Ersätt variablerna, till exempel SubscriptionName och ResourceGroupName, med faktiska värden:

    # 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]"
    
  3. Logga in och välj en prenumeration. Lägg till följande kod i skriptet för att logga in och välj din Azure-prenumeration:

    Connect-AzAccount
    Select-AzSubscription -SubscriptionName $SubscriptionName
    
  4. Skapa en resursgrupp och en datafabrik.

    Kommentar

    Steget är valfritt. Om du redan har en datafabrik hoppar du över det här steget.

    Skapa en Azure-resursgrupp med kommandot New-AzResourceGroup . En resursgrupp är en logisk container där Azure-resurser distribueras och hanteras som en grupp. I följande exempel skapas en resursgrupp med namnet myResourceGroup på platsen WestEurope:

    New-AzResourceGroup -Location $DataFactoryLocation -Name $ResourceGroupName
    

    Skapa en datafabrik genom att köra följande kommandon:

    Set-AzDataFactoryV2 -ResourceGroupName $ResourceGroupName `
                             -Location $DataFactoryLocation `
                             -Name $SharedDataFactoryName
    

Skapa en lokalt installerad integrationskörning

Kommentar

Steget är valfritt. Om du redan har den lokala integrationskörningen som du vill dela med andra datafabriker hoppar du över det här steget.

Kör följande kommando för att skapa en lokalt installerad integrationskörning:

$SharedIR = Set-AzDataFactoryV2IntegrationRuntime `
    -ResourceGroupName $ResourceGroupName `
    -DataFactoryName $SharedDataFactoryName `
    -Name $SharedIntegrationRuntimeName `
    -Type SelfHosted `
    -Description $SharedIntegrationRuntimeDescription

Hämta autentiseringsnyckeln för integration runtime och registrera en nod

Kör följande kommando för att hämta autentiseringsnyckeln för den lokalt installerade integrationskörningen:

Get-AzDataFactoryV2IntegrationRuntimeKey `
    -ResourceGroupName $ResourceGroupName `
    -DataFactoryName $SharedDataFactoryName `
    -Name $SharedIntegrationRuntimeName

Svaret innehåller autentiseringsnyckeln för den här lokalt installerade integrationskörningen. Du använder den här nyckeln när du registrerar integreringskörningsnoden.

Installera och registrera den lokalt installerade integrationskörningen

  1. Ladda ned installationsprogrammet för lokalt installerad integrationskörning från Azure Data Factory Integration Runtime.

  2. Kör installationsprogrammet för att installera den lokalt installerade integreringen på en lokal dator.

  3. Registrera den nya lokalt installerade integreringen med den autentiseringsnyckel som du hämtade i ett tidigare steg.

Dela integrationskörningen med egen värd med en annan datafabrik

Skapa en annan datafabrik

Kommentar

Steget är valfritt. Om du redan har den datafabrik som du vill dela med hoppar du över det här steget. Men för att kunna lägga till eller ta bort rolltilldelningar till en annan datafabrik måste du ha Microsoft.Authorization/roleAssignments/write och Microsoft.Authorization/roleAssignments/delete behörigheter, till exempel administratör för användaråtkomst eller ägare.

$factory = Set-AzDataFactoryV2 -ResourceGroupName $ResourceGroupName `
    -Location $DataFactoryLocation `
    -Name $LinkedDataFactoryName

Bevilja behörighet

Bevilja behörighet till datafabriken som behöver åtkomst till den lokalt installerad integrationskörning som du skapade och registrerade.

Viktigt!

Hoppa inte över det här steget!

New-AzRoleAssignment `
    -ObjectId $factory.Identity.PrincipalId ` #MSI of the Data Factory with which it needs to be shared
    -RoleDefinitionName 'Contributor' `
    -Scope $SharedIR.Id

Skapa en länkad lokalt installerad integrationskörning

Kör följande kommando för att skapa en länkad lokalt installerad integrationskörning:

Set-AzDataFactoryV2IntegrationRuntime `
    -ResourceGroupName $ResourceGroupName `
    -DataFactoryName $LinkedDataFactoryName `
    -Name $LinkedIntegrationRuntimeName `
    -Type SelfHosted `
    -SharedIntegrationRuntimeResourceId $SharedIR.Id `
    -Description $LinkedIntegrationRuntimeDescription

Nu kan du använda den här länkade integreringskörningen i valfri länkad tjänst. Den länkade integrationskörningen använder den delade integrationskörningen för att köra aktiviteter.

Återkalla integreringskörningsdelning från en datafabrik

Om du vill återkalla åtkomsten för en datafabrik från den delade integrationskörningen kör du följande kommando:

Remove-AzRoleAssignment `
    -ObjectId $factory.Identity.PrincipalId `
    -RoleDefinitionName 'Contributor' `
    -Scope $SharedIR.Id

Om du vill ta bort den befintliga länkade integrationskörningen kör du följande kommando mot den delade integrationskörningen:

Remove-AzDataFactoryV2IntegrationRuntime `
    -ResourceGroupName $ResourceGroupName `
    -DataFactoryName $SharedDataFactoryName `
    -Name $SharedIntegrationRuntimeName `
    -LinkedDataFactoryName $LinkedDataFactoryName

Övervakning

Delad IR

Val för att hitta en delad integrationskörning

Övervaka en delad integrationskörning

Länkad IR

Val för att hitta en länkad integrationskörning

Övervaka en länkad integrationskörning

Kända begränsningar för lokalt installerad IR-delning

  • Datafabriken där en länkad IR skapas måste ha en hanterad identitet. Som standard har de datafabriker som skapats i Azure-portalen eller PowerShell-cmdletar en implicit skapad hanterad identitet. Men när en datafabrik skapas via en Azure Resource Manager-mall eller SDK måste du uttryckligen ange identitetsegenskapen. Den här inställningen säkerställer att Resource Manager skapar en datafabrik som innehåller en hanterad identitet.

  • Data Factory .NET SDK som stöder den här funktionen måste vara version 1.1.0 eller senare.

  • För att bevilja behörighet behöver du rollen Ägare eller den ärvda ägarrollen i datafabriken där den delade IR:en finns.

  • Delningsfunktionen fungerar endast för datafabriker i samma Microsoft Entra-klientorganisation.

  • För Microsoft Entra ID-gästanvändare fungerar inte sökfunktionen i användargränssnittet, som visar alla datafabriker med hjälp av ett nyckelord för sökning. Men så länge gästanvändaren är ägare till datafabriken kan du dela IR utan sökfunktionen. För den hanterade identiteten för datafabriken som behöver dela IR anger du den hanterade identiteten i rutan Tilldela behörighet och väljer Lägg till i datafabrikens användargränssnitt.

    Kommentar

    Den här funktionen är endast tillgänglig i Data Factory V2.