Apache NiFi 是一个易于使用、功能强大且可靠的数据处理和分发系统。
NiFi 为全球各行各业的数千家公司自动化网络安全、可观测性、事件流和生成式 AI 数据管道及分发。
NiFi 支持现代操作系统,并且需要较新的语言版本来开发和运行应用程序。
源代码仓库包含多个组件项目。
有关更多详细信息,请参阅各个项目的文档。
项目指南提供了安装和扩展应用程序的详尽文档。
NiFi 使用 Maven Wrapper 进行项目开发。Maven Wrapper 提供 shell 脚本,用于下载并缓存所选版本的 Apache Maven 以运行构建命令。
在 Microsoft Windows 上进行开发时,需要使用 mvnw.cmd 而不是 mvnw 来运行 Maven 命令。
运行以下命令以使用并行执行构建项目模块:
./mvnw install -T1C
运行以下命令以使用并行执行和静态分析构建项目模块,以确认符合代码和许可要求:
./mvnw install -T1C -P contrib-check
运行以下命令以构建应用程序二进制文件,而不构建其他可选模块:
./mvnw install -T1C -am -pl :nifi-assembly
nifi-assembly 模块包含二进制发行版。
ls nifi-assembly/target/nifi-*-bin.zip
nifi-assembly 模块在目录中提供二进制发行版,用于本地开发和测试。
cd nifi-assembly/target/nifi-*-bin/nifi-*/
NiFi 提供用于启动和停止系统的 shell 脚本。
在 Microsoft Windows 上运行时,需要使用 nifi.cmd 而不是 nifi.sh 来执行系统命令。
运行以下命令从发行版目录启动 NiFi:
./bin/nifi.sh start
默认配置会在启动时生成随机用户名和密码。NiFi 会将生成的凭据写入 NiFi 安装目录下 logs/nifi-app.log 的应用程序日志中。
在安装了 grep 的操作系统上,可以使用以下命令查找生成的凭据:
grep Generated logs/nifi-app*log
NiFi 按如下格式记录生成的凭据:
Generated Username [USERNAME]
Generated Password [PASSWORD]
USERNAME 将是由 36 个字符组成的随机 UUID。PASSWORD 将是一个随机字符串。
可以使用以下命令将用户名和密码替换为自定义凭据:
./bin/nifi.sh set-single-user-credentials <username> <password>
NiFi 默认在 localhost 地址上运行,通过 HTTPS 使用 8443 端口,URL 如下:
https://localhost:8443/nifi
由于初始化期间生成的自签名证书,浏览器将显示警告消息,提示存在潜在安全风险。生产部署应使用受信任的证书颁发机构提供的证书,并更新 NiFi 的密钥库和信任库配置。
除非另有说明,本软件根据 Apache License, Version 2.0 获得许可。
根据 Apache License, Version 2.0(“许可证”)获得许可;除非遵守许可证,否则您不得使用此文件。您可以在以下位置获取许可证副本:
https://www.apache.org/licenses/LICENSE-2.0
除非适用法律要求或书面同意,否则按“AS IS”基础分发的本软件不附带任何明示或暗示的保证或条件。请参阅许可证,了解许可证规定的特定语言下的权限和限制。
此发行版包含加密软件。您当前所在的国家/地区可能对加密软件的进口、持有、使用和/或再出口到其他国家/地区有所限制。在使用任何加密软件之前,请检查您所在国家/地区有关加密软件进口、持有、使用和再出口的法律、法规和政策,以确认是否允许。更多信息请参阅 https://www.wassenaar.org。
美国商务部工业和安全局(BIS)已将本软件归类为出口商品控制编号(ECCN)5D002.C.1,其中包括使用或执行非对称算法加密功能的信息安全软件。Apache 软件基金会的此发行版的形式和方式使其符合根据许可证例外 ENC 技术软件不受限制(TSU)例外(参见 BIS 出口管理条例第 740.13 条)进行出口的资格,适用于目标代码和源代码。
以下提供了所包含加密软件的更多详细信息:
Apache NiFi 使用以下库和框架进行加密通信和敏感信息存储: