Apache NiFi is highly configurable platform. The nifi.properties file in conf directory
contains most of the configuration.
The commonly used properties of Apache NiFi are as follows −
This section contains the properties, which are compulsory to run a NiFi instance.
S.No. | Property name | Default Value | description |
---|---|---|---|
1 | nifi.flow.configuration.file | ./conf/flow.xml.gz | This property contains the path to flow.xml file. This file contains all the data flows created in NiFi. |
2 | nifi.flow.configuration.archive.enabled | true | This property is used to enable or disable archiving in NiFi. |
3 | nifi.flow.configuration.archive.dir | ./conf/archive/ | This property is used to specify the archive directory. |
4 | nifi.flow.configuration.archive.max.time | 30 days | This is used to specify the retention time for archiving content. |
5 | nifi.flow.configuration.archive.max.storage | 500 MB | it contains the maximum size of archiving directory can grow. |
6 | nifi.authorizer.configuration.file | ./conf/authorizers.xml | To specify the authorizer configuration file, which is used for user authorization. |
7 | nifi.login.identity.provider.configuration.file | ./conf/login-identity-providers.xml | This property contains the configuration of login identity providers, |
8 | nifi.templates.directory | ./conf/templates | This property is used to specify the directory, where NiFi templates will be stored. |
9 | nifi.nar.library.directory | ./lib | This property contains the path to library, which NiFi will use to load all the components using NAR files present in this lib folder. |
10 | nifi.nar.working.directory | ./work/nar/ | This directory will be storing the unpacked nar files, once NiFi processes them. |
11 | nifi.documentation.working.directory | ./work/docs/components | This directory contains the documentation of all components. |
These properties are used to store the state of the components helpful to start the processing, where components left after a restart and in the next schedule running.
S.No. | Property name | Default Value | description |
---|---|---|---|
1 | nifi.state.management.configuration.file | ./conf/state-management.xml | This property contains the path to state-management.xml file. This file contains all component state present in the data flows of that NiFi instance. |
2 | nifi.state.management.provider.local | local-provider | It contains the ID of the local state provider. |
3 | nifi.state.management.provider.cluster | zk-provider | This property contains the ID of the cluster-wide state provider. This will be ignored if NiFi is not clustered but must be populated if running in a cluster. |
4 | nifi.state.management. embedded. zookeeper. start | false | This property specifies whether or not this instance of NiFi should run an embedded ZooKeeper server. |
5 | nifi.state.management. embedded. zookeeper.properties | ./conf/zookeeper.properties | This property contains the path of the properties file that provides the ZooKeeper properties to use if <nifi.state.management. embedded. zookeeper. start> is set to true. |
Let us now look into the important details of the FlowFile repository −
S.No. | Property name | Default Value | description |
---|---|---|---|
1 | nifi.flowfile.repository. implementation | org.apache.nifi. controller. repository. WriteAhead FlowFileRepository | This property is used to specify either to store the flowfiles in memory or disk. If a user want to stores the flowfiles in memory then change to "org.apache.nifi.controller. repository.VolatileFlowFileRepository". |
2 | nifi.flowfile.repository.directory | ./flowfile_repository | To specify the directory for flowfile repository. |