當前位置:
首頁 > 最新 > ZooKeeper運維部署的一些經驗

ZooKeeper運維部署的一些經驗

最近接觸dubbo+zookeeper的分散式系統,大致總結了一下ZooKeeper的整個部署流程。

什麼是ZooKeeper?

ZooKeeper是源代碼開放的分散式協調服務,由雅虎創建,是Google的開源實現。ZooKeeper是一個高性能的分散式數據一致性解決方案,他將那些複雜的、容易出錯的分散式一致性服務封裝起來,構成一個高效可靠的原語集,並提供一系列簡單易用的介面給用戶使用。

系統要求

ZooKeeper是用Java編寫,運行在Java環境上,因此,在部署zk的機器上要安裝Java運行環境。為了正常運行zk,需要JRE1.6或者以上的版本。對於集群模式下的ZooKeeper部署,ZooKeeper服務進程建議的最小進程數量為3個,而且不同的服務進程建議部署在不同的物理機器上面,以減少機器宕機帶來的風險,以實現ZooKeeper集群的高可用性。下載地址:http://mirrors.hust.edu.cn/apache/zookeeper/

工作原理

ZooKeeper分為伺服器端(Server)和客戶端(Client),客戶端可以連接到整個ZooKeeper服務的任意伺服器上。每一個Server代表一個安裝Zookeeper服務的機器,即是整個提供Zookeeper服務的集群。當ZooKeeper啟動時,將從實例中選舉一個Leader,Leader 負責處理數據更新等操作,一個更新操作成功的標誌是當且僅當大多數Server在內存中成功修改數據。

安裝步驟

解壓zookeeper-3.4.9.tar.gz到硬碟的根目錄下,然後複製zoo.cfg到…zookeeper-3.4.9conf目錄下,並修改如下參數(ZooKooper日誌)。這個路徑可自行定義,修改好之後,把對應的物理路徑文件夾建好。

最後啟動zookeeper,切換到…zookeeper-3.4.9inzkServer目錄,右擊管理員啟動zookeeper。

出現如圖任意情況,說明zookeeper部署成功。

註冊ZooKeeper服務

1、下載prunsrv,下載地址:http://archive.apache.org/dist/commons/daemon/binaries/windows/

2、複製prunsrv.exe和prunmgr.exe至zookeeper安裝目錄下的bin目錄下。其中,prunsrv.exe是做服務的執行程序;prunmgr.exe是監控服務配置及運行的程序。

3、添加兩個環境變數,把服務名稱和安裝目錄註冊進環境變數。

4、在zookeeper-3.4.9in添加zkServerStop.cmd 文件,內容如下:

@echo off

setlocal

TASKLIST/svc|findstr/c:"%ZOOKEEPER_SERVICE%">

%ZOOKEEPER_HOME%zookeeper_svc.pid

FOR /F "tokens=2 delims= " %%GIN (%ZOOKEEPER_HOME%zookeeper_svc.pid) DO (

@set zkPID=%%G

)

taskkill /PID %zkPID% /T /F

del %ZOOKEEPER_HOME%/zookeeper_svc.pid

endlocal

5、新建一個批處理安裝文件:install.bat,內容如下:

prunsrv.exe"//IS//%ZOOKEEPER_SERVICE%" ^

--DisplayName="Zookeeper (%ZOOKEEPER_SERVICE%)" ^

--Description="Zookeeper (%ZOOKEEPER_SERVICE%)" ^

--Startup=auto --StartMode=exe ^

--StartPath=%ZOOKEEPER_HOME% ^

--StartImage=%ZOOKEEPER_HOME%inzkServer.cmd ^

--StopPath=%ZOOKEEPER_HOME%^

--StopImage=%ZOOKEEPER_HOME%inzkServerStop.cmd ^

--StopMode=exe --StopTimeout=5 ^

--LogPath=%ZOOKEEPER_HOME% --LogPrefix=zookeeper-wrapper ^

--PidFile=zookeeper.pid --LogLevel=Info --StdOutput=auto --StdError=auto

6、管理員身份運行install.bat。

7、服務列表中啟動ZooKeeper服務。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 全球大搜羅 的精彩文章:

為什麼要用離軸拋物面鏡聚焦
如果幣市崩盤了,會發生什麼事情?

TAG:全球大搜羅 |