2017-06-21 3 views
1

私はspringxdストリーム====> source-JMSキュー - >変換 - カスタムJavaプロセッサ(XML-AVRO) - > Sink-HDFS -Dataset。springxdストリームでHDFS-Datasetを使用してavroデータを保存してケルベロスチケットを更新できない

ストリームは正常に動作しますが、24時間後に連続接続されているため、Kerberos認証チケットを更新できず、HDFSへの書き込みが停止します。このストリームがデプロイされているコンテナを再起動していますが、問題が発生しても、メッセージはエラー・キューに送られなくても失われます。

私は助けを必要と - 私たちは、ストリームのためのKerberosチケットを更新できる場合

  1. 。シンクコードを更新する必要があり、カスタムシンクを作成する必要があります。
  2. 私はkerberos認証を通過する必要がないローカルファイルシステムにHDFS-Datasetのようなspringxdのマニュアルを検索していません。

ここをクリックしてください。

おかげで、

答えて

0

は、これは、文書化されていないスプリングXDではよく知られた問題です:)。かなり類似したものが、長い時間にわたって配置され、後で実行しようとするバッチジョブに起こります。なぜですか? hadoopConfigurationオブジェクトはスコープをシングルトンに強制しており、ストリーム/ジョブをspring-xdにデプロイするとインスタンス化されているためです。私たちのケースでは、春のバッチジョブのリスナーを作成して、ジョブの実行前にチケットを更新しました。あなたは、私はそれが役に立てば幸い、このようなガイドに

https://github.com/spring-projects/spring-hadoop/blob/master/spring-hadoop-core/src/main/java/org/springframework/data/hadoop/configuration/ConfigurationFactoryBean.java

を、あなたのストリームで似た何かを取ることができます。

+0

ありがとう@lake ....これは非常に役に立ちます... – AJ007

関連する問題