NiFi1.25版本HTTPS模式下RestAPI使用入门
创始人
2025-01-07 06:33:08
0

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

相关内容

热门资讯

一分钟了解《wPk透视辅助》太... 一分钟了解《wPk透视辅助》太坑了原来确实真的有挂(有挂教学);详细攻略(软件透明挂)力荐一次;太坑...
重大发现微扑克代打(微扑克)辅... 重大发现微扑克代打(微扑克)辅助器插件挂(外挂辅助器程序)详细教程(2024已更新)(哔哩哔哩);1...
一分钟了解!(WPK透视挂)辅... 一分钟了解!(WPK透视挂)辅助透视!(透视)外挂辅助挂ai(2024已更新)(哔哩哔哩);1、点击...
一起来讨论《WEPOKE》软件... 一起来讨论《WEPOKE》软件透明挂,WEPOKE透明挂规律(有挂实锤);亲真的是有正版授权,小编(...
记者发布wepOke软件透明挂... 相信很多朋友都在电脑上玩过吧,但是很多朋友都在抱怨用电脑玩起来不方便。为此小编给大家带来了手机版,这...
玩家实测《微扑克辅助工具》微扑... 玩家实测《微扑克辅助工具》微扑克AI外挂辅助器插件挂(哔哩哔哩);1、不需要AI权限,帮助你快速的进...
科普分享!(WPK德州版)辅助... 科普分享!(WPK德州版)辅助透视!(透视)外挂辅助挂修改器(2022已更新)(哔哩哔哩);详细WP...
玩家必看科普《Wepoke小程... 玩家必看科普《Wepoke小程序》软件透明挂,Wepoke小程序透明挂机器人(有挂技巧);1、这是跨...
解密关于wepoke软件透明挂... 解密关于wepoke软件透明挂!(辅助挂)太坏了其实是真的有挂(2020已更新)(哔哩哔哩);wep...
django踩坑(四):终端输... 使用crontab执行python脚本时,有时会遇到脚本无法执行的问题。这是因为cro...