nifi
: Manage Apache NiFi
nifi::config
: Manage configuration for Apache NiFinifi::install
: Install Apache NiFinifi::service
: Manage the Apache NiFi service
Install, configure and run Apache NiFi
The hash must be structured like { 'fqdn.example.com' => { 'id' => 1 },... }
include nifi
class { 'nifi':
version => 'x.y.z',
download_url => 'https://my.local.repo.example.com/apache/nifi/nifi-x.y.z.tar.gz',
download_checksum => 'abcde...',
}
class { 'nifi':
cluster => true,
cluster_nodes => {
'nifi-1.example.com' => { 'id' => 1 },
'nifi-2.example.com' => { 'id' => 2 },
'nifi-3.example.com' => { 'id' => 3 },
}
}
The following parameters are available in the nifi
class:
version
user
group
download_url
download_archive_type
download_checksum
download_checksum_type
download_tmp_dir
service_limit_nofile
service_limit_nproc
install_root
var_directory
log_directory
config_directory
nifi_properties
cluster
cluster_nodes
initial_admin_identity
zookeeper_connect_string
zookeeper_client_port
zookeeper_secure_client_port
zookeeper_use_secure_client_port
Data type: String
The version of Apache NiFi. This must match the version in the tarball. This is used for managing files, directories and paths in the service.
Default value: '1.18.0'
Data type: String
The user owning the nifi installation files, and running the service.
Default value: 'nifi'
Data type: String
The group owning the nifi installation files, and running the service.
Default value: 'nifi'
Data type: String
Where to download the binary installation tarball from.
Default value: "https://dlcdn.apache.org/nifi/${version}/nifi-${version}-bin.${download_archive_type}"
Data type: Enum['zip', 'tar.gz']
The archive type of the downloaded tarball.
Default value: 'zip'
Data type: String
The expected checksum of the downloaded tarball. This is used for verifying the integrity of the downloaded tarball.
Default value: 'f8eaf0b805e3094682da668f1097ccd98deec35240c677c2089cb486d69f0b64'
Data type: String
The checksum type of the downloaded tarball. This is used for verifying the integrity of the downloaded tarball.
Default value: 'sha256'
Data type: Stdlib::Absolutepath
Temporary directory for downloading the tarball.
Default value: '/var/tmp'
Data type: Integer
The limit on number of open files permitted for the service. Used for LimitNOFILE= in nifi.service.
Default value: 50000
Data type: Integer
The limit on number of processes permitted for the service. Used for LimitNPROC= in nifi.service.
Default value: 10000
Data type: Stdlib::Absolutepath
The root directory of the nifi installation.
Default value: '/opt/nifi'
Data type: Stdlib::Absolutepath
The root of the writable paths used by NiFi. Nifi will create directories beneath this path. This will implicitly add nifi properties for working directories and repositories.
Default value: '/var/opt/nifi'
Data type: Stdlib::Absolutepath
The directory where NiFi stores its user, app and bootstrap logs. Nifi will create log files beneath this path and take care of log rotation and deletion.
Default value: '/var/log/nifi'
Data type: Stdlib::Absolutepath
Directory for NiFi version independent configuration files to be kept across NiFi version upgrades. NiFi will also write generated configuration files to this directory. This is used in addition to the "./conf" directory within each NiFi installation.
Default value: '/opt/nifi/config'
Data type: Hash[String,Nifi::Property]
Hash of parameter key/values to be added to conf/nifi.properties.
Default value: {}
Data type: Boolean
If true, enables the built-in zookeeper cluster for shared configuration and state management. The cluster_nodes parameter is used to configure the zookeeper cluster, and nifi will connect to their local zookeper instance.
Default value: false
Data type:
Hash[
Stdlib::Fqdn, Struct[{ id => Integer[1,255] }]
]
A hash of zookeeper cluster nodes and their ID. The ID must be an integer between 1 and 255, unique in the cluster, and must not be changed once set.
Default value: {}
Data type: Optional[String]
The initial admin identity used in the authorizers.xml file by NiFi for policies when creating the flow.xml file. This is useful when connecting NiFi to an external authentication source.
Default value: undef
Data type: Optional[String]
The zookeeper connect string is autogenerated from the cluster_nodes
as
well as the zookeeper client port parameteres. To override this, set the
connecct string using this parameter.
Default value: undef
Data type: Stdlib::Port::Unprivileged
When clustering Nifi, this port is used by NiFi clustering and state management. This is used for unencrypted communication between NiFi zookeeper client and the embedded zookeeper server.
Depending on the module parameter zookeeper_use_secure_client_port
,
NiFi will use either this port or the port controlled by the parameter
zookeeper_secure_client_port
.
Default value: 2181
Data type: Stdlib::Port::Unprivileged
When clustering Nifi, this port is used by NiFi clustering and state management. This is used for encrypted communication between NiFi zookeeper client and the embedded zookeeper server.
Depending on the module parameter zookeeper_use_secure_client_port
,
NiFi will use either this port or the port controlled by the parameter
zookeeper_client_port
.
Default value: 2281
Data type: Boolean
Controls if the NiFi cluster will use TLS to connnect to the embedded zookeeper.
If true, NiFi will use TLS and connect to the zookeeper_secure_client_port
.
If false, NiFi will use cleartext communication to connect to zookeeper on the
zookeeper_client_port
.
Default value: true
The Nifi::Property data type.
Alias of Variant[Boolean, Integer, String, Sensitive[String]]