Centos7环境下nifi单机部署

Centos7环境下nifi单机部署

  • 前言
  • 一、安装Nifi
    • 1.1 下载并解压
    • 1.2 修改配置文件
  • 二、启动Nifi程序
  • 三、Nifi的简单使用
    • 3.1 文件移动
    • 3.2 本地文件传到HDFS
  • 参考博客

前言

本以为在服务器上部署nifi很简单,跟着教程走就好,但是并没有成功,可能是因为版本的问题,也可能有其他原因,导致我一直没有部署成功,后面想着先在本地windows上部署,先学着再说,在看完windows部署教程后,发现了之前教程中没有提到的一点,就是在nifi.properties配置中https和http只能保留一组,于是我再去centos7下部署nifi就成功了,好了,接下来我将具体介绍nifi的部署过程。

一、安装Nifi

1.1 下载并解压

下载所需版本的Nifi,这里我下载版本为nifi-1.19.1-bin.zip
下载地址:https://archive.apache.org/dist/nifi/1.9.1/nifi-1.19.1-bin.zip
如果觉得官网慢,可以在我的百度网盘中下载,里面还有其他相关文件
网盘链接:https://pan.baidu.com/s/1WoeCQ_bLh5hrRv9t0hAUDw?pwd=2xwq
在这里插入图片描述
下载好后解压到相应目录下

cp nifi-1.19.1-bin.zip /opt/module/
cd /opt/module/
unzip nifi-1.19.1-bin.zip

在这里插入图片描述

1.2 修改配置文件

修改conf目录下的nifi.properties文件

cd nifi-1.19.1/
vim conf/nifi.properties

在这里插入图片描述

修改nifi端口和host地址,查找 nifi.web.http.port 和 nifi.web.http.host,(这里的nifi.web.http.port,nifi.web.http.host,nifi.web.http.network.interface.default与 nifi.web.https.host,nifi.web.https.port,nifi.web.https.network.interface.default 只能共存一组,区别就是请求的时候一个是http请求,一个是https的请求),我之前一直没有成功就是因为这里都放开了,现在我将把https给注释,配置http,nifi.remote.input.http.enabled为false,具体配置参数如下:

# Site to Site properties
nifi.remote.input.host=
nifi.remote.input.secure=true
nifi.remote.input.socket.port=
# nifi.remote.input.http.enabled=true
nifi.remote.input.http.enabled=false
nifi.remote.input.http.transaction.ttl=30 sec
nifi.remote.contents.cache.expiration=30 secs# web properties #
############################################## For security, NiFi will present the UI on 127.0.0.1 and only be accessible through this loopback interface.
# Be aware that changing these properties may affect how your instance can be accessed without any restriction.
# We recommend configuring HTTPS instead. The administrators guide provides instructions on how to do this.# chen 是我服务器的 hostname
nifi.web.http.host=
nifi.web.http.port=8443
nifi.web.http.network.interface.default=############################################## nifi.web.https.host=
# nifi.web.https.port=8443
# nifi.web.https.network.interface.default=
nifi.web.https.application.protocols=http/1.1
nifi.web.jetty.working.directory=./work/jetty
nifi.web.jetty.threads=200
nifi.web.max.header.size=16 KB
nifi.web.proxy.context.path=
nifi.web.proxy.host=
nifi.web.max.content.size=
nifi.web.max.requests.per.second=30000
nifi.web.max.access.token.requests.per.second=25
nifi.web.request.timeout=60 secs
nifi.web.request.ip.whitelist=
nifi.web.should.send.server.version=true
nifi.web.request.log.format=%{client}a - %u %t "%r" %s %O "%{Referer}i" "%{User-Agent}i"

nifi.web.http.host可以不写,也可以配置成0.0.0.0,我这里就不配置了

二、启动Nifi程序

在前面保持配置文件后就可以启动Nifi程序进行测试了

./bin/nifi.sh start

如下便是启动成功,一般过个一两分钟就可以访问nifi的web网页了,即 ip:端口号
在这里插入图片描述
可以使用 netstat -tuln | grep 8443 命令查看端口使用情况
在这里插入图片描述
Nifi Web界面如下(如何nifi启动了还是访问不通记得看看服务器8443端口号是否开放):
在这里插入图片描述

三、Nifi的简单使用

3.1 文件移动

新建一个组,命名好后 双击 该组进入
在这里插入图片描述
选择Processor处理器,选择getFile处理器,即获取某路径下的文件
在这里插入图片描述
再次点击Processor处理器,选择putFile处理器,即文件存放路径
在这里插入图片描述
右键configure
在这里插入图片描述
配置待传输文件的所在路径
在这里插入图片描述
然后配置存放文件的路径,APPLY
在这里插入图片描述
将两个处理器链接起来,APPLY
在这里插入图片描述
这里可以看到PutFile有警告,说明还没配置好
在这里插入图片描述
配置一下该处理器失败或结束后停止还是继续
在这里插入图片描述
现在两个处理器都配置好了,先执行getFile处理器
在这里插入图片描述
我现在在服务器端向 /root/nifi/input 里面写入两个文件,可以看到 Queue 中已经有两个文件
在这里插入图片描述
右击 Queue ,点击 List Queue 便可查看Queue中存放的文件信息,点击 小眼睛 可以查看文件内容
在这里插入图片描述
右键GetFile,停掉,开始执行PutFile
在这里插入图片描述
在 /root/nifi/output 中可以查看到文件
在这里插入图片描述

3.2 本地文件传到HDFS

PutHDFS主要配置 hdfs配置文件 和 存储文件的路径

# hdfs配置文件 有多个文件用 , 分隔
Hadoop Configuration Resources
/opt/module/hadoop-3.1.3/etc/hadoop/core-site.xml,/opt/module/hadoop-3.1.3/etc/hadoop/hdfs-site.xml

在这里插入图片描述
在服务器 /root/nifi/input 下写入文件
在这里插入图片描述
StopGetFile,放开PutHDFS,即可往HDFS中写入文件
在这里插入图片描述
在HDFS中可查看到需要传输的文件
在这里插入图片描述
NIFI除了以上这些,还可以联通Mysql、Kafka进行文件传输,对文件内容进行格式转换等。

参考博客

  • nifi下载windows版本安装启动成功
  • NiFi集群搭建及必要的相关配置
  • Apache Nifi 安装及MySQL使用(windows版本)
  • NiFi【部署 01】NiFi最新版本1.18.0下载安装配置启动及问题处理(一篇学会部署NiFi)
  • 尚硅谷大数据NiFi教程(从部署到开发)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/63411.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c++的应用

整理思维导图周五剩下的三个笔试题利用函数重载,实现对整形数组的冒泡排序,对浮点型数组的冒泡排序整理课上内容在堆区申请一个数组的空间,并完成对该数组中数据的输入和输出,程序结束释放堆区空间 冒泡排序效果图: 代…

【仪器仪表】怎么模拟电池短路、正极开路或负极开路

最近新人需要做一个电池充放电工装的测试验证板。这种验证板需要模拟很多状态,比如电池有可能发生短路、电池的正极开路、电池负极开路、电池内阻上升、电池电压过高、电池电压过低、电池反接等等。 在规划电池短路、正极开路或负极开路的电路时,本来想用一个继电器做线路的开…

Cobalt Strike 4.8 用户指南-第十二节 可拓展 PE,进程注入和后渗透

12.1、概述 Malleable C2 文件不仅仅是通信指标。Malleable C2 配置文件还能控制 Beacon 的内存特性,决定 Beacon 如何进行进程注入,并影响 Cobalt Strike 的后渗透工作。本章将介绍 Malleable C2 语言的这些扩展。 # 12.2、PE和内存指标 Malleable C…

unity 让文字变形

效果: using TMPro; using UnityEngine; using NaughtyAttributes;[ExecuteInEditMode] public class TMTextPerpective : MonoBehaviour {[OnValueChanged("DoPerspective")][Range(-1f, 1f)]public float CenterBias 0f;[OnValueChanged("DoPers…

NIO - selector简单介绍

一 前言 selector作为NIO当中三大组件之一,是处理NIO非阻塞模式下的核心组件,它允许一个单个线程管理多个通道。 NIO下的阻塞模式 因为对于阻塞模式下的NIO模式,存在很大的问题,即使在单线程下,对应的服务端也会一直进…

C语言:分支结构

C语言:分支结构 分支结构 问题引出 我们在程序设计往往会遇到如下的问题,比如下面的函数的计算 也就是我们是必须要通过一个条件的结果来选择下一步的操作,算法上属于一个分支结构,C语言中实现分支结构主要使用if语句 条件判断…

利用anzocapital昂首资本技术优化订单执行

在金融市场的深海中,anzocapital昂首资本作为内行,深知订单执行的技术缺陷如何悄然侵蚀交易者的利润。那么,一个懂交易的人会如何避免这些缺陷,确保自己的投资策略不被市场波动所左右呢? 在订单执行过程中,技术缺陷可…

RTR Chaptor11 下

全局光照 定向遮蔽预计算定向遮蔽定向遮蔽的动态计算使用定向屏蔽进行着色 满反射全局光照表面预照明定向表面预照明预计算传输存储方法动态漫反射全局光照光照传播体积基于体素的方法屏幕空间方法其他方法 镜面全局光照局部环境贴图环境贴图的动态更新基于体素的方法平面反射屏…

超越DFINE最新目标检测SOTA模型DEIM

代码地址:https://github.com/ShihuaHuang95/DEIM 论文地址:DEIM: DETR with Improved Matching for Fast Convergence 论文中文版:DEIM: 改进匹配的 DETR 以实现快速收敛 以下是文章的主要贡献和发现: DEIM框架:提…

位运算的总结--奇思妙解

目录 前言 先回顾常用的位运算 1:给一个数 n ,确定它的二进制表示中的第x位是0 还是 1 2:将一个数 n 的二进制表示的第x 位修改成 1 3:将一个数 n 的二进制表示的第 x位修改成 0 4:与位图联系 5:提取一…

语音识别flask接口开发

要开发一个flask语音识别接口,首先要解决语音文件在网络中的传输问题,然后选识别算法进行识别 文章目录 1、以二进制文件流方式上次语音2、网页端长连接流式上传语音文件3、语音识别接口 1、以二进制文件流方式上次语音 python服务端代码,以…

Kafka怎么发送JAVA对象并在消费者端解析出JAVA对象--示例

1、在pom.xml中加入依赖 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-stream-kafka</artifactId><version>3.1.6</version></dependency> 2、配置application.yml 加入Kafk…

JS中的原型链与继承

原型链的类比 JS中原型链&#xff0c;本质上就是对象之间的关系&#xff0c;通过protoype和[[Prototype]]属性建立起来的连接。这种链条是动态的&#xff0c;可以随时变更。 这个就跟C/C中通过指针建立的关系很相似&#xff0c;比如&#xff0c;通过指针建立一个链表&#xf…

CSS学习记录04

CSS边框 CSS border 属性指定元素边框的样式、宽度和颜色。border-style 属性指定要显示的边框类型。dotted - 定义点线边框dashed - 定义虚线边框solid - 定义实线边框double - 定义双边框groove - 定义3D坡口边框&#xff0c;效果取决于border-color值ridge - 定义3D脊线边框…

一文了解模式识别顶会ICPR 2024的研究热点与最新趋势

简介 对模式识别研究领域前沿方向的跟踪是提高科研能力和制定科研战略的关键。本文通过图文并茂的方式介绍了ICPR 2024的研究热点与最新趋势&#xff0c;帮助读者了解和跟踪模式识别的前沿研究方向。本推文的作者是黄星宇&#xff0c;审校为邱雪和许东舟。 一、会议介绍 ICPR…

福昕PDF低代码平台

福昕PDF低代码平台简介 福昕PDF 低代码平台是一款创新的工具&#xff0c;旨在简化PDF处理和管理的流程。通过这个平台&#xff0c;用户可以通过简单的拖拽界面上的按钮&#xff0c;轻松完成对Cloud API的调用工作流&#xff0c;而无需编写复杂的代码。这使得即使没有编程经验的…

oracle 11g中如何快速设置表分区的自动增加

在很多业务系统中&#xff0c;一些大表一般通过分区表的形式来实现数据的分离管理&#xff0c;进而加快数据查询的速度。分区表运维管理的时候&#xff0c;由于人为操作容易忘记添加分区&#xff0c;导致业务数据写入报错。所以我们一般通过配置脚本或者利用oracle内置功能实现…

Antd X : 迅速搭建 AI 页面的解决方案

前言 随着 AI 热度的水涨船高&#xff0c;越来越多的 AI 应用如井喷式爆发&#xff0c;那么如何迅速搭建一个 AI 应用的美观高质量 Web 前端页面呢&#xff0c; Antd 团队给出了一个解决方案。 X Ant DesIgn XAI 体验新秩序Ant Design 团队匠心呈现 RICH 设计范式&#xff0…

SD Express 卡漏洞导致笔记本电脑和游戏机遭受内存攻击

Positive Technologies 最近发布的一份报告揭示了一个名为 DaMAgeCard 的新漏洞&#xff0c;攻击者可以利用该漏洞利用 SD Express 内存卡直接访问系统内存。 该漏洞利用了 SD Express 中引入的直接内存访问 (DMA) 功能来加速数据传输速度&#xff0c;但也为对支持该标准的设备…

波特图方法

在电路设计中&#xff0c;波特图为最常用的稳定性余量判断方法&#xff0c;波特图的根源是如何来的&#xff0c;却鲜有人知。 本章节串联了奈奎斯特和波特图的渊源&#xff0c;给出了其对应关系和波特图相应的稳定性余量。 理论贯通&#xff0c;不在于精确绘…