Nifi Api访问

本文介绍了如何通过Nifi的Restful API进行自动化操作,包括查看集群节点信息和上传模板。在Nifi单节点或集群环境中,利用HttpClient访问API,如查看集群状态需调用特定URL,而上传模板则需要POST请求并指定模板文件。
摘要由CSDN通过智能技术生成

Nifi Api

Nifi通过Restful API的形式将自身的功能开放,用户可以在编写脚本时,通过HTTPClient的方式直接调用这些接口,以达到对Nifi自动化操作的目的

参考

Nifi API Document:https://nifi.apache.org/docs/nifi-docs/rest-api/index.html

环境

  • Nifi 单节点服务或Nifi 集群模式,需要能访问到Nifi开放的8080端口(默认)
  • 需通过HttpClient方式访问

调用

我们不能和之前一样调用localhost:8080/nifi/,而是需要调用localhost:8080/nifi-api/

官方文档中没有详细描述如何调用,其实际调用链接形式应如下:

# 官方提供的地址
/controller/bulletin
# 正常的地址
http://{
   ip}:{
   port}/nifi-api/controller/bulletin
# 标准格式
http://{
   ip}:{
   port}/nifi-api/{
   service}

查看集群节点信息

假设本地存在一个Nifi集群,节点分别是192.168.96.130,192.168.96.131,192.168.96.132

开放的端口均为默认的8080端口

如果我们想要通过api得知当前集群中节点的情况,我们可以访问:

# Get请求
# 可以访问任意一台在集群中的主机
http://192.168.96.130:8080/nifi-api/controller/cluster

Nifi在接受到请求后,会向我们返回一个JSON字符串,如下:

{
   
    "cluster": {
   
        "nodes": [
            {
   
                "nodeId": "2130272e-8057-4e7e-8806-2b14663ded65",
                "address": "192.168.96.131",
                "apiPort": 8080,
                "status": "CONNECTED",
                "heartbeat": "03/18/2021 16:08:58 CST",
                "roles": [],
                "activeThreadCount": 0,
                "queued": "0 / 0 bytes",
                "events": [
                    {
   
                        "timestamp": "03/18/2021 11:00:32 CST",
                        "category": "INFO",
                        "message": "Node Status changed from CONNECTING to CONNECTED"
                    },
                    {
   
                        "timestamp": "03/18/2021 11:00:22 CST",
                        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值