2016-08-17 12 views
3

Apache Nifiを使用したクラウドベースのアプリケーションで作業しています。そのために、Multitenencyをサポートする必要がありました。しかし、現在のNifiの実装では、ユーザーのためのロールベースのアクセスだけがサポートされています。Apache Nifiの多機能性

フロー状態は、Nifiインスタンスの単一の圧縮されたXMLファイルとして保存されることがわかりました。そのインスタンスにログインした人は、同じフローを見ることができます。私たちの要件は、各ユーザーのログインに固有のフローを作成することです。私は、各ユーザーの状態保存gz XMLファイルを複製しようとしましたが、XMLファイルをロードするFlowService/FlowControllerとして成功することができず、アプリケーションの起動時にインスタンス化され、シングルトンです。このアプローチでIamが間違っている場合は、私を修正してください。または、NifiでMultitenantサポートを追加するための他のソリューションがありますか。また、Nifiの背後にある理由を単一のユーザーアプリケーションとして疑問に思います。

答えて

6

マルチテナントサポートは、Apache NiFi 1.0.0で導入されます。 BETAリリースが利用可能です[1]。これにより、コンポーネントごとのパーミッションの割り当てがサポートされます。しかし、異なるテナントはまだキャンバスを共有しています。視覚的に分離したデータフローを提供できるワークスペースコンセプトの導入について議論がありました。

[1] https://nifi.apache.org/download.html

+0

おかげマット、私はすでに最新のソースコード1.0.0スナップショットを取って、それを修正し始めました。しかし、私たちはDataFlows、すなわち視覚的に分離したデータフローを完全に分離して、同じNifiインスタンスで複数のDFMをサポートする必要があります。それで、なぜ私は、各ユーザのログイン用に別々のflow.xml.gzファイルを作成しようとしたのですか? – Krishna

+1

@Krishnaあなたに知らせるだけで、ルートプロセスグループに異なるプロセスグループを作成し、システム上のさまざまなテナントを隔離する権限を割り当てることができます。したがって、各「DFM」はそれぞれ独自のPGにアクセスすることができ、他のものは使用できません。 DFMが自分のPGをルートから抜けると、DFMは他のものにアクセスできなくなりますので、視覚的な混乱はありません。お役に立てれば。 – Andy