.
目录
1.准备机器:
2.安装zookeeper集群:
a.下载
b.配置zoo.cfg
c.新建myid文件并写入集群标识
d.检测是否安装成功
3.下载nifi配置zk连接串:
4.修改nifi的配置:
1.S to S 設置修改:
2.Web UI设置:
3.集群节点设置:
4.zookeeper链接设置
5.启动校验是否安装成功:
6.注意项目.
1.准备机器:
192.168.10.215; 192.168.10.216; 192.168.10.217;
2.安装zookeeper集群:
分别在192.168.10.215; 192.168.10.216; 192.168.10.217;机器上安装zookeeper,然后启动,他们会自动选出自己的leader。
安装步骤:a,b,c ,d 四步
a.下载
去官网下载zookeeper,然后解压/usr/local/software/zookeeper/zookeeper-3.4
b.配置zoo.cfg
复制zoo_sample.cfg 为zoo.cfg,并根据机器信息,做如下配置:
server.* 给对应的机器,每个ip上的zookeeper,都必须做如上的配置。配置完成之后,保存退出。
c.新建myid文件并写入集群标识
在我的zoo.cfg配置文件中,dataDir=/usr/local/software/zookeeper/zookeeper-3.4/tmp 是我的数据目录,那么:
在215机器:echo “1” > /usr/local/software/zookeeper/zookeeper-3.4/tmp/myid
在216机器:echo “2” > /usr/local/software/zookeeper/zookeeper-3.4/tmp/myid
在217机器:echo “3” > /usr/local/software/zookeeper/zookeeper-3.4/tmp/myid
如此和上面的配置要一一对应,否则会不能通信。
d.检测是否安装成功
分别启动zookeeper,使用命令:sh bin/zkServer.sh start ;(zk的常用命令:
#启动ZK服务:
sh zkServer.sh start >zookeeper.log &
#停止ZK服务:
bin/zkServer.sh stop
#重启ZK服务:
bin/zkServer.sh restart
#查看ZK服务状态:
bin/zkServer.sh status
),使用命令 bin/zkServer.sh status检测每台机器的follower还是leader
如此表示是安装成功了!
3.下载nifi配置zk连接串:
在解压的nifi目录下,找到conf目录,修改state-management.xml文件中stateManagement 根节点下的cluster-provider节点内容,将id为zk-provider的节点的property的设置中name=”Connect String”修改为zk的连接属性:如下设置:
192.168.10.215:2181,192.168.10.216:2181,192.168.10.217:2181,具体修改如图所示:192.168.10.215; 192.168.10.216; 192.168.10.217;
4.修改nifi的配置:
nifi.properties的配置是nifi集群配置的关键:
1.S to S 設置修改:
修改块为:”Site to Site” ,主要设置远程调用的ip和端口:具体如下:nifi.remote.input.host=192.168.10.217; nifi.remote.input.socket.port=10001
注意:215,216,217三台机器都要修改,ip写成对应的ip,端口可以为相同.
2.Web UI设置:
修改块为” web properties”, 主要设置访问的ip和端口:具体为: nifi.web.http.host=192.168.10.217 ; nifi.web.http.port=9000 如图:
注意:215,216,217三台机器都要修改,ip写成对应的ip,端口可以为相同.
3.集群节点设置:
修改块为” cluster node properties”, 主要设置集群的是否启用,ip
端口,最大等待时间和候选配置:具体修改为: nifi.cluster.is.node=true;nifi.cluster.node.address=192.168.10.217
nifi.cluster.node.protocol.port=9999;nifi.cluster.flow.election.max.wait.time=20 sec;nifi.cluster.flow.election.max.candidates=1
注意:215,216,217三台机器都要修改,ip写成对应的ip,端口可以为相同,其他设置也可以一致.
4.zookeeper链接设置
修改块为” zookeeper properties”, 主要设置zookeeper的连接
串信息:配置为: 192.168.10.215:2181,192.168.10.216:2181,192.168.10.217:2181
注意:215,216,217三台机器都要修改,而且此项配置是一致的。
5.启动校验是否安装成功:
分别在 215, 216, 217, 三台机器上使用 sh bin/nifi.sh start 命令启动
点击cluster,可以看见如下图示:
如此,就可以确定:nifi集群是安装成功的。
6.注意项目.
- 如果要在 /etc/hosts 文件中配置ip和机器名称的对应,则三台机器都要配置,而且配
置完成之后,必须要重启,保证配置的名称是生效的。
2.使用了默认集成的zookeeper之后,就不能再使用外部的zookeeper,除非修改外部
访问的端口。
3.在nifi.properties文件中,必须注意配置的:
nifi.cluster.flow.election.max.wait.time=20 sec
nifi.cluster.flow.election.max.candidates=1
4.不要打开防火墙,如果要打开防火墙,那么必须把要使用的端口都放开,贴下centos防火墙操作的命令:
#进程与状态相关
systemctl start firewalld.service #启动防火墙
systemctl stop firewalld.service #停止防火墙
firewall-cmd –state #查看防火墙状态
firewall-cmd –reload #更新防火墙规则
firewall-cmd –state #查看防火墙状态
firewall-cmd –reload #重载防火墙规则
firewall-cmd –list-ports #查看所有打开的端口
firewall-cmd –list-services #查看所有允许的服务
firewall-cmd –get-services #获取所有支持的服务
#区域相关
firewall-cmd –list-all-zones #查看所有区域信息
firewall-cmd –get-active-zones #查看活动区域信息
firewall-cmd –set-default-zone=public #设置public为默认区域
firewall-cmd –get-default-zone #查看默认区域信息
firewall-cmd –zone=public –add-interface=eth0 #将接口eth0加入区域public
#接口相关
firewall-cmd –zone=public –remove-interface=eth0 #从区域public中删除接口eth0
firewall-cmd –zone=default –change-interface=eth0 #修改接口eth0所属区域为default
firewall-cmd –get-zone-of-interface=eth0 #查看接口eth0所属区域
#端口控制
firewall-cmd –add-port=80/tcp –permanent #永久添加80端口例外(全局)
firewall-cmd –remove-port=80/tcp –permanent #永久删除80端口例外(全局)
firewall-cmd –add-port=65001-65010/tcp –permanent #永久增加65001-65010例外(全局)
firewall-cmd –zone=public –add-port=80/tcp –permanent #永久添加80端口例外(区域public)
firewall-cmd –zone=public –remove-port=80/tcp –permanent #永久删除80端口例外(区域public)
firewall-cmd –zone=public –add-port=65001-65010/tcp –permanent #永久增加65001-65010例外(区域public)
这有可能导致启动报错。