Apache nifi的分布式部署
1、环境准备。本次以linux安装为例。需要3台linux机器,每台机器上安装jdk。
首先在每天机器上运行命令java -version,检查jdk是否安装成功。
注:3台机器的ip分别为192.168.0.32,192.168.0.33,192.168.0.34

2、 安装zookeeper。
官网下载zookeeper,解压到安装目录。修改安装目录下/conf/zoo.cfg,增加一下内容:
server.1=192.168.0.32:2888:3888
server.2=192.168.0.33:2888:3888
server.3=192.168.0.34:2888:3888
在dataDir=/tmp/zookeeper所配置的目录下创建myid文件,内容为server序号(即1或2或3)。
注意:3台机器上都进行安装和配置。

3、安装Apache nifi。
下载安装包,解压到安装目录,修改conf/nifi.properties:
nifi.remote.input.host=192.168.0.32
nifi.remote.input.secure=false
nifi.remote.input.socket.port=10443
nifi.remote.input.http.enabled=true
nifi.web.http.host=192.168.0.32
nifi.web.http.port=8081
nifi.cluster.is.node=true
nifi.cluster.node.address=192.168.0.32
nifi.cluster.node.protocol.port=11443
nifi.zookeeper.connect.string=192.168.0.32:2181,192.168.0.33:2181,192.168.0.34:2181
修改:zookeeper.properties,增加:
server.1=192.168.0.32:2888:3888
server.2=192.168.0.33:2888:3888
server.3=192.168.0.34:2888:3888

4、启动
先启动所有zookeeper,到安装目录下bin/,运行:./ zkServer.sh,3台机器都要启动;
再启动所有nifi,到安装目录bin/下,运行./nifi.sh start,3台机器都要启动。
启动后可以用ps命令查看启动进程。

5、验证是否部署成功
在浏览器中输入:http://ip:port/nifi,ip是3台机器中任何一台机器ip都可,port是在nifi配置文件中配置的端口,本次实验使用的是:http://192.168.0.32:8081/nifi。如果配置成功就可看到如下界面。
