NiFi 學習 — 外置集羣安裝

好記憶不如爛筆頭,能記下點東西,就記下點,有時間拿出來看看,也會發覺不一樣的感受.

   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.注意項目.

  1. 如果要在 /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)

這有可能導致啓動報錯。

詳細可以參考文檔:https://download.csdn.net/download/supingemail/11905314

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章