NiFiの場合、ドキュメントで定義されているように、"継続的な改善が製品で発生します"したがって、これは伝統的な開発ツールとして使用することはできません。しかし、私が取り組んでいるプロジェクトでは、これが私たちが使用するツールであると判断されているので、いくつかの問題があることを認識して、これのメリットについて議論しないでください。Apache NiFiの開発ライフサイクル
たとえば、変更を既存の環境(ステージングからプロダクション)にプッシュして、ターゲットにライブ編集があった場合、それらは上書きされます。開発のライフサイクルをどのように整理するかについての質問があります。
- それは、マージすることが可能である(エクスポートされたXMLテンプレートファイルをマージ)並行して複数の開発者によって行われたを変更?私は重大な変更を統合するのは難しいかもしれないが、それを試みていないと推測している。
- どのようにを管理すると、バージョン管理が変更されますか?私はテンプレートとしてあなたの全体の設定をエクスポートし、それをバージョンコントロールにチェックできると仮定していますか?
- フローを別のサーバーに展開しますか? NiFi REST APIを使用して、株式NiFiデプロイメントをデプロイしてから、エクスポートされたテンプレートから更新することはできますか?
- 異なるコンフィグレーションを持つ異なる環境にデプロイする方法?テンプレートXMLファイルを更新する必要がありますか?あるいは、私はZookeeperのようなものから動的に取り込むことができますか?
まだ実装されていません。現在のリリース版で述べられている問題をどのように解決するかについての最新情報を教えてください。私は今、人々はちょうどテンプレートをインポートして輸出していると思う。それにはいくつかの欠点がある。実際の更新オプションはありません。古いバージョンを削除して新しいバージョンを読み込むことができます。 –
本当に正しい更新オプションはありません(既存のプロセスグループ用)。今日の一般的なパターンは、プロセス・グループの新しいバージョンをプッシュし、そのグループにフィードする接続を変更することです。これは、いくつかのREST呼び出しをプログラムで実行することで実行できます。フロー管理、プロセスグループ変数、バージョン管理されたコンポーネント用のapache nifiレジストリは、すべて最新のリリースでは後者の2つで順調に進んでいます。次のリリースでは、バージョン管理されたフローに統合されたapache nifiレジストリがありそうです。真のアップデート!非常に涼しいはずです。 –