0

デフォルトの appdeployappmaster プロパティを変更するにはどうすればよいですか?

Spring DataFlow YARN を介してアプリケーションをデプロイしようとしているとき。アプリを登録し、ストリームを作成して、[デプロイ] ボタンをクリックしました。そうすると、次のエラーが表示されます。

[XNIO-2 task-2] WARN oscdscStreamDeploymentController - アプリのデプロイ時の例外 StreamAppDefinition [streamName=histo, name=my-app, registeredAppName=my-app, properties={spring.cloud.stream.bindings.input.destination=log , spring.cloud.stream.bindings.input.group=histo}]: java.util.concurrent.ExecutionException: org.springframework.yarn.YarnSystemException: 無効なホスト名: ローカル ホストは: (不明); 宛先ホスト: "null":8032; java.net.UnknownHostException; 詳細については 、 http ://wiki.apache.org/hadoop/UnknownHost を参照してください。ネストされた例外は java.net.UnknownHostException: Invalid host name: local host is: (unknown); 宛先ホスト: "null":8032; java.net.UnknownHostException; 詳細については、 http ://wiki.apache.org/hadoop/UnknownHost を参照してください。

ご覧のとおり、デプロイヤーは「Resource Manager」URI を見つけることができませんが、Spring DataFlow サーバーの起動時には十分に検出されます。したがって、展開時にのみ問題が発生します。

この問題を解決するには、どのプロパティを設定する必要がありますか? また、どこで設定しますか?

編集 1: Janne Valkealahti の回答に続いて、次のプロパティを に追加/dataflow/apps/stream/app/servers.ymlし、サーバーを再起動し、ストリームを再展開しようとしました。

spring:
  cloud:
    dataflow:
      yarn:
        version: 0.0.1-SNAPSHOT
    deployer:
      yarn:
        version: 1.0.2.RELEASE
    stream:
      kafka:
        binder:
          brokers: kafka.my-domain.com:9092
          zkNodes: zookeeper.my-domain.com:2181/node
  # Configured for Hadoop single-node running on localhost. Replace with property values reflecting your
  # actual Hadoop cluster when running in a distributed environment.
  hadoop:
    fsUri: hdfs://mapr.my-domain.com/referentiel/ca_category_2014/
    resourceManagerHost: mapr.my-domain.com
    resourceManagerPort: 8032
    resourceManagerSchedulerAddress: mapr.my-domain.com:8030
  session:
    store-type: none

私はまだまったく同じメッセージを受け取ります。

PS: 私は Ambari を使用していません。最初に手動でどのように動作するかを理解したいと思います。

編集 2:-Dspring.config.location DataFlow サーバーに VM 引数を 追加する問題を解決しました。指定された構成がデプロイヤに渡され、アプリケーションが効果的にデプロイされます。

それに対する答えを書きます。

4

2 に答える 2

0

インストールが ambari または通常の手動 YARN インストールに基づいているかどうかはわかりませんでしたので、後者 (手動) だったと思います。

問題は、デフォルトで が にconfig/servers.yml設定されているため、ディストリビューションで使用する の設定が間違っていることだと思います。このファイルは、ストリームが開始されたときに一度だけ hdfs に配布されます。ストリームを再デプロイ/作成した後に変更した場合、hdfs ディレクトリ内のアプリは更新されません。デフォルトでは、hdfs のこのファイルは.resourceManagerHostlocalhost/dataflow/apps/stream/app/servers.yml

このエラーは理にかなっており、全体を制御するデータフロー ヤーン サーバーもアプリを送信するためにヤーン リソース マネージャーにアクセスする必要があるためです。サーバーの設定も同じservers.ymlファイルから取得されます。

于 2016-12-02T18:15:46.870 に答える