天天看點

zookeeper安裝和配置

zookeeper的安裝和配置

http://coolxing.iteye.com/blog/1871009

http://zookeeper.apache.org/doc/r3.3.3/zookeeperAdmin.html

用vmware建立三台虛拟機,都是centOS系統。

安裝的時候,記得選上gnome desktop,還有後面的development tools。

裝好後,java -version看到

zookeeper安裝和配置

說明已經配好了java環境。

然後上官網下載下傳zookeeper包,放到centos裡,直接解壓就行,把解壓的檔案夾放到home檔案夾裡即可。

Zookeeper根目錄裡有conf檔案夾,進去建立zoo.cfg。注意,每台虛拟機都要放一個zookeeper目錄,然後建立zoo.cfg。内容一樣。

隻是我第一台虛拟機的zoo.cfg的dataDir是/home/gyc/zookeeper-***/data

第二台虛拟機我使用者名是gyc2,不一樣,是以dataDir應該是/home/gyc2/zookeeper-***/data

zoo.cfg

内容大概為

tickTime=2000

dataDir=/var/zookeeper/

clientPort=2181

initLimit=5

syncLimit=2

server.1=zoo1:2888:3888

server.2=zoo2:2888:3888

server.3=zoo3:2888:3888

然後在dataDir指定的目錄裡建立myid檔案。比如你要把目前機器作為server.3,那麼myid裡存一個3就行。

然後配置網絡,每個虛拟機設定自己的靜态IP。對應着配置檔案裡的那幾個ip。

至于設定靜态ip,網上查了好多關于centos設定ip的方法。我都試了,發現沒有eth0。然後找為什麼沒有eth0,怎麼加一個eth0。反正我是沒有成功。

後來我自己發現,在設定-network裡,有個add profile。然後我添加了,加上配置檔案中對應的IP,子網路遮罩,網關。發現能ping通。

注意:虛拟機配置自己的靜态IP,需要看

zookeeper安裝和配置

取消使用本地DHCP服務将IP位址配置設定給虛拟機。

然後點NAT設定

zookeeper安裝和配置

看清自己的網關IP

Zoo.cfg裡三台虛拟機的ip,前9位要和網關的相同,後三位自己填就行。

Ip配置好了之後,在zookeeper根目錄的bin檔案夾裡,有zkServer.sh

./zkServer.sh start開啟zookeeper。然後./zkServer.sh status出現

ZooKeeper JMX enabled by default

Using config:/home/gyc/zookeeper-3.4.9/bin/../conf/zoo.cfg

Error contacting service. It is probablynot running.

說明沒調好,然後去bin檔案夾下的zookeeper.out裡看錯誤日志,一目了然。

我是出現了這種問題

2017-02-26 19:36:55,077 [myid:1] -WARN [QuorumPeer[myid=1]/0:0:0:0:0:0:0:0:2181:[email protected]] - Unexpectedexception, tries=3, connecting to /192.168.116.48:2888

java.net.NoRouteToHostException: No routeto host

是因為centos防火牆沒有開通21812888 3888端口

firewall-cmd --zone=public--add-port=3888/udp --add-port=3888/tcp –permanent

用這個指令。執行三次。

然後firewall0cmd –reload即可。

每台虛拟機都要開通這三個端口。

然後就可以了。