Talend Data Preparation、Streams Runner、およびSparkジョブサーバー間のHTTPS接続の設定 - 7.1

Talend ESB インストレーションガイド Linux

EnrichVersion
7.1
EnrichProdName
Talend ESB
task
インストールとアップグレード
EnrichPlatform
Talend Administration Center
Talend Artifact Repository
Talend CommandLine
Talend Data Preparation
Talend Data Stewardship
Talend ESB
Talend Identity and Access Management
Talend Installer
Talend Log Server
Talend Runtime
Talend Studio

Talend Data PreparationStreams Runner、およびSparkジョブサーバー間の接続を保護するには、対応する設定ファイルを編集する必要があります。

Streams Runner設定ファイルのセキュリティ設定は、上書きを避けるために、[Append]セクションで、[Include]セクションの後に、ファイルの最後で実行する必要があります。

最初のステップは、Sparkジョブサーバー HTTPSでサービスとして設定することです。次に、HTTPSで動作するStreams RunnerSparkジョブサーバー間のSSL通信を有効にする必要があります。その後、HTTPSでStreams Runnerをサービスとして設定し、最後にHTTPSで動作するTalend Data PreparationStreams Runner間のSSL通信を有効にします。

始める前に

  • Talend Data PreparationはHTTPSのサービスとして設定されています。詳細は、Talend Data Preparation向けHTTPS接続の設定を参照して下さい。
  • Talend Data Preparationの認証を生成し、WebブラウザーのTrustStoreに追加しました。
  • SparkジョブサーバーおよびStreams Runnerがインストールされ実行されています。

手順

  1. HTTPSでSparkジョブサーバーサービスを保護するには、<Spark_Job_Server_installation_path>/settings.sh 設定ファイルを開きます。
  2. security_ssl_enabledパラメーターの値をonに設定します。
  3. security_path_to_keystoreおよびsecurity_keystore_password のパラメーターの値を編集して、Sparkジョブサーバーの認証を含むkeystoreファイルのパスとパスワードを設定します。
    security_ssl_enabled=on
    # DO NOT CHANGE
    # SECURITY PATH TO KEYSTORE
    # Required : No
    # Env variable : SECURITY_PATH_TO_KEYSTORE
    security_path_to_keystore=<path_to_keystore>
    # DO NOT CHANGE
    # SECURITY KEYSTORE PASSWORD
    # Required : No
    # Env variable : SECURITY_KEYSTORE_PASSWORD
    security_keystore_password=<password>

    サービスを再起動すると、SparkジョブサーバーはHTTPSで実行されます。

  4. HTTPSで実行されているStreams RunnerSparkジョブサーバー間のSSL通信を有効にするには、次のいずれかを行います。   
    • export JOBSERVER_TRANSPORT_PROTOCOL=httpsというコマンドでJOBSERVER_TRANSPORT_PROTOCOL環境変数を使用します。
    • <Streams_Runner_installation_path>/conf/application.conf設定ファイルを編集し、app.svc.jobserver.protocolパラメーターの値をhttpsに設定します。

    環境変数を使用すると、application.conf設定が上書きされます。

  5. Sparkジョブサーバーの認証またはその認証機関をStreams RunnerTrustStoreに追加するには、TrustStoreで使用されるファイル形式に従って、次の行を<Streams_Runner_installation_path>/conf/application.confファイルに追加します。
    • .pemファイルの場合:
        play.ws.ssl {
          trustManager = {
            stores = [
              { type = "PEM", path = "/path/to/pem_file" }
            ]
          }
        }
    • .jksファイルの場合:
        play.ws.ssl {
          trustManager = {
            stores = [
              { type="JKS", path="/path/to/truststore", password="<password>"}
            ]
          }
        }

    詳細は、『Playドキュメント』を参照して下さい。

  6. HTTPSでStreams Runnerサービスを保護するには、<Streams_Runner_installation_path>/conf/application.confファイルの次の行を編集して、認証のパスとパスワードを定義します。
    play.server.https.keyStore.path = <path_to_keystore>
    play.server.https.keyStore.password = <password>
  7. 次の2行を編集してHTTPSポートを設定し、HTTPポートを無効にします。
    https.port=9443
    http.port=disabled

    9443は、HTTPS接続のデフォルトのポート値です。

    警告: play.server.http.port=<port>設定はhttp.port=disabled設定と競合し、ポートは無効になりません。

    サービスを再起動すると、Streams RunnerはHTTPSで実行されます。

  8. HTTPSで動作するTalend Data PreparationStreams Runner間のSSL通信を有効にするに+は、次のコマンドを使用してStreams Runner認証またはその認証機関を取得し、Talend Data PreparationTrustStoreに追加します。
    keytool -import -trustcacerts -alias <cert-alias> -file <streams_runner_certificate.crt> -keystore <truststore.jks>
  9. <Data_Preparation_Path>/config/application.propertiesファイルで、次のプロパティを追加してストアを設定します。
    tls.trust-store=/path/to/<truststore.jks>
    tls.trust-store-password=<trust-store_password>
    
    false to disable hostname verification
    tls.verify-hostname=false
  10. Talend Data Preparationを再起動します。

タスクの結果

HTTPSで実行されているTalend Data Preparationインスタンスは、Streams RunnerおよびSparkジョブサーバーと通信でき、セキュアなHTTPS接続でも実行できます。