次の方法で共有


Azure Data Factoryで共有セルフホステッド統合ランタイムを作成する

適用対象: Azure Data Factory Azure Synapse Analytics

ヒント

Data Factory in Microsoft Fabric は、よりシンプルなアーキテクチャ、組み込みの AI、および新機能を備えた次世代のAzure Data Factoryです。 データ統合を初めて使用する場合は、Fabric Data Factory から始めます。 既存の ADF ワークロードをFabricにアップグレードして、データ サイエンス、リアルタイム分析、レポートの新機能にアクセスできます。

このガイドでは、Azure Data Factoryで共有セルフホステッド統合ランタイムを作成する方法について説明します。 これにより、共有のセルフホステッド統合ランタイムを他のデータ ファクトリで使用できます。

注意

セルフホステッド統合ランタイムを共有するデータ ファクトリが増加すると、ワークロードが増加し、キュー時間が長くなることがあります。 キュー時間が過度に長くなる場合、ノードをスケールアップしたり、ノードを追加してスケールアウトしたりできます。 最大 4 ノードまで追加できます。

Azure Data Factoryで共有セルフホステッド統合ランタイムを作成する

データ ファクトリに既に設定してある既存のセルフホステッド統合ランタイム インフラストラクチャを再利用することができます。 この再利用により、共有された既存のセルフホステッド IR を参照して、異なるデータ ファクトリにリンクされたセルフホステッド統合ランタイムを作成できます。

この機能の概要とデモンストレーションを参照するには、以下の 12 分間の動画を視聴してください。

用語

  • 共有された IR:物理インフラストラクチャで実行されている元のセルフホステッド IR。
  • リンクされた 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を操作することをお勧めします。 作業を開始するには、「Install Azure PowerShellを参照してください。 Az PowerShell モジュールに移行する方法については、「AzRM から Azを参照してください。

注意

Data Factory が現在使用できるAzureリージョンの一覧については、リージョン別に利用可能な製品で関心のあるリージョンを選択します。

Data Factory の作成

  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. リソース グループとデータ ファクトリを作成します。

    注意

    この手順は省略可能です。 既にデータ ファクトリがある場合は、この手順をスキップしてください。

    Azure リソース グループを作成するには、New-AzResourceGroup コマンドを使用します。 リソース グループは、Azure リソースがグループとしてデプロイおよび管理される論理コンテナーです。 次の例では、myResourceGroup という名前のリソース グループを WestEurope の場所に作成します。

    New-AzResourceGroup -Location $DataFactoryLocation -Name $ResourceGroupName
    

    Data Factory を作成するには、次のコマンドを実行します。

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

自己ホスト型統合ランタイムを作成する

注意

この手順は省略可能です。 他のデータ ファクトリと共有するセルフホステッド統合ランタイムが既にある場合は、この手順をスキップしてください。

次のコマンドを実行して、セルフホステッド統合ランタイムを作成します。

$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. 前の手順で取得した認証キーを使用して、新しいセルフホステッド統合を登録します。

セルフホステッド統合ランタイムを他のデータ ファクトリと共有する

別のデータ ファクトリを作成する

注意

この手順は省略可能です。 共有先のデータ ファクトリが既にある場合は、この手順をスキップしてください。 ただし、他のデータ ファクトリにロールの割り当てを追加または削除するには、Microsoft.Authorization/roleAssignments/writeMicrosoft.Authorization/roleAssignments/delete アクセス許可 (ユーザー アクセス管理者Owner が必要です。

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

アクセス許可を付与する

作成して登録したセルフホステッド統合ランタイムにアクセスする必要があるデータ ファクトリに対してアクセス許可を付与します。

重要

この手順はスキップしないでください。

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 ポータルまたは PowerShell コマンドレットで作成されたデータ ファクトリには、暗黙的に作成されたマネージド ID があります。 ただし、Azure Resource Manager テンプレートまたは SDK を使用してデータ ファクトリを作成する場合は、Identity プロパティを明示的に設定する必要があります。 この設定により、Resource Managerはマネージド ID を含むデータ ファクトリを作成できます。

  • この機能をサポートする Data Factory .NET SDK は、バージョン 1.1.0 以降である必要があります。

  • 許可を与えるには、共有 IR が存在するデータファクトリにおいて、ユーザーが所有者のロールまたはその継承ロールを持っている必要があります。

  • 共有機能は、同じMicrosoft Entra テナント内のデータ ファクトリに対してのみ機能します。

  • Microsoft Entra ID ユーザーでは、検索キーワードを使用してすべてのデータ ファクトリを一覧表示する UI の検索機能は機能しません。 ただし、ゲスト ユーザーがデータ ファクトリの所有者である限り、検索機能を使用せずに IR を共有できます。 IR を共有する必要があるデータ ファクトリのマネージド ID について、 [アクセス許可の割り当て] ボックスにそのマネージド ID を入力し、Data Factory UI で [追加] を選択します。

    注意

    この機能は Data Factory V2 でのみ使用できます。

  • Azure Data Factory でインテグレーション ランタイムの概念を確認します。

  • Azure ポータルでセルフホステッド統合ランタイムを作成する方法について説明します。