Before you begin, you can perform some tasks to ensure the efficiency and success of your upgrade process.
- Optimizing your NiFi Directory Structure for Upgrade
- Preserving your custom processors
- Preserving customized NAR files
Optimizing your NiFi Directory Structure for Upgrade
When you install NiFi and perform the minimum configuration requirements by editing the
nifi.properties file, your installation directory contains several files and directories. Assuming you have installed into an opt/ directory, the NiFi installation directory structure is similar to:
/ --> opt/ --> nifi-current_version |--> LICENSE |--> NOTICE |--> README |--> bin/ |--> conf/ |--> docs/ |--> lib/ |--> work/ |--> content_repository/ |--> flowfile_repository/ |--> logs/ |--> provenance_repository/
To optimize the NiFi directory structure for upgrade:
Move the following directories out of the NiFi installation directory:
All content repositories
NiFi log repository
All provenance repositories
See the System Administrator's Guide for information on options for creating these repositories to optimize performance and stability.
Move static items that do not change from version to version out of the conf directory. These items include:
The templates directory
Note: NiFi 1.0.0 no longer contains
authorized-users.xml. Instead, it contains
users.xml. During upgrade, preserve
authorized-users.xml so that NiFi 1.0.0 can use it to populate the values of the
A good directory structure that supports easy upgrading looks similar to:
/ |--> opt/ | |--> nifi-current_version | | |--> LICENSE | | |--> NOTICE | | |--> README | | |--> bin/ | | |--> conf/ | | |--> docs/ | | |--> lib/ | | |--> work/ | | | |--> Configuration_resources/ | | |--> authorized-users.xml | | |--> flow.xml.gz | | |--> templates/ | | |--> custom_lib/ | |--> database_repository/ |--> content_repository_1/ |--> content_repository_N |--> flowfile_repository/ |--> NiFi-logs/ |--> provenance_repository_1/ |--> provenance_repository_N/
Important: Upgrading from NiFi 0.x to 1.x converts your database, content, flowfile, log, and provenance repositories automatically. Once upgraded, you can not revert the repositories back to 0.x format.