手動による接続の設定 - 7.1

Talend Real-time Big Data Platform Studioユーザーガイド

author
Talend Documentation Team
EnrichVersion
7.1
EnrichProdName
Talend Real-Time Big Data Platform
task
ジョブデザインと開発
EnrichPlatform
Talend Studio

このタスクについて

特定のHadoop設定をインポートする方法がいつでも効率的なことは確かですが、たとえば、インポートできる設定が手元にない場合には、接続を手動でセットアップする必要があります。

手順

  1. この[Hadoop Configuration Import Wizard] (Hadoop設定インポートウィザード)ウィンドウで[Enter manually Hadoop services] (Hadoopサービスを手動で入力)を選択し、[Finish] (終了)をクリックして[Hadoop Cluster Connection] (Hadoopクラスター接続)ウィザードに戻ります。
    このモードでは、カスタムHadoopディストリビューションに接続することができます。詳細は、カスタムHadoopディストリビューションへの接続を参照して下さい。
  2. 選択したバージョンに応じてアクティブになったフィールドに情報を入力します。
    これらのフィールドの中の、[NameNode URI]および[Resource Manager] (リソースマネージャー)フィールド)には、選択したディストリビューションに対応するデフォルトの構文とポート番号が自動的に入力されています。使用するHadoopクラスターの設定に応じて必要な部分のみを更新する必要があります。各種入力フィールドの詳細は、以下のリストを参照して下さい。
    これらのフィールドには、次のようなものがあります。
    • [Namenode URI] (ネームノードURI)

      使用するHadoopディストリビューションのネームノードとして使用するマシンのURIを入力します。

      ネームノードは、Hadoopシステムのマスターノードです。たとえば、Apache Hadoopディストリビューションのネームノードとしてmachine1という名前のマシンを選択した場合、URIはhdfs://machine1:portnumberとなります。

      MapRディストリビューションを使用する場合は、このフィールドのmaprfs:///をそのままにしておくだけで、MapRクライアントが接続の作成時に残りの部分を処理します。ただし、MapRクライアントが正しくインストールされている必要があります。MapRクライアントのセットアップ方法の詳細は、http://doc.mapr.com/display/MapR/Setting+Up+the+ClientにあるMapRのドキュメンテーションを参照して下さい。

    • リソースマネージャー:

      使用するHadoopディストリビューションのリソースマネージャーサービスとして使用するマシンのURIを入力します。

      Hadoopディストリビューションの一部の古いバージョンでは、リソースマネージャーサービスの代わりにジョブトラッカーサービスの場所を設定しなければならない場合があります。

      その場合は、[Resourcemanager scheduler] (リソースマネージャースケジューラー)のアドレスなど、関連サービスのアドレスをさらに設定する必要があります。この接続をtHiveConnectionなどビッグデータに関連するコンポーネントに使用すると、[Advanced settings] (詳細設定)ビューでMap/Reduceの計算やYARNの[ApplicationMaster] (アプリケーションマスター)にメモリを割り当てることができます。リソースマネージャー、そのスケジューラー、およびアプリケーションマスターの詳細は、ディストリビューションのYARNに関するドキュメンテーションを参照して下さい。たとえば、次のとおりです。

      http://hortonworks.com/blog/apache-hadoop-yarn-concepts-and-applications/

    • ジョブヒストリー:

      使用するHadoopクラスターのジョブヒストリーサーバーの場所を入力します。これにより、現在のジョブのメトリックス情報がそのJobHistoryサーバーに保存されます。

    • ステージングディレクトリー:

      実行中のプログラムによって作成された一時ファイル用のHadoopクラスターで定義した、このディレクトリーを入力します。一般的には、このディレクトリーはディストリビューションのyarn-site.xmlmapred-site.xmlなどの設定ファイル内にあるyarn.app.mapreduce.am.staging-dirプロパティの下にあります。

    • [Use datanode hostname] (データノードホスト名を使用):

      このチェックボックスを選択して、これらのホスト名によるデータノードへのアクセスをジョブに許可します。これは、実際にはdfs.client.use.datanode.hostnameプロパティをtrueに設定しています。この接続がS3Nファイルシステムに接続するジョブによって使用される場合は、このチェックボックスを選択する必要があります。

    • [Enable Kerberos security] (Kerberosセキュリティの有効化):

      Kerberosセキュリティを実行しているHadoopディストリビューションにアクセスする場合は、このチェックボックスを選択し、表示されるフィールドにネームノードとしてKerberosのプリンシパル名を入力します。

      これらのプリンシパルはディストリビューションの設定ファイルの中にあります。たとえば、CDH4ディストリビューションでは、リソースマネージャーのプリンシパルはyarn-site.xmlファイルで設定され、ジョブヒストリーのプリンシパルはmapred-site.xmlファイルで設定されています。

      ログインにkeytabファイルが必要な場合は、[Use a keytab to authenticate] (認証にkeytabを使用)チェックボックスを選択します。keytabファイルには、Kerberosのプリンシパルと暗号化したキーのペアが含まれています。使用するプリンシパルを[Principal] (プリンシパル)フィールドに入力し、keytabファイルへのパスを[Keytab]フィールドに入力します。

      keytabが有効なジョブは、プリンシパルに任命されたユーザーでなくても実行できますが、使用するkeytabファイルの読み取り権限が必要です。たとえば、user1というユーザー名でジョブを実行し、使用するプリンシパルがguestの場合、user1に使用するkeytabファイルの読み取り権限があることを確認して下さい。

    • MapR cluster V4.0.1以降に接続する予定で、クラスターのMapRチケットセキュリティシステムが有効の場合は、[Force MapR Ticket Authentication] (MapRチケット認証を強制)チェックボックスを選択し、以下のパラメーターを定義する必要があります。

      1. [Password] (パスワード)フィールドに、ユーザーが認証に使用するパスワードを指定します。

        MapRセキュリティチケットがMapRによってこのユーザーのために生成され、設定しているジョブを実行するマシンに保存されます。

      2. [Cluster name] (クラスター名)フィールドに、このユーザー名を使用して接続するMapRクラスターの名前を入力します。

        このクラスター名は、クラスターの/opt/mapr/confに保存されているmapr-clusters.conf ファイル内にあります。

      3. [Ticket duration] (チケットの有効期間)フィールドに、チケットが有効となる時間の長さ(秒単位)を入力します。
      4. [Launch authentication mechanism when the Job starts] (ジョブの開始時に認証メカニズムを起動する) チェックボックスを選択のままにしておきます。これは、この接続を使用するジョブが実行を開始するときに現在のセキュリティ設定を考慮するよう指定するためです。

      MapRクラスターのデフォルトセキュリティ設定が変更された場合は、このカスタムセキュリティ設定を考慮するように接続を設定する必要があります。

      MapRは、クラスターの/opt/mapr/confに保存されているmapr.login.confファイル内に、そのセキュリティ設定を指定します。この設定ファイルと、設定ファイルが背後で使用するJavaサービスの詳細は、mapr.login.confおよびJAASを参照して下さい。

      次の手順に従って設定を行います。

      1. このmapr.login.confファイルで何が変更されたかを確認します。

        関連情報は、MapRクラスターの管理者または開発者から入手できます。

      2. MapR設定ファイルの場所がクラスター内の別の場所に変更された場合、つまり、MapRのホームディレクトリーが変更された場合は、[Set the MapR Home directory] (MapRのホームディレクトリーを設定する)チェックボックスを選択し、新しいホームディレクトリーを入力します。それ以外の場合は、このチェックボックスの選択を解除したままにしておきます。この場合は、デフォルトのホームディレクトリーが使用されます。
      3. mapr.login.confファイル内で使用するログインモジュールが変更された場合は、[Specify the Hadoop login configuration] (Hadoopログイン設定の指定)チェックボックスを選択し、mapr.login.confファイルから呼び出すモジュールを入力します。それ以外の場合は、このチェックボックスを外したままにしておきます。この場合は、デフォルトのログインモジュールが使用されます。

        たとえば、hadoop_kerberosモジュールを呼び出すにはkerberosと入力し、hadoop_hybridモジュールを呼び出すにはhybridと入力します。

    • ユーザー名:

      使用するHadoopディストリビューションのユーザー認証名を入力します。

      このフィールドを空白のままにすると、Studioはクライアントへのログインに使用している名前を使ってHadoopディストリビューションにアクセスします。たとえば、[Company]という名前でログインしているWindowsマシンでStudioを使用している場合、ランタイムにも[Company]という認証名が使用されます。

    • [Group] (グループ):

      認証されたユーザーが所属するグループ名を入力します。

      このフィールドは、使用しているHadoopのディストリビューションによっては、利用できないこともあります。

    • [Hadoop properties] (Hadoopのプロパティ):

      使用するHadoopディストリビューションの設定をカスタマイズする必要がある場合は、[...]ボタンをクリックしてプロパティテーブルを開き、カスタマイズするプロパティを追加します。その後、ランタイムにStudioがHadoopのエンジンに使用するデフォルトのプロパティが、カスタマイズした設定に上書きされます。

      このテーブルで設定されたプロパティは、現在のHadoop接続をベースに作成できる子接続に継承され再利用されます。

      Hadoopのプロパティの詳細は、http://hadoop.apache.org/docs/current/に記載されているApacheのHadoopについてのドキュメンテーションを参照するか、使用するHadoopディストリビューションのドキュメンテーションを参照して下さい。たとえば、次のページにはデフォルトのHadoopプロパティの一部がリストされています: https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/core-default.xml

      このプロパティテーブルの活用方法の詳細は、再利用可能なHadoopプロパティの設定を参照して下さい。

    • [Use Spark Properties] (Sparkプロパティの使用): [Use Spark properties] (Sparkプロパティの使用)チェックボックスを選択して、プロパティテーブルを開き、使用するSparkの設定に固有のプロパティまたはプロパティspark-defaults.confを追加します。
    • ディストリビューションにMicrosoft HD Insightを使用する場合、前述のパラメーターの代わりに、HD Insightクラスターには[WebHCat configuration] (WebHCat設定)、HD Insightクラスターの資格情報には[HDInsight configuration] (HDInsight設定)、および[Window Azure Storage] (Window Azureストレージ)の設定を行う必要があります。

      WebHCatの設定

      使用するMicrosoft HD Insightクラスターのアドレスと認証情報を入力します。たとえば、アドレスはyour_hdinsight_cluster_name.azurehdinsight.netとなり、Azureアカウントの認証情報は次のようになります: ychen。Studioはこのサービスを使ってジョブをHD Insightクラスターに送信します。

      [Job result folder] (ジョブ結果保存フォルダー)フィールドに、使用するAzure Storageでのジョブの実行結果を保存するロケーションを入力します。

      [HDInsight configuration] (HDInsightの設定)

      • [Username] (ユーザー名)は、クラスターの作成時に定義されたものです。これは、クラスターの[SSH + Cluster] (SSH + クラスター)ログインブレードで確認できます。
      • [Password] (パスワード)は、このクラスターの認証でHDInsightクラスターを作成するときに定義します。

      Windows Azure Storageの設定

      使用するAzure Storageアカウントのアドレスと認証情報を入力します。この設定では、ビジネスデータを読み書きする場所は定義せず、ジョブをデプロイする場所のみ定義します。したがって、この設定にはAzure Storageシステムを常に使用します。

      [Container] (コンテナー)フィールドに、使用するコンテナーの名前を入力します。利用可能なコンテナは、使用するAzure StorageアカウントのBlobブレードで確認できます。

      [Deployment Blob] (デプロイメントBlob)フィールドに、このAzure Storageアカウントで現在のジョブとその依存ライブラリーを保存する場所を入力します。

      [Hostname] (ホスト名)フィールドに、https://部分を含まないAzureストレージアカウントのプライマリーBlobサービスエンドポイントを入力します。このエンドポイントは、このストレージアカウントの[Properties] (プロパティ)ブレードにあります。

      [Username] (ユーザー名)フィールドに、使用するAzureストレージアカウントの名前を入力します。

      [Password] (パスワード)フィールドに、使用するAzureストレージアカウントのアクセスキーを入力します。このキーは、このストレージアカウントの[Access keys] (アクセスキー)ブレードにあります。

    • Cloudera V5.5+をお使いの場合は、[Use Cloudera Navigator] (Clouderaナビゲーターの使用)チェックボックスをオンにして、ディストリビューションのCloudera ナビゲーターが、コンポーネント間のスキーマの変更を含め、ジョブ来歴をコンポーネントレベルまでトレースできるようにすることが可能です。

      続いて[...]ボタンをクリックして[Cloudera Navigator Wizard] (Clouderaナビゲーターウィザード)ウィンドウを開き、以下のパラメーターを定義する必要があります。

      1. [Username] (ユーザー名)および[Password] (パスワード): Clouderaナビゲーターへの接続に使用するクレデンシャルです。

      2. [URL]: Clouderaナビゲーターの接続先を入力します。

      3. [Metadata URL] (メタデータURL): ナビゲーターメタデータの場所を入力します。

      4. [Client URL] (クライアントURL): デフォルト値をそのままにしておきます。

      5. [Autocommit] (自動コミット): このジョブの実行の最後にClouderaナビゲーターが現在のジョブの来歴を生成するよう設定するには、このチェックボックスを選択します。

        このオプションを指定すると、ClouderaナビゲーターはHDFSファイルとディレクトリー、HiveクエリーまたはPigスクリプトなど、利用可能な全てのエンティティの来歴を生成するように強制されるため、ジョブの実行速度の低下を招くことから本番環境には推奨されません。

      6. [Die on error] (エラー発生時に強制終了): Clouderaナビゲーターへの接続が失敗したときにジョブの実行を停止するには、このチェックボックスを選択して下さい。

        それ以外の場合は、オフにしてジョブが実行を継続できるようにして下さい。

      7. [Disable SSL] (SSLの無効化): ジョブがSSL検証プロセスなしでClouderaナビゲーターに接続するように指定するには、このチェックボックスを選択します。

        この機能は、ジョブのテストを容易にするためのものですが、プロダクションクラスターで使用することは推奨されません。

      設定が終了したら、[Finish] (終了)をクリックして設定を確定します。


  3. デフォルトの代わりにカスタム設定を使用する必要がある場合は、[Use custom Hadoop confs] (カスタムHadoop設定を使用する)チェックボックスをオンにし、[...]ボタンをクリックし、インポートウィザードを開いて、AmbariまたはCloudera Manager、もしくはローカルファイルから設定をインポートします。

    このインポートで上書きされるのは、Studioが使用するデフォルトのHadoop設定のみであり、この[Hadoop cluster connection] (Hadoopクラスター接続)ウィザードでユーザーが定義したパラメーターは上書きされません。

    このインポートの詳細は、AmbariまたはClouderaから設定を取得およびローカルファイルからの設定のインポートを参照して下さい。

  4. [Check services] (サービスの確認)ボタンをクリックして、このウィザードで指定したネームノードおよびジョブトラッカーまたはリソースマネージャーサービスにStudioから接続できることを確認します。
    プロセスの確認と接続状態を示すダイアログボックスが表示されます。ここで接続失敗と表示される場合、接続ウィザードで定義した接続情報を再確認して更新する必要があります。
  5. [Finish] (完了)をクリックして変更を確定し、ウィザードを閉じます。
    新しくセットアップしたHadoopの接続は、[Repository] (リポジトリー)ツリービューの[Hadoop cluster]フォルダーの下に表示されます。この接続には、同じHadoopディストリビューションの下にあるモジュールに接続を作成しない限り、サブフォルダーはありません。