다음을 통해 공유


Azure Data Factory에서 자체 호스팅 Integration Runtime 공유 만들기

적용 대상: Azure Data Factory Azure Synapse Analytics

기업용 올인원 분석 솔루션인 Microsoft Fabric의 Data Factory를 사용해 보세요. Microsoft Fabric은 데이터 이동부터 데이터 과학, 실시간 분석, 비즈니스 인텔리전스 및 보고에 이르기까지 모든 것을 다룹니다. 무료로 새 평가판을 시작하는 방법을 알아봅니다!

이 가이드에서는 Azure Data Factory에서 공유되는 자체 호스팅 Integration Runtime을 만드는 방법을 보여 줍니다. 그런 다음, 다른 데이터 팩터리에서 자체 호스팅 통합 런타임 공유를 사용할 수 있습니다.

참고 항목

자체 호스팅 통합 런타임을 더 많은 데이터 팩터리 간에 공유하면 워크로드가 증가하여 큐 시간이 길어질 수 있습니다. 큐 시간이 과도해지면 노드를 확장하거나 노드를 추가하여 스케일 아웃할 수 있습니다. 최대 4개의 노드를 추가할 수 있습니다.

Azure Data Factory에서 자체 호스팅 Integration Runtime 공유 만들기

데이터 팩터리에 이미 설치한 기존의 자체 호스팅 통합 런타임 인프라를 재사용할 수 있습니다. 이렇게 하면 기존 자체 호스팅 IR(공유됨)을 참조하여 다른 데이터 팩터리에서 연결된 자체 호스팅 통합 런타임을 만들 수 있습니다.

이 기능을 소개하는 다음 비디오를 12분 간 시청하세요.

용어

  • 공유된 IR - 물리적 인프라에서 실행되는 원래 자체 호스팅 IR입니다.
  • 연결된 IR - 다른 공유된 IR을 참조하는 IR입니다. 연결된 통합 런타임은 논리 IR이며, 다른 자체 호스팅 통합 런타임의 인프라를 사용합니다.

Azure Data Factory UI를 사용하여 공유되는 자체 호스팅 IR 만들기

Azure Data Factory UI를 사용하여 공유되는 자체 호스팅 IR을 만들려면 다음 단계를 수행할 수 있습니다.

  1. 공유할 자체 호스팅 IR에서 다른 데이터 팩터리에 대한 권한 부여를 선택하고 ‘통합 런타임 설치’ 페이지에서 연결된 IR을 만들 데이터 팩터리를 선택합니다.

    공유 탭에서 권한을 부여하는 단추

  2. 공유할 자체 호스팅 IR의 위에 있는 ‘리소스 ID’를 복사합니다.

  3. 권한이 부여된 데이터 팩터리에서 연결된 자체 호스팅 IR을 새로 만들고 리소스 ID를 입력합니다.

    자체 호스팅 통합 런타임을 만드는 단추

    연결된 자체 호스팅 통합 런타임을 만드는 단추

    이름 및 리소스 ID 입력용 상자

Azure PowerShell을 사용하여 공유되는 자체 호스팅 IR 만들기

Azure PowerShell을 사용하여 공유되는 자체 호스팅 IR을 만들려면 다음 단계를 수행할 수 있습니다.

  1. 데이터 팩터리를 만듭니다.
  2. 자체 호스팅 통합 런타임 만들기
  3. 다른 데이터 팩터리와 자체 호스팅 통합 런타임을 공유합니다.
  4. 연결된 통합 런타임을 만듭니다.
  5. 공유를 취소합니다.

필수 조건

참고 항목

Azure Az PowerShell 모듈을 사용하여 Azure와 상호 작용하는 것이 좋습니다. 시작하려면 Azure PowerShell 설치를 참조하세요. Az PowerShell 모듈로 마이그레이션하는 방법에 대한 자세한 내용은 Azure PowerShell을 AzureRM에서 Azure로 마이그레이션을 참조하세요.

참고 항목

Data Factory를 현재 사용할 수 있는 Azure 지역 목록을 보려면 지역별 사용 가능한 제품에서 관심 있는 지역을 선택합니다.

데이터 팩터리 만들기

  1. Windows PowerShell ISE(통합 스크립팅 환경)를 시작합니다.

  2. 변수를 만듭니다. 다음 스크립트를 복사하여 붙여넣습니다. SubscriptionNameResourceGroupName과 같은 변수를 실제 값으로 바꿉니다.

    # 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. 로그인하고 구독을 선택합니다. 스크립트에 다음 코드를 추가하여 로그인하고 Azure 구독을 선택합니다.

    Connect-AzAccount
    Select-AzSubscription -SubscriptionName $SubscriptionName
    
  4. 리소스 그룹 및 데이터 팩터리를 만듭니다.

    참고 항목

    이 단계는 선택 사항입니다. 데이터 팩터리가 이미 있는 경우 이 단계를 건너뜁니다.

    New-AzResourceGroup 명령을 사용하여 Azure 리소스 그룹을 만듭니다. 리소스 그룹은 Azure 리소스가 그룹으로 배포되고 관리되는 논리 컨테이너입니다. 다음 예제는 WestEurope 위치에 myResourceGroup이라는 리소스 그룹을 만듭니다.

    New-AzResourceGroup -Location $DataFactoryLocation -Name $ResourceGroupName
    

    다음 명령을 실행하여 데이터 팩터리를 만듭니다.

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

자체 호스팅 Integration Runtime 만들기

참고 항목

이 단계는 선택 사항입니다. 다른 데이터 팩터리와 공유하려는 자체 호스팅 통합 런타임이 이미 있는 경우 이 단계를 건너뜁니다.

다음 명령을 실행하여 자체 호스팅 통합 런타임을 만듭니다.

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

통합 런타임 인증 키 가져오기 및 노드 등록

다음 명령을 실행하여 자체 호스팅 통합 런타임에 대한 인증 키를 가져옵니다.

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

응답은 이 자체 호스팅 통합 런타임에 대한 인증 키를 포함합니다. 통합 런타임 노드를 등록할 때 이 키를 사용합니다.

자체 호스팅 통합 런타임 설치 및 등록

  1. Azure Data Factory Integration Runtime에서 자체 호스팅 통합 런타임 설치 관리자를 다운로드합니다.

  2. 설치 관리자를 실행하여 로컬 컴퓨터에 자체 호스팅 통합을 설치합니다.

  3. 이전 단계에서 검색한 인증 키를 사용하여 새로운 자체 호스팅 통합을 등록합니다.

다른 데이터 팩터리와 자체 호스팅 통합 런타임 공유

다른 데이터 팩터리 만들기

참고 항목

이 단계는 선택 사항입니다. 공유하려는 데이터 팩터리가 이미 있는 경우 이 단계를 건너뜁니다. 그러나 다른 데이터 팩터리에 역할 할당을 추가하거나 제거하려면 User Access Administrator 또는 Owner와 같은 Microsoft.Authorization/roleAssignments/writeMicrosoft.Authorization/roleAssignments/delete 사용 권한이 있어야 합니다.

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

사용 권한 부여

만들고 등록한 자체 호스팅 통합 런타임에 액세스해야 하는 데이터 팩터리에 권한을 부여합니다.

Important

이 단계를 건너뛰지 마세요!

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

연결된 자체 호스팅 통합 런타임 만들기

다음 명령을 실행하여 연결된 자체 호스팅 통합 런타임을 만듭니다.

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

이제 모든 연결된 서비스에서 이 연결된 통합 런타임을 사용할 수 있습니다. 연결된 통합 런타임은 통합 런타임 공유를 사용하여 작업을 실행합니다.

데이터 팩터리에서 통합 런타임 공유 취소

통합 런타임 공유에서 데이터 팩터리의 액세스를 취소하려면 다음 명령을 실행합니다.

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

기존 연결된 통합 런타임을 제거하려면 통합 런타임 공유에 대해 다음 명령을 실행합니다.

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

모니터링

공유된 IR

공유된 통합 런타임을 찾기 위한 선택 항목

공유된 통합 런타임 모니터링

연결된 IR

연결된 통합 런타임을 찾기 위한 선택 항목

연결된 통합 런타임 모니터링

자체 호스팅 IR 공유에 대해 알려진 제한 사항

  • 연결된 IR을 만드는 데이터 팩터리에는 관리 ID가 있어야 합니다. 기본적으로 Azure Portal 또는 PowerShell cmdlet에서 만든 데이터 팩터리에서는 관리 ID가 암시로 생성됩니다. 그러나 데이터 팩터리가 Azure Resource Manager 템플릿 또는 SDK를 통해 생성되는 경우 ID속성을 명시적으로 설정해야 합니다. 이 설정을 사용하면 리소스 관리자에서 관리 ID를 포함하는 데이터 팩터리를 만듭니다.

  • 이 기능을 지원하는 Data Factory .NET SDK는 1.1.0 이상 버전이어야 합니다.

  • 권한을 부여하려면 사용자에게 Owner 역할 또는 공유된 IR이 있는 데이터 팩터리의 상속된 Owner 역할이 있어야 합니다.

  • 공유 기능은 동일한 Microsoft Entra 테넌트 내의 데이터 팩터리에서만 작동합니다.

  • Microsoft Entra ID 게스트 사용자의 경우 검색 키워드를 사용하여 모든 데이터 팩토리를 나열하는 UI의 검색 기능이 작동하지 않습니다. 그러나 게스트 사용자가 데이터 팩터리의 Owner인 경우 검색 기능 없이 IR을 공유할 수 있습니다. IR을 공유해야 하는 데이터 팩터리의 관리 ID일 경우 할당 권한 상자에 관리 ID를 입력하고 Data Factory UI에서 추가를 선택합니다.

    참고 항목

    이 기능은 Data Factory V2에서만 사용할 수 있습니다.