Hadoop 接続マネージャー

適用対象: SQL Server Azure Data Factory の SSIS 統合ランタイム

Hadoop 接続マネージャーでは、プロパティに指定された値を使用して SQL Server Integration Services (SSIS) パッケージを Hadoop クラスターに接続できます。

Hadoop 接続マネージャーの構成

  1. [SSIS 接続マネージャーの追加] ダイアログ ボックスで [Hadoop]>[追加] の順に選択します。 [Hadoop Connection Manager Editor] (Hadoop Connection 接続マネージャー エディター) ダイアログ ボックスが表示されます。

  2. 関連する Hadoop クラスター情報を構成するには、左側のウィンドウで [WebHCat] または [WebHDFS] タブを選択します。

  3. Hive または Pig ジョブを Hadoop で起動するために WebHCat オプションを有効にする場合は、次の操作を行います。

    1. [WebHCat ホスト] に、WebHCat サービスをホストするサーバーを入力します。

    2. [WebHCat Port](WebHCat ポート) に、WebHCat サービスのポートを入力します (既定値は 50111 です)。

    3. WebHCat サービスにアクセスするときに使用する 認証 方法を選択します。 使用できる値は、 [基本][Kerberos]です。

      基本認証が指定された Hadoop 接続マネージャー エディターのスクリーンショット

      Kerberos 認証が指定された Hadoop 接続マネージャー エディターのスクリーンショット

    4. [WebHCat User](WebHCat ユーザー) に、WebHCat へのアクセスが許可されている ユーザー を入力します。

    5. [Kerberos] 認証を選択した場合は、ユーザーの パスワードドメインを入力します。

  4. HDFS との間でデータをコピーするために WebHDFS オプションを有効にする場合は、次の操作を行います。

    1. [WebHDFS Host](WebHDFS ホスト) に、WebHDFS サービスをホストするサーバーを入力します。

    2. [WebHDFS Port](WebHDFS ポート) に、WebHDFS サービスのポートを入力します (既定値は 50070 です)。

    3. WebHDFS サービスにアクセスするときに使用する 認証 方法を選択します。 使用できる値は、 [基本][Kerberos]です。

    4. [WebHDFS User](WebHDFS ユーザー) に、HDFS へのアクセスが許可されているユーザーを入力します。

    5. [Kerberos] 認証を選択した場合は、ユーザーの パスワードドメインを入力します。

  5. [接続テスト] を選択します。 (有効にした接続のみがテストされます)。

  6. [OK] を選択してダイアログ ボックスを閉じます。

Kerberos 認証を使用した接続

Hadoop 接続マネージャーで Kerberos 認証を使用できるようにオンプレミス環境を設定する方法は 2 つあります。 状況に合う方法を選択することができます。

オプション 1: SSIS コンピューターを Kerberos 領域に参加させる

要件:

  • ゲートウェイ コンピューターは Kerberos 領域に参加する必要があり、Windows ドメインに参加することはできません。

構成方法:

SSIS コンピューター:

  1. Ksetup ユーティリティを実行して、Kerberos Key Distribution Center (KDC) サーバーと領域を構成します。

    コンピューターはワークグループのメンバーとして構成する必要があります。これは、Kerberos 領域が Windows ドメインとは異なるためです。 次の例のように Kerberos 領域を設定し、KDC サーバーを追加します。 REALM.COM は、必要に応じて実際の領域に置き換えます。

    C:> Ksetup /setdomain REALM.COM`
    C:> Ksetup /addkdc REALM.COM <your_kdc_server_address>
    

    これらのコマンドを実行した後に、コンピューターを再起動します。

  2. Ksetup コマンドを実行して構成を確認します。 出力は次の例のようになります。

    C:> Ksetup
    default realm = REALM.COM (external)
    REALM.com:
        kdc = <your_kdc_server_address>
    

オプション 2: Windows ドメインと Kerberos 領域の間の相互信頼関係を有効にする

要件:

  • ゲートウェイ コンピューターは Windows ドメインに参加する必要があります。
  • ドメイン コントローラーの設定を更新するアクセス許可が必要です。

構成方法:

注意

次のチュートリアルの REALM.COMAD.COM を、必要に応じて実際の領域とドメイン コントローラーに置き換えます。

KDC サーバー:

  1. krb5.conf ファイルの KDC 構成を編集します。 次の構成テンプレートを参照して、KDC が Windows ドメインを信頼することを許可します。 既定で、この構成は /etc/krb5.conf にあります。

    [logging]
    default = FILE:/var/log/krb5libs.log
    kdc = FILE:/var/log/krb5kdc.log
    admin_server = FILE:/var/log/kadmind.log
    
    [libdefaults]
    default_realm = REALM.COM
    dns_lookup_realm = false
    dns_lookup_kdc = false
    ticket_lifetime = 24h
    renew_lifetime = 7d
    forwardable = true
    
    [realms]
    REALM.COM = {
        kdc = node.REALM.COM
        admin_server = node.REALM.COM
        }
    AD.COM = {
        kdc = windc.ad.com
        admin_server = windc.ad.com
        }
    
    [domain_realm]
    .REALM.COM = REALM.COM
    REALM.COM = REALM.COM
    .ad.com = AD.COM
    ad.com = AD.COM
    
    [capaths]
    AD.COM = {
        REALM.COM = .
        }
    

    構成が完了したら、KDC サービスを再起動します。

  2. KDC サーバー上の krbtgt/REALM.COM@AD.COM というプリンシパルを準備します。 次のコマンドを使用します。

    Kadmin> addprinc krbtgt/REALM.COM@AD.COM

  3. hadoop.security.auth_to_local HDFS サービス構成ファイルに RULE:[1:$1@$0](.*@AD.COM)s/@.*// を追加します。

ドメイン コントローラー:

  1. 次の Ksetup コマンドを実行して、領域のエントリを追加します。

    C:> Ksetup /addkdc REALM.COM <your_kdc_server_address>
    C:> ksetup /addhosttorealmmap HDFS-service-FQDN REALM.COM
    
  2. Windows ドメインから Kerberos 領域への信頼関係を確立します。 次の例で、[password] はプリンシパル krbtgt/REALM.COM@AD.COM のパスワードです。

    C:> netdom trust REALM.COM /Domain: AD.COM /add /realm /password:[password]

  3. Kerberos で使用する暗号化アルゴリズムを選択します。

    1. [サーバー マネージャー]>[グループ ポリシーの管理]>[ドメイン] の順に選択します。 次に、 [グループ ポリシー オブジェクト]>[Default or Active Domain Policy](既定またはアクティブなドメイン ポリシー)>[編集] の順に選択します。

    2. グループ ポリシー管理エディターのポップアップ ウィンドウで、[コンピューターの構成]>[ポリシー]>[Windows の設定] の順に選択します。 次に、 [セキュリティ設定]>[ローカル ポリシー]>[セキュリティ オプション] の順に選択します。 [ネットワーク セキュリティ: Kerberos で許可する暗号化の種類を構成する] を構成します。

    3. KDC への接続に使用する暗号化アルゴリズムを選択します。 通常は任意のオプションを選択できます。

      Kerberos の暗号化の種類のスクリーンショット

    4. Ksetup コマンドを使用して、特定の領域に使用する暗号化アルゴリズムを指定します。

      C:> ksetup /SetEncTypeAttr REALM.COM DES-CBC-CRC DES-CBC-MD5 RC4-HMAC-MD5 AES128-CTS-HMAC-SHA1-96 AES256-CTS-HMAC-SHA1-96

  4. Windows ドメインで Kerberos プリンシパルを使用するには、ドメイン アカウントと Kerberos プリンシパル間のマッピングを作成します。

    1. [管理ツール]>[Active Directory ユーザーとコンピューター] の順に選択します。

    2. [表示]>[高度な機能] の順に選択して、高度な機能を構成します。

    3. マッピングを作成するアカウントを見つけ、右クリックして [名前のマッピング] を表示し、[Kerberos 名] タブを選択します。

    4. 領域からプリンシパルを追加します。

  5. ゲートウェイ コンピューターで、次の Ksetup コマンドを実行して、領域のエントリを追加します。

C:> Ksetup /addkdc REALM.COM <your_kdc_server_address>
C:> ksetup /addhosttorealmmap HDFS-service-FQDN REALM.COM

関連項目

Hadoop Hive タスク
Hadoop Pig タスク
Hadoop ファイル システム タスク