Linux下安裝ZooKeeper-3.5.6


下載
官網下載地址是 https://www.apache.org/dyn/closer.cgi/zookeeper,下載apache-zookeeper-3.5.6-bin.tar.gz。
 
standalone mode
獨立模式,一個服務器。服務器包含在一個JAR文件中,因此安裝過程就是創建一個配置文件。
1.解壓 apache-zookeeper-3.5.6-bin.tar.gz到/opt目錄。
2.創建/data/ apache-zookeeper-3.5.6-bin目錄。
3.cp /opt/ apache-zookeeper-3.5.6-bin/conf/zoo_sample.cfg /opt/apache-zookeeper-3.5.6-bin/conf/zoo.cfg。
4.修改/opt/ apache-zookeeper-3.5.6-bin/conf/zoo.cfg,設置dataDir=/data/apache-zookeeper-3.5.6-bin。clientPort是zookeeper監聽客戶端連接的端口。
5.日志文件默認為/opt/ apache-zookeeper-3.5.6-bin/logs/zookeeper-$USER-server-$HOSTNAME.out,$USER和$HOSTNAME是變量。
6.啟動命令是/opt/apache-zookeeper-3.5.6-bin/bin/zkServer.sh start,默認讀取../conf/zoo.cfg配置文件,或者也可以在該命令后附上配置文件路徑。zkServer.sh stop和status用於停止可以查看狀態。
7.執行/opt/apache-zookeeper-3.5.6-bin/bin/zkCli.sh -server 127.0.0.1:2181可以連接到剛剛啟動的ZooKeeper服務, -server 127.0.0.1:2181是默認的,可以省略。
從3.5.0版本開始, zookeeper提供了一個管理服務AdminServer。AdminServer是一個提供了HTTP接口的內嵌Jetty服務,默認端口是8080,默認URL是/commands/[command name],例如http://localhost:8080/commands/stat。接口響應的是JSON格式的數據。AdminServer默認開啟,通過移除classpath下的Jetty包或者配置admin.enableServer為false可以關閉AdminServer。其他相關配置如下。
admin.serverAddress:監聽地址,默認0.0.0.0。
admin.serverPort:監聽端口,默認8080。
admin.idleTimeout:連接最大的等待發送或接收數據的時間,單位是毫秒,默認30000。
admin.commandURL:用於列出命令的URL,相對於根URL,默認/commands。
 
replicated mode
復制模式,一組服務器。 在獨立模式下運行ZooKeeper方便了評估、開發和測試。但是在生產中,應該以復制模式運行ZooKeeper。以下為單機器下安裝示例。
1.復制/opt/apache-zookeeper-3.5.6-bin三次,分別是/opt/apache-zookeeper-3.5.6-bin-1,/opt/apache-zookeeper-3.5.6-bin-2,/opt/apache-zookeeper-3.5.6-bin-3。
2.創建/data/ apache-zookeeper-3.5.6-bin-1,/data/apache-zookeeper-3.5.6-bin-2,/data/apache-zookeeper-3.5.6-bin-3目錄。
3.復制三個目錄中的/conf/zoo_sample.cfg為/conf/zoo.cfg,並修改/conf/zoo.cfg:
設置dataDir=/data/apache-zookeeper-3.5.6-bin-1,dataDir=/data/apache-zookeeper-3.5.6-bin-2,dataDir=/data/apache-zookeeper-3.5.6-bin-3。
設置clientPort=3181,clientPort=3182,clientPort=3183。
在文件最后加上
server.1=127.0.0.1:2222:2223
server.2=127.0.0.1:3333:3334
server.3=127.0.0.1:4444:4445。
4.分別執行
echo 1 > /data/apache-zookeeper-3.5.6-bin-1/myid
echo 2 > /data/apache-zookeeper-3.5.6-bin-2/myid
echo 3 > /data/apache-zookeeper-3.5.6-bin-3/myid
5.每一個server.x項指定了id為x的ZooKeeper服務器使用的地址和端口號。每個server.x項通過冒號分隔為三部分,第一部分為服務器x的IP地址或主機名(hostname),第二部分和第三部分為TCP端口號,分別
用於節點通信和選舉。啟動時,通過讀取dataDir配置下的myid文件獲取服務器id,根據該id找到server.x對應的項進行監聽。
6.分別執行/opt/apache-zookeeper-3.5.6-bin-1/bin/zkServer.sh start,/opt/apache-zookeeper-3.5.6-bin-2/bin/zkServer.sh start,/opt/apache-zookeeper-3.5.6-bin-3/bin/zkServer.sh start。啟動的服務器數量要達到法定人數才可正常運行。
7.執行/opt/apache-zookeeper-3.5.6-bin/bin/zkCli.sh -server 127.0.0.1:3181,127.0.0.1:3182,127.0.0.1:3183可以連接到剛剛啟動的ZooKeeper服務。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM