Recommended migration workflow
Cloudera recommends dividing the process into manageable phases and validating the results at each step. Below is the suggested migration workflow to ensure a smooth and successful transition.
Stage 1 migration
-
Template migration
- Migrate templates for Stage 1.
- Validate the results.
- Address any issues and manual change requests.
-
Variable migration
- Migrate variables to parameter contexts for Stage 1.
- Validate the results.
- Address any issues and manual change requests.
-
Component migration
- Migrate components in smaller batches by specifying Process Group IDs for Stage 1.
- Validate the results for each batch.
- Address any issues and manual change requests.
- Repeat iteratively until no further changes are required.
-
Management-level component migration
- Perform component migration without specifying a Process Group ID to ensure management-level components such as Controller Services are migrated.
- Validate the changes.
- Address any issues and manual change requests.
-
Final validation
- When all Stage 1 steps are complete, validate the entire flow in a NiFi 1 instance for final validation.
- After this point, the flow will no longer be compatible with the source version.
Stage 2 migration: Target version compatibility
-
Run the migration commands without specifying the
Stage
argument to process both stages in sequence and address any remaining compatibility issues with NiFi 2. -
Follow the same steps as in Stage 1: Migrate templates → Migrate variables → Migrate components, while validating the results and addressing manual adjustment needs.
-
Stage 2 migration is not iterative in a sense that the output of Stage 2 cannot be reintroduced into the migration process. To ensure a seamless workflow, fully complete Stage 1 before starting Stage 2, and run Stage 2 only once. The final output will reflect all transformations applied by the Migration Tool. Resolving manual change requests will not trigger further migration events. Any modifications beyond this point are considered business logic adjustments and fall outside the tool’s scope.
For detailed instructions and examples of the end-to-end migration process, see Migrating a data flow.