資源准備
1.安裝前提,Linux和Windows操作系統下,已經成功安裝JDK,建議1.6版本以上。
2.獲取zookeeper安裝包。
通過訪問https://zookeeper.apache.org/releases.html可以下載,截止目前為止,最新的穩定版本為 3.5.5。下載得到的文件為:zookeeper-3.5.5.tar.gz
3.准備3台網絡互通的Linux主機,分別為192.168.7.35,192.168.7.220,192.168.7.224。
具體安裝
zookeeper的安裝有三種模式:集群方式、偽集群方式、單機方式。下面按集群方式和leader+follower模式來進行安裝。
需要將安裝包拷貝到服務器上,然后解壓。具體上傳方式可以用ftp工具或者rz命令
如:復制完后的文件全路徑為:/home/c7user/zookeeper-3.4.11.tar.gz
1.解壓
分別在3台主機上執行tar -zxvf zookeeper-3.4.11.tar.gz 解壓出來,最終路徑為:/home/c7user/zookeeper-3.4.11,下文用%ZK_HOME%表示該安裝路徑
2.准備配置文件
將%ZK_HOME%/conf 下的zoo.sample.cfg文件復制一份為zoo.cfg。具體的復制和編輯依個人偏好進行,然后針對以下參數做如下編輯配置
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/c7user/zookeeper_data
clientPort=2181
server.1=192.168.7.35:2888:3888
server.2=192.168.7.224:2888:3888
server.3=192.168.7.220:2888:3888
上邊2個端口分別是心跳端口、選舉端口。
3台主機都需要解壓一樣的zookeeper程序,並統一使用第1 點的zoo.cfg 文件,保存在%ZK_HOME%/conf
3.創建myid文件
分別在3台主機的dataDir設置的目錄上創建對應的myid文件(文件名為myid,無后綴)。各自主機的myid文件內容為zoo.cfg中主機列表中server.和=號之間的那個數字。
如:
35主機的/home/c7user/zookeeper_data/myid 內容為1
224主機的/home/c7user/zookeeper_data/myid 內容為2
220主機的/home/c7user/zookeeper_data/myid 內容為3
4.啟動Zookeeper服務
分別在3台主機的%ZK_HOME%/bin目錄下執行./zkServer.sh start命令,如下圖所示。
驗證服務(啟動、停止服務)
方式一
分別在3台主機的%ZK_HOME%/bin目錄下執行./zkServer.sh status命令,得到如下圖所示。
注意紅框中的提示語。代表當前節點zookeeper服務的角色。能看到上述提示的則表示啟動成功。
方式二
分別在3台主機上telnet 127.0.0.1 2181 后通過stat來查看。
停止服務
%ZK_HOME%/bin目錄下執行./zkServer.sh stop命令,得到如下圖所示。
客戶端連接
執行%ZK_HOME%/bin目錄下執行./zkCli.sh命令,得到如下圖所示。
上邊的命令沒有顯示地指定ZK服務器地址,那么默認是連接本地的ZK SERVER。如果希望指定的,則帶上相應的參數
zkCli.sh -server ip:port
其他客戶端:上述是zookeeper自帶的客戶端命令行。使用不方便,這里介紹一款可視化的客戶端工具:ZooInspector。純JAVA開發的,運行可執行的jar包即可。其界面如下: