Asymmetrik.nifi

nifi

Use this role to set up Apache NiFi. It has been tested with NiFi versions 1.3.x to 1.8.x.

Requirements

Before using this role, make sure the NiFi files are available on the target system at: {{ nifi_base_dir }}/nifi-{{ nifi_version }}/

  • For RPM: it must be installed.
  • For tar.gz: it must be unzipped.

Role Variables

Required Variable

  • nifi_version: Specify the version of NiFi to install.

Installation Location Variables (default values):

  • nifi_base_dir: /opt/nifi
  • nifi_etc_dir: /etc/nifi
  • nifi_log_dir: /var/log/nifi
  • nifi_pid_dir: /var/run/nifi
  • nifi_home_dir: /home/nifi

Other Default Variables:

  • nifi_create_home_dir: true (creates a home directory for the NiFi user. Set to false for new instances.)
  • nifi_default_shell: /bin/bash (shell for NiFi user, only if home dir is created.)
  • nifi_enable_remote_debugging: false (set to true to enable remote debugging.)
  • nifi_perform_restart: true (restarts NiFi after changes.)
  • nifi_force_restart: false (forces a restart if other changes exist.)
  • nifi_authorized_nodes_list: [] (list of IPs in NiFi cluster.)
  • nifi_extra_args: [] (extra arguments for NiFi.)

Memory and Java Settings:

  • nifi_node_jvm_memory: '1024m' (memory allocated for NiFi.)
  • nifi_java_command: 'java' (Java command to use.)

Database and Repository Paths:

  • Default paths include: nifi_database_repository, nifi_flowfile_repository, and others defined under nifi_home.

Cluster Settings:

  • nifi_single_node: true (set to false for cluster setups.)
  • nifi_web_http_port: 8080 (HTTP port for NiFi.)

Queue and Content Repository Settings:

Configure queue swap settings such as swap threads and thresholds along with content repository settings like max retention period and size.

Provenance and Status Repository Settings:

Settings for how to manage provenance data and component status.

Security Settings:

Configurations for security, including ports, keystores, and passwords.

Logging Settings:

Adjust log retention periods and log levels for different components.

Dependencies

NiFi requires Java to run.

Example Playbook

To install and configure NiFi, you can use the following example:

- name: Install NiFi
  hosts: servers
  vars: 
      nifi_log_level_root: WARN
      nifi_node_jvm_memory: '10240M'
      nifi_custom_nars: [ '/opt/extra-nars' ]
      nifi_single_node: False
      nifi_authorized_nodes_list: ['nifi-node-1', 'nifi-node-2']      
  pre_tasks:
    - name: Upload NiFi distribution (tar.gz) from localhost
      copy:
        src: nifi-1.8.0-bin.tar.gz
        dest: /opt/nifi
    - name: Unarchive NiFi distribution
      unarchive:
        src: /opt/nifi/nifi-1.8.0-bin.tar.gz
        dest: /opt/nifi
        copy: no
  roles:
    - role: nifi
      nifi_version: 1.8.0

License

MIT

Informazioni sul progetto

This role is used to install and configure Apache NiFi

Installa
ansible-galaxy install Asymmetrik.nifi
Licenza
Unknown
Download
10.4k
Proprietario
Asymmetrik is now BlueHalo, LLC. under github.com/bluehalo