Upgrade
Also available as:
PDF

Upgrading a single instance of NiFi

To upgrade to the NiFi 1.0.0, perform the following steps:

  1. Download the latest NiFi release.

  2. Install the new release in /opt. Your directory structure should look similar to:

    /
    |--> opt/
    |    |--> nifi-current_version
    |    |    |--> LICENSE
    |    |    |--> NOTICE
    |    |    |--> README
    |    |    |--> bin/
    |    |    |--> conf/
    |    |    |--> docs/
    |    |    |--> lib/
    |    |    |--> work/
    |    |
    |    |--> nifi-1.0.0
    |    |    |--> 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/
    
  3. Save the authorized-users.xml from your older NiFi version, so that NiFi 1.0.0 can use it to populate the values of the authorizations.xml and users.xml files.

  4. Using the values already configured in the following files inside the previous NiFi conf directory, update the corresponding lines in the same files under target NiFi directory (nifi-1.0.0):

    • bootstrap.conf

    • logback.xml

    • nifi.properties

    [Note]Note
    • Ensure that you make no typos when you are configuring the various paths to your existing repos and the path to the flow.xml.gz file in the nifi.properties file in the newer release.

    • Ensure that you have the same Run As user configured in the bootstrap.conf file.

    • If no new lines were added to these files, you can copy them directly from an older version to a newer. If you do copy the nifi.properties file, update the nifi.version number.

  5. Verify that all file and directory ownerships for your target NiFi directory match what you set on the previous version.

  6. Stop the older NiFi version.

    [Note]Note

    You can stop NiFi while files still exist in your dataflows.

  7. Before you start the upgraded NiFi nodes, add the location of your authorized-users.xml file to authorizations.xml, if you want to map your previous authorized users to the new NiFi authentication model.

    <authorizer>
    <identifier>file-provider</identifier>
    <class>org.apache.nifi.authorization.FileAuthorizer</class>
    <property name="Authorizations File">./conf/authorizations.xml</property>
    <property name="Users File">./conf/users.xml</property>
    <property name="Initial Admin Identity"></property>
    <property name="Legacy Authorized Users File"></property>
  8. Start your upgraded NiFi version and immediately tail the app log.

    • Use the app log to verify that the new NiFi has fully started and begins processing data.

    • If it fails to start, you can restart the previous NiFi version while you investigate the cause.

    • NiFi is commonly configured to run as a service. Make sure that any path or links for that service are updated to point at the newly installed version’s executables now.

    • Once you have verified that the new version has started, is processing data, and can be accessed via the UI, you can delete the older version.