Talend Data Preparation、Streams Runner、Spark Job Serverの間に接続を保護するには、対応する設定ファイルを編集する必要があります。
Streams Runner設定ファイルのセキュリティ設定は、上書きを避けるため、ファイルの最後にあるIncludeセクションの後のAppendセクションで実行する必要があります。
最初のステップは、Spark Job Server HTTPSでサービスとして設定することです。次に、HTTPSで動作するStreams RunnerとSpark Job Server間のSSL通信を有効にする必要があります。その後、HTTPSでStreams Runnerをサービスとして設定し、最後にHTTPSで動作するTalend Data PreparationとStreams Runner間のSSL通信を有効にします。
始める前に
- Talend Data PreparationはHTTPSのサービスとして設定されています。詳細は、Talend Data PreparationのHTTPS接続を設定をご覧ください。
- Talend Data Preparationの認証を生成し、WebブラウザーのTrustStoreに追加しました。
- Spark Job ServerおよびStreams Runnerがインストールされ実行されています。
手順
-
HTTPSでSpark Job Serverサービスを保護するには、<Spark_Job_Server_installation_path>/settings.sh 設定ファイルを開きます。
-
security_ssl_enabled
パラメーターの値をon
に設定します。
-
security_path_to_keystore
およびsecurity_keystore_password
のパラメーターの値を編集して、Spark Job Serverの認証を含む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 Job ServerはHTTPSで実行されます。
-
HTTPSで実行されているStreams RunnerとSpark Job Server間のSSL通信を有効にするには、次のいずれかを行います。
export JOBSERVER_TRANSPORT_PROTOCOL=https
というコマンドでJOBSERVER_TRANSPORT_PROTOCOL
環境変数を使用します。
- <Streams_Runner_installation_path>/conf/application.conf設定ファイルを編集し、
app.svc.jobserver.protocol
パラメーターの値をhttps
に設定します。
環境変数を使用すると、application.conf設定がオーバーライドされます。
-
Spark Job Serverの認証またはその認証機関を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>"}
]
}
}
-
HTTPSでStreams Runnerサービスを保護するには、<Streams_Runner_installation_path>/conf/application.confファイルの次の行を編集して、認証のパスとパスワードを定義します。
play.server.https.keyStore.path = <path_to_keystore>
play.server.https.keyStore.password = <password>
-
次の2行を編集してHTTPSポートを設定し、HTTPポートを無効にします。
https.port=9443
http.port=disabled
9443
は、HTTPS接続のデフォルトのポート値です。
警告: play.server.http.port=<port>
設定はhttp.port=disabled
設定と競合し、ポートは無効になりません。
サービスを再起動すると、Streams RunnerはHTTPSで実行されます。
-
HTTPSで動作するTalend Data PreparationとStreams Runner間のSSL通信を有効にするためには、次のコマンドを使ってStreams Runner認証またはその認証機関を取得し、Talend Data PreparationTrustStoreに追加します。
keytool -import -trustcacerts -alias <cert-alias> -file <streams_runner_certificate.crt> -keystore <truststore.jks>
-
<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=true
-
Talend Data Preparationを再起動します。
タスクの結果
HTTPSで実行されているTalend Data Preparationインスタンスは、Streams RunnerおよびSpark Job Serverと通信でき、セキュアなHTTPS接続でも実行できます。