NiFi1.25版本HTTPS模式下RestAPI使用入门

news2024/9/19 10:42:54

Apache NiFi 是一个强大的数据流处理工具,通过其 REST API,用户可以远程管理和控制数据流处理器。本文将介绍如何使用 NiFi 1.25 版本HTTPS 模式下Rest API,包括获取 token、获取组件信息、启动和停止组件、以及更改组件的调度频率等操作。

1. Rest API 简介及适用场景

NiFi 的 Rest API 允许用户通过 HTTP 请求来管理和监控数据流处理器。这种灵活性使得用户可以自动化工作流程、集成 NiFi 到其他系统中,或者创建定制化的管理界面。

图片

适用场景:

  • 自动化数据流的启动和停止。

  • 实时监控数据流处理器的状态和性能指标。

  • 动态地更新数据流处理器的配置。

2. 如何获取 Token

在NiFi HTTPS模式下使用Rest API,需要进行身份验证。通常使用 OAuth 2.0 的 Bearer Token 进行认证。

获取 Token 的步骤:

  • 配置NiFi的安全策略,确保Rest API可以通过 HTTPS 进行访问。

  • 使用用户名和密码或其他认证方式获取 Bearer Token。这通常需要使用NiFi提供的身份验证端点进行请求。

# 提示:这里是使用url进行演示。生产环境中,可以使用java实现类似请求。# 要注意的是:用户名密码的安全性。如果使用spring微服务架构,可以将其配置到nacos中curl -X POST \  -H 'Content-Type: application/x-www-form-urlencoded' \  -d 'username=admin&password=mypassword123456' \  "https://ip:9443/nifi-api/access/token" --insecure

成功请求后,会返回一个token字符串。

3. 如何获取组件信息

获取 NiFi 中组件(如处理器)的信息是常见的操作,用于监控和配置调整。

获取组件信息的示例:

使用的Rest API:

图片

首先要拿到组件的ID,拼接到Rest API地址中:

其次,要将token放到请求头,如下图使用postman工具所示,注意:图中返回json中的version值,后面要用到。

图片

4. 如何启动组件

启动一个处于停止状态的组件是日常操作之一。

启动组件的示例如下,将下面的json放到截图所示的body中:

{    "component": {        "id": "11af14aa-1afb-1215-c6e9-3fb8412b2731",        "state": "RUNNING"    },    "revision": {        "version": 22    }}

5. 如何停止组件

停止一个正在运行的组件同样重要。

停止组件的示例,将下面的json放到截图所示的body中:​​​​​​​

{    "component": {        "id": "11af14aa-1afb-1215-c6e9-3fb8412b2731",        "state": "STOPPED"    },    "revision": {        "version": 23    }}

图片

6. 如何更改一个组件的调度频率

调整组件的调度频率可以根据实际需求灵活配置。更改组件调度频率之前,请先停止组件,更改频率成功后,再启动组件。

更改调度频率的示例:

curl -X PUT 'https://ip:9443/nifi-api/processors/11af14aa-1afb-1215-c6e9-3fb8412b2731' -d '{ "revision": {  "version": 25 }, "component": { "id": "11af14aa-1afb-1215-c6e9-3fb8412b2731", "config": { "schedulingPeriod": "6 min" } }}'  -H "Content-Type: application/json" -H 'Authorization: Bearer eyJraWQiOiJjZmRhNmM2Yi0zY2FmLTQwYTctODQ3Ny1lMzVkMzA0MDdkYjciLCJhbGciOiJQUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsImF1ZCI6Imh0dHBzOi8vbmlmaTo5NDQzIiwibmJmIjoxNzIwOTMwMjEyLCJpc3MiOiJodHRwczovL25pZmk6OTQ0MyIsImdyb3VwcyI6W10sInByZWZlcnJlZF91c2VybmFtZSI6ImFkbWluIiwiZXhwIjoxNzIwOTU5MDEyLCJpYXQiOjE3MjA5MzAyMTIsImp0aSI6ImQzMThiMzViLWUyYTUtNGI1Ny1iMzcyLTUwNGQ1ODU2Mjc2ZiJ9.ZBTEIaJEfoPn7riVBRfvRL0z1FoIE-3ISOPKFoQzkxck-ccQDZztgC9ZkOfnORKvBCPDsqss6VXR--TjoRsAao4Ymqm7uOdqcUfUF8rq50O0MlpchI0LhYo_T6SKQLaUtIiNOkEriF6vRzb19QDX4wEDjTZyO8tKQu5covgcIZ5qaDgD7J6jqR0XiEk3BBd5IZsJpQgBcy_j6qgo8bJTZI7oKWcZGuNzfXIQTb5iEKVPQIiQTEDHQaC8RtdxqPDDHe-YlbDykIXEJKc7QE6nZcd_sjDOtPNiNcTgFoOFA7jKBUXkBWkALpRTnyHrLFPLNSCQMDzn9xpJGgAc4etw8p0oLFOvCQlyega2t2qZRhZVH5JA_sYXTCFgUeq-u5iZUlBoW9Kc_25sefLy4A6eGYhe96E_q_8Dp5VT-Lt0NKXSug1-QUUJ-zTioL_nCbFkryutGkFLhh7z1i3x8Dq6mRJxavmYd8kkPtBUADucBb77EigS-Tas9Lwuto4a3BdNxQ3wiHspzsUnrCAw5dElN7m1-Gk5xP2FG_7bb7bb2cNU-1pkLZk3J4pUDm_YOUurC3X01qT7wwfSS52oZCdh6gtT8kylyHxdPRLZo3U8fl6Dvju0FlRW6NyZU53ND176EyzfL7JEshtFmOYB3W48gzhEtBi2m0-6GWljW-MQmEE' --compressed --insecure

7. 总结本文,指出后续示例

本文介绍了如何使用 NiFi1.25版本HTTPS模式下的 Rest API 进行基本操作,包括身份验证、获取组件信息、启动和停止组件,以及修改组件的配置。通过这些操作,用户可以更好地管理和控制NiFi中的数据流处理器。

建议进一步深入了解NiFi的 Rest API文档和实际应用场景,以更好地利用其强大的管理和控制能力。

通过这些示例和操作,希望读者能够快速上手NiFi的RestAPI,并在实际应用中发挥其优势。


NiFI工具学起来,没那么难,用起来真的很丝滑。为自己的NiFi视频教程做个广告:https://edu.csdn.net/course/detail/38508

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

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

相关文章

2.2动态库

动态库的特性 位置无关代码(PIC - position independent code) 库中的符号&#xff0c;不需要提前存储在可执行文件中&#xff0c;只有当链接时&#xff0c;可执行文件才会将需要的代码函数链接到内存中。 制作动态库 编写主函数 test.c #include<stdio.h> int main…

Java 设计模式系列:解释器模式

简介 解释器模式是一种行为型设计模式&#xff0c;它提供了一种构建抽象语法树的机制&#xff0c;并定义了如何解释这棵树。解释器模式属于编译原理中的语法制导翻译的范畴。 如上图&#xff0c;设计一个软件用来进行加减计算。我们第一想法就是使用工具类&#xff0c;提供对应…

优雅单片机之STM32C8T6----------程序下载(1)

0&#xff0c;C8T6系列 若想查看视频以及讲解&#xff0c;请查看B站或者抖音视频。 1&#xff0c;入门程序的下载&#xff08;本文&#xff09; 2&#xff0c;蓝牙控制&#xff08;待定&#xff09; 3&#xff0c;蓝牙小车&#xff08;待定&#xff09; 一&#xff0c;USB转…

springboot3 web

springboot web配置 springboot web的配置有&#xff1a; SpringMvc配置的前缀为&#xff1a;spring.mvcweb场景的通用配置为&#xff1a;spring.web文件上传的配置为&#xff1a;spring.servlet.multipart服务器相关配置为&#xff1a;server 接管SpringMVC 的三种方式 方…

深圳晶彩智能JC3636W518C开发环境Arduino IDE配置

深圳晶彩智能发布了JC3636W518C 这是一款中国制造的&#xff0c;铝合金外壳&#xff0c;价格非常震撼的开发板。原创是billbill的up播主萨纳兰的黄昏设计的ESP32太极小派&#xff0c;由深圳晶彩智能批量生产。 该款 LCD 模块采用 ESP32-S3R8 芯片作为主控,该主控是双核 MCU&…

Java File类(一) -- springboot项目根目录下进行文件的读取、写入与清空内容的操作

目录 1.存储的位置 2.FileOperationUtil工具类源代码 1.存储的位置 2.FileOperationUtil工具类源代码 import org.springframework.util.FileCopyUtils; import java.io.*; import java.nio.charset.StandardCharsets;/*** @ClassName FileOperationUtil* @Description 文件…

卡码网KamaCoder 101. 孤岛的总面积

题目来源&#xff1a;101. 孤岛的总面积 C题解&#xff1a;在卡码网KamaCoder 100. 岛屿的最大面积-CSDN基础上加了个孤岛flg进行修改 #include <iostream> #include <vector> #include <queue>#include <stdio.h> using namespace std;int res 0, t…

【2024_CUMCM】时间序列3-一元时间序列分析的模型

目录 时间序列的平稳性 弱平稳 白噪声序列 序列图 差分方程 滞后算子 AR(p)模型 概念 平稳 例子 MA(q)模型 ARMA(p,q) 自回归移动平均模型 平稳性 ACF自相关系数 PACF偏自相关函数 AR(1)模型图 MA(1)与AR(2)图 ARMA(1,1)图 ARMA模型的识别 ARMA模型的估计…

【计算机视觉】3D重建:使用MeshLab进行表面重建(以泊松重建为例)

一、MeshLab 1、简介 MeshLab是一款功能强大的开源三维网格处理软件&#xff0c;主要用于编辑、修复、简化和可视化三维三角形网格和点云数据。它支持PLY、STL、OBJ、3DS、COLLADA等多种常用的3D文件格式&#xff0c;提供了网格清理、修复、简化、纹理映射、参数化、布尔运算等…

多平台内网穿透工具-frp配置(下载安装、开机自启)

✨本教程使用Windows做客户端&#xff0c;Ubuntu做服务端。服务端需要能公网访问&#xff0c;可以去腾讯或者阿里购买vps。 本教程所采用的工具可在蓝奏云中下载。下载地址&#xff1a;https://wwt.lanzoue.com/b0fomaeta密码:1k1u frp官方文档地址&#xff1a;https://gofrp.o…

基于SSM的校园一卡通管理系统的设计与实现

摘 要 本报告全方位、深层次地阐述了校园一卡通管理系统从构思到落地的整个设计与实现历程。此系统凭借前沿的 SSM&#xff08;Spring、Spring MVC、MyBatis&#xff09;框架精心打造而成&#xff0c;旨在为学校构建一个兼具高效性、便利性与智能化的一卡通管理服务平台。 该系…

【问题项目】freeswitch的web界面YouPBX —— 筑梦之路

开源地址&#xff1a;GitHub - JoneXiong/YouPBX: A great GUI manager for FreeSwitch 说明&#xff1a;该项目是基于python 2.7django开发 这里主要记录下搭建使用过程 # 拉取代码git clone https://github.com/JoneXiong/YouPBX.gitgit clone https://github.com/JoneX…

Spring Web MVC入门(2)(请求1)

目录 请求 1.传递单个参数 2.传递多个参数 3.传递对象 4.后端参数重命名(后端参数映射) 非必传参数设置 5.传递数组 请求 访问不同的路径就是发送不同的请求.在发送请求时,可能会带一些参数,所以学习Spring的请求,主要是学习如何传递参数到后端及后端如何接收. 1.传递单…

局域网如何进行内网连接和外网连接

这里写目录标题 什么是局域网什么是内网和外网为什么使用局域网内网连接 --- 小型局域网数据发送过程交换机知道IP地址对应的MAC地址&#xff08;一对一单播&#xff09;交换机不知道IP地址对应的MAC地址&#xff08;一对多广播&#xff09;数据接收过程 外网连接中型或大型局域…

SpringCoud组件

一、使用SpringCloudAlibaba <dependencyManagement><dependencies><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>2023.0.1.0</version><…

【Python】数据处理(mongodb、布隆过滤器、索引)

数据 数据预处理 df pd.read_csv(file_path, encodingANSI) csv的编码方式一定要用 ANSI。要不然会出现各种报错 import pandas as pd from datetime import datetime# 读取CSV文件 file_path book_douban.csv df pd.read_csv(file_path, encodingANSI)# 定义一个函数来…

提高项目透明度:有效的跟踪软件

国内外主流的10款项目进度跟踪软件对比&#xff1a;PingCode、Worktile、Teambition、Tower、Asana、Trello、Jira、ClickUp、Notion、Liquid Planner。 在项目管理中&#xff0c;确保进度跟踪的准确性与效率是每位项目经理面临的主要挑战之一。选用合适的项目进度跟踪软件不仅…

C++笔试强训5

文章目录 一、选择题1-5题6-10题 二、编程题题目一题目二 一、选择题 1-5题 x1&#xff0c;先x&#xff0c;再x–&#xff0c;while判断永远为真&#xff0c;故死循环 选D。 sizeof会计算\0,strlen不包括\0,并且strlen只计算\0之前的。 所以sizeof是10&#xff0c;strken是4 …

Vulnhub靶场DC-3-2练习

目录 0x00 准备0x01 主机信息收集0x02 站点信息收集0x03 漏洞查找与利用1. joomla漏洞查找2. SQL注入漏洞3. 破解hash4. 上传一句话木马5. 蚁剑连接shell6. 反弹shell7. 提权 0x04 总结 0x00 准备 下载链接&#xff1a;https://download.vulnhub.com/dc/DC-3-2.zip 介绍&#…

K8S ingress 初体验 - ingress-ngnix 的安装与使用

准备环境 先把 google 的vm 跑起来… gatemanMoreFine-S500:~/projects/coding/k8s-s/service-case/cloud-user$ kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-master Ready control-plane,master 124d v1.23.6 k8s-no…