nifi从入门到实战(保姆级教程)——环境篇

article/2025/8/16 3:08:14
背景:

公司领导决定将各种基础数据的导入从代码中分离出来,用Apache Nifi替换。使开发者们更关注在业务上,而不用关心基础的由来。
Apache Nifi对于整个团队都是一个全新的工具,之前大家都没有接触过,甚至是第一次听说,我就是其中之一。但是很幸运的是,领导指派我去熟悉这个工具,按实际应用场制作DEMO,并分享给团队。

环境准备
  • windows:
    1、下载nifi zip包:https://nifi.apache.org/download.html ,选择自己想要的版本。
    注意:1.14版本开始,默认为有身份认证,不允许匿名登陆。
    2、将zip包解压到本地的任意目录。解压后如下图
    image
    注意:路径最好是全英文,否则会出现一些启动不了的异常

3、修改conf(可选)。为了避免端口冲突,可以将/conf/nifi.properties中https.port修改为你指定的其他端口。默认是8443。
image
另一个是/conf/bootstrap.conf,这里主要修改JVM memory settings,
image
默认是512M。
4、启动nifi.双击/bin/run-nifi.bat文件
image

出现以下画面即为成功
image
注意:如果要退出nifi,千万不要直接点上图右上角的“关闭”按钮。因为这样并不会完全退出nifi,它的进程还在运行,端口还是占用着的,所以下次再次运行时就会出错。只能杀进程,或是重启电脑了。正确的操作是ctrl+c停止它
image

5、打开nifi UI.(距离启动nifi大概30秒后)
image
打开/logs/nifi-app.log,搜索username,如下图
image
输入相应的user和password后就可以登陆成功了
image

  • Linux
    linux下就用docker compose演示吧
    1、准备好linux和docker环境。这一步大家可以自行搜索
    2、定义docker-compose.yml文件,输入以下内容

    点击查看代码
    version: '3'services:nifi:cap_add:- NET_ADMIN # low port bindingsimage: apache/nifi:1.16.1container_name: nifi-devports:- 18443:18443 # HTTPS interfaceenvironment:NIFI_WEB_HTTPS_PORT: "18443"volumes:- ./drivers:/opt/nifi/nifi-current/drivers- ./database_repository:/opt/nifi/nifi-current/database_repository- ./flowfile_repository:/opt/nifi/nifi-current/flowfile_repository- ./content_repository:/opt/nifi/nifi-current/content_repository- ./provenance_repository:/opt/nifi/nifi-current/provenance_repository- ./state:/opt/nifi/nifi-current/state- ./logs:/opt/nifi/nifi-current/logs- ./nifi-conf:/opt/nifi/nifi-current/conf
    

    这里指定nifi 镜像为官方docker image 1.16.1版本,端口为18443。注意:ports和enviroment两个设置都不能少。然后把容器里的相应目录挂载到了宿主机上docker-compose.yml文件所在目录。这样做的好处就是即使是启动新的镜像实例,原来的数据还是在的,这样也就实现了数据持久化。
    因为nifi启动需要读取conf目录下的各种配置,现在这样conf目录下是空的。所以启动时会报nifi.propeties等文件不存在。
    有两种解决方案:一是把conf目录下的所有文件复制到nifi-conf目录下。二是conf目录挂载方式变下,如下:

    点击查看代码
          
    version: '3'services:nifi:cap_add:- NET_ADMIN # low port bindingsimage: apache/nifi:1.16.1container_name: nifi-devports:- 18443:18443 # HTTPS interfaceenvironment:NIFI_WEB_HTTPS_PORT: "18443"volumes:- ./drivers:/opt/nifi/nifi-current/drivers- ./database_repository:/opt/nifi/nifi-current/database_repository- ./flowfile_repository:/opt/nifi/nifi-current/flowfile_repository- ./content_repository:/opt/nifi/nifi-current/content_repository- ./provenance_repository:/opt/nifi/nifi-current/provenance_repository- ./state:/opt/nifi/nifi-current/state- ./logs:/opt/nifi/nifi-current/logs- nifi-conf:/opt/nifi/nifi-current/confvolumes:nifi-conf:

    这样是把conf目录挂载在/var/lib/docker/volumes目录下,这样可以自动生成相应的文件。
    3、启动nifi.docker-compose up (加上-d 就是后台运行,在终端不会输出日志)
    在日志中nifi-app.log中查找 username,获取相应的user 和password,然后登陆nifi。此步骤与windows相同

至此,nifi的环境已经准备好了。下一篇来讲讲nifi的身份验证。


http://chatgpt.dhexx.cn/article/55trxjMU.shtml

相关文章

1、nifi-1.9.2介绍、单机部署及简单验证

Apache NiFi系列文章 1、nifi-1.9.2介绍、单机部署及简单验证 2、NIFI应用示例-GetFile和PutFile应用 3、NIFI处理器介绍、FlowFlie常见属性、模板介绍和运行情况信息查看 4、集群部署及验证、监控及节点管理 5、NiFi FileFlow示例和NIFI模板示例 6、NIFI应用场景-离线同步Mys…

Nifi集群安装配置

机器 目录 免密登录 nifi001d /opt/software/nifi nifi001d>>nifi002d、nifi003d niif002d /opt/software/nifi nifi002d>>nifi001d、nifi003d niif002d /opt/software/nifi nifi003d>>nifi001d、nifi002d 1、安装nifi (1&#xff…

NIFI 入门使用

1. Kettle与NIFI差异 Kettle 介绍 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一…

《数据同步-NIFI系列》Nifi详细教程入门-06Nifi基础操作

Nifi基础操作 1 主页面 2 组 2.1 创建组 从常用功能模块,拖动组到画布上,自定义组名。可以通过鼠标移动组在画布位置。 2.2 进入、退出组 选中某一个组,单击右键选择enter group或者双击组进入组内,在组内单击右键选择leave g…

nifi-搭建

NIFI 简介 1、NIFI 的概念 1.1 起源:NIFI是为了自动化的处理和管理系统之间的数据流而产生的,基本设计概念与基于流的编程[fbp]的主要思想密切相关 1.2 nifi核心概念 FlowFile:FlowFile表示通过系统移动的每个对象,包含数据流的基…

9、NIFI综合应用场景-通过NIFI配置kafka的数据同步

Apache NiFi系列文章 1、nifi-1.9.2介绍、单机部署及简单验证 2、NIFI应用示例-GetFile和PutFile应用 3、NIFI处理器介绍、FlowFlie常见属性、模板介绍和运行情况信息查看 4、集群部署及验证、监控及节点管理 5、NiFi FileFlow示例和NIFI模板示例 6、NIFI应用场景-离线同步Mys…

Apache NiFi 入门指南

本指南使用于谁? 本指南适用于从未使用过,在NiFi中有限度接触或仅完成特定任务的用户。本指南不是详尽的说明手册或参考指南。“ 用户指南”提供了大量信息,旨在提供更加详尽的资源,并且作为参考指南非常有用。相比之下&#xff…

2、NIFI应用示例-GetFile和PutFile应用

Apache NiFi系列文章 1、nifi-1.9.2介绍、单机部署及简单验证 2、NIFI应用示例-GetFile和PutFile应用 3、NIFI处理器介绍、FlowFlie常见属性、模板介绍和运行情况信息查看 4、集群部署及验证、监控及节点管理 5、NiFi FileFlow示例和NIFI模板示例 6、NIFI应用场景-离线同步Mys…

大数据NiFi(三):NiFi关键特性

文章目录 NiFi关键特性 一、​​​​​​​​​​​​​​流管理

NiFi学习笔记

目录 NiFi概念 NiFi是什么 Apache NiFi 包括以下功能 NIFI核心概念 NiFi架构 NiFi入门 常用术语 下载安装NiFi 启动和关闭NIFI NIFI处理器 查看处理器 常用处理器 配置处理器 其他组件 应用场景 1.添加和配置第一个处理器GetFile 2.添加第二个处理器PutFile NiF…

NiFi的简介

使用java开发的一个开源项目,数据处理工具 1.简介: NiFi 是一个易于使用、功能强大而且可靠的流式数据处理和分发系统。NiFi 是为数据流设计,支持从多种数据源动态的拉取数据,并基于WEB图形界面,通过拖拽、连接、配置…

Nifi的入门使用

Nifi的使用 1.官方文档2.Nifi简介3.简单使用4.Template 使用nifi前,需要知道ETL在做什么,如果源端和目标端栏位不匹配,就需要用到小帮手, 让你更直观的了解映射关系,才能更好的构建DataFlow 第一步:Nifi开发…

NiFi【部署 01】NiFi最新版本1.18.0下载安装配置启动及问题处理(一篇学会部署NiFi)

Apache NIFI中文文档 地址:https://nifichina.github.io/ 1.简介 官网的介绍: An easy to use, powerful, and reliable system to process and distribute data. 一个易用、功能强大、可靠的处理和分发数据的系统。 来自网络的介绍: 2006…

5、NiFi FileFlow示例和NIFI模板示例

Apache NiFi系列文章 1、nifi-1.9.2介绍、单机部署及简单验证 2、NIFI应用示例-GetFile和PutFile应用 3、NIFI处理器介绍、FlowFlie常见属性、模板介绍和运行情况信息查看 4、集群部署及验证、监控及节点管理 5、NiFi FileFlow示例和NIFI模板示例 6、NIFI应用场景-离线同步Mys…

大数据NiFi(二):NiFi架构

文章目录 NiFi架构 一、​​​​​​​NiFi核心概念

Nifi:nifi的基本使用

Nifi的安装使用 爱购物 www.cqfenfa.com Nifi安装 首先说一下Nifi的安装,这里Nifi可以支持Windows版和Linux,只需要去官网:http://nifi.apache.org/ 根据自己需要的版本,选择下载,然后安装解压就行 各目录及主要文件…

大数据NiFi(一):什么是NiFi

文章目录 什么是NiFi 一、NiFi背景介绍

Nifi介绍、安装、实践案例

第1章NiFi基本概念 1.1 概述 简单地说,NiFi是为了自动化系统之间的数据流而构建的。虽然术语“数据流”在各种环境中使用,但我们在此处使用它来表示系统之间自动化和管理的信息流。这个问题空间一直存在,因为企业有多个系统,其中…

NiFi技术干货

第1章 NiFi概述 1.1 NiFi是什么 简单的说,NiFi就是为了解决不同系统间数据自动流通问题而建立的。虽然dataflow这个术语在各种场景都有被使用,但我们在这里使用它来表示不同系统间的自动化的可管理的信息流。自企业拥有多个系统开始,一些系…

NiFi 基本概念

NiFi基本概念 一. NiFi是什么 Apache NiFi 是一个易于使用, 功能强大且可靠的系统, 用于处理和分发数据。可以自动化管理系统间的数据流。它使用高度可配置的指示图来管理数据路由, 转换和系统中介逻辑, 支持从多种数据源动态拉取数据。NiFi 原来是 NSA(美国国家安全局) 的一…