zookeeper 伪分布式安装
1 下載zookeeper安裝包
? ?下載地址?http://apache.fayea.com/zookeeper/?
? ?我下載的是zookeeper-3.4.6.tar.gz
2 解壓縮
? 將zookeeper-3.4.6.tar.gz拷貝到/usr/local目錄下
? 執行命令 tar -zxvf?zookeeper-3.4.6.tar.gz
? 解壓后的目錄為?zookeeper-3.4.6 ,為了方便,將目錄改為zookeeper,mv?zookeeper-3.4.6 ?zookeeper
3 配置
??為模擬3個分布式節點,所以需要創建三個節點的配置文件?zoo1.cfg、zoo2.cfg、zoo3.cfg
? cd /usr/local/zookeeper/conf
? 將zoo_sample.cfg改名為zoo1.cfg
? mv?zoo_sample.cfg?zoo1.cfg
? cp zoo1.cfg zoo2.cfg
? cp zoo1.cfg zoo3.cfg
??
??
? zoo1.cfg配置如下 (注意下面標紅的地方)
注:上面的hadoop3是我的機器名,可以寫成127.0.0.1 ?
zoo2.cfg配置如下
zoo3.cfg配置如下
創建Zookeeper 保存數據的目錄
mkdir -p?/usr/local/zookeeper/data/zk1
mkdir -p?/usr/local/zookeeper/data/zk2
mkdir -p?/usr/local/zookeeper/data/zk3
4 配置說明
- tickTime:這個時間是作為 Zookeeper 服務器之間或客戶端與服務器之間維持心跳的時間間隔,也就是每個 tickTime 時間就會發送一個心跳。
- initLimit:這個配置項是用來配置 Zookeeper 接受客戶端(這里所說的客戶端不是用戶連接 Zookeeper 服務器的客戶端,而是 Zookeeper 服務器集群中連接到 Leader 的 Follower 服務器)初始化連接時最長能忍受多少個心跳時間間隔數。當已經超過 10個心跳的時間(也就是 tickTime)長度后 Zookeeper 服務器還沒有收到客戶端的返回信息,那么表明這個客戶端連接失敗。總的時間長度就是 10*2000=20 秒
- syncLimit:這個配置項標識 Leader 與 Follower 之間發送消息,請求和應答時間長度,最長不能超過多少個 tickTime 的時間長度,總的時間長度就是 5*2000=10秒
- dataDir:顧名思義就是 Zookeeper 保存數據的目錄,默認情況下,Zookeeper 將寫數據的日志文件也保存在這個目錄里。
- clientPort:這個端口就是客戶端連接 Zookeeper 服務器的端口,Zookeeper 會監聽這個端口,接受客戶端的訪問請求。
- server.A=B:C:D:其中 A 是一個數字,表示這個是第幾號服務器;B 是這個服務器的 ip 地址;C 表示的是這個服務器與集群中的 Leader 服務器交換信息的端口;D 表示的是萬一集群中的 Leader 服務器掛了,需要一個端口來重新進行選舉,選出一個新的 Leader,而這個端口就是用來執行選舉時服務器相互通信的端口。如果是偽集群的配置方式,由于 B 都是一樣,所以不同的 Zookeeper 實例通信端口號不能一樣,所以要給它們分配不同的端口號。
5 創建節點標識 在/usr/local/zookeeper/data/zk1 、?/usr/local/zookeeper/data/zk3 、/usr/local/zookeeper/data/zk3 三個目錄下分別創建myid文件 里面分別寫1、2、3用于標識第幾號服務器 vi?/usr/local/zookeeper/data/zk1 1
vi?/usr/local/zookeeper/data/zk1 2
vi?/usr/local/zookeeper/data/zk1 3
6 啟動zookeeper cd?/usr/local/zookeeper/
7 查看啟動狀態
可以看到管理節點在3號服務器上
8 如果想停止服務器可使用以下命令 ./bin/zkServer.sh stop conf/zoo1.cfg?
./bin/zkServer.sh stop conf/zoo2.cfg?
./bin/zkServer.sh stop conf/zoo3.cfg
9 驗證zookeeper安裝的正確性
./bin/zkCli.sh -server 127.0.0.1:2183
注:由于上面的leader在3號服務器上,3號服務器的客戶端連接端口是2183
執行成功后:
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
[zk: 127.0.0.1:2183(CONNECTED) 0]?
查看幫助:
測試
至此,Zookeeper 安裝完成。
?
總結
以上是生活随笔為你收集整理的zookeeper 伪分布式安装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 海量Web日志分析 用Hadoop提取K
- 下一篇: 修改map分片个数