Apache Nifi 简明教程

Apache NiFi - API

NiFi 提供了许多 API,可帮助开发人员通过任何其他工具或自定义开发的应用程序来更改并获取 NiFi 的信息。在本教程中,我们将使用谷歌 Chrome 中的 postman 应用程序来讲解一些示例。

若要将 postman 添加到您的 Google Chrome,请访问下面提到的 URL,然后单击添加到 Chrome 按钮。您现在将看到一个添加到您 Google Chrome 的新应用程序。

NiFi rest API 的当前版本是 1.8.0,文档位于下面提到的 URL 中。

以下是使用最多的 NiFi rest API 模块:

  1. [role="bare"]http://<nifi url>:<nifi port>/nifi-api/<*api-path*>

  2. 如果启用了 HTTPS [role="bare"] [role="bare"]https://<nifi url>:<nifi port>/nifi-api/<*api-path*>

S.No.

API module Name

api-path

Description

1

Access

/access

向用户进行身份验证,并从 NiFi 获取访问令牌。

2

Controller

/controller

管理集群并创建报告任务。

3

Controller Services

/controller-services

用于管理控制器服务和更新控制器服务引用。

4

Reporting Tasks

/reporting-tasks

To manage reporting tasks.

5

Flow

/flow

获取数据流元数据和组件状态,并查询历史记录

6

Process Groups

/process-groups

上传和实例化模板,并创建组件。

7

Processors

/processors

创建和计划处理器,并设置其属性。

8

Connections

/connections

创建一个连接,设置队列优先级,并更新连接目的地

9

FlowFile Queues

/flowfile-queues

查看队列内容、下载流程文件内容,以及清空队列。

10

Remote Process Groups

/remote-process-groups

创建一个远程组并启用传输。

11

Provenance

/provenance

查询来源,并搜索事件谱系。

让我们现在考虑一个示例,并在 postman 上运行以获取有关运行的 NiFi 实例的详细信息。

Request

GET http://localhost:8080/nifi-api/flow/about

Response

{
   "about": {
      "title": "NiFi",
      "version": "1.7.1",
      "uri": "http://localhost:8080/nifi-api/",
      "contentViewerUrl": "../nifi-content-viewer/",
      "timezone": "SGT",
      "buildTag": "nifi-1.7.1-RC1",
      "buildTimestamp": "07/12/2018 12:54:43 SGT"
   }
}