您好,登錄后才能下訂單哦!
本篇內容介紹了“zookeeper的簡介和安裝方法”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
一、zookeeper介紹
直接翻譯官網的What is zookeeper。
Zookeeper是一個關于 配置信息,命名,提供分布式同步和集群service的一站式服務。所有的這些服務或者(他們)別的表現形式經常在應用于分布式系統中。每一次去實現他們,都不可避免的花費大量的工作去修復bugs和(調整)競爭條件。因為實現這類服務很難,所以在一開始就要謹慎的對待他們。否則他們將變得很脆弱和難以管理! 即使正確的完成了,這些服務的不同實現,仍然可能導致部署后維護的復雜性。
我的水平只能翻譯成這樣了,原文比較古怪。
原文地址:http://zookeeper.apache.org/
二、配置和安裝
點擊這里下載安裝包,我采用的是最新的3.4.6,是一個stable版本。
安裝方式采取偽分布式部署。即在同一臺機器上部署多個節點。安裝過程比較簡單。多臺機器也同理。
1.把下載下來的安裝包放在/opt/shencl/zookeeper/目錄下,tar -zxvf 解壓,改名 zookeeper-3.4.6_0。
2. 復制一份zoo_sample.cfg,命名為zoo.cfg。編輯zoo.cfg,我們準備部署3個節點,所以加入如下配置,
tickTime=2000
initLimit=5
syncLimit=2
dataDir=/opt/shencl/zookeeper/data/data0
dataLogDir=/opt/shencl/zookeeper/log/log0
clientPort=2180
server.0=127.0.0.1:2888:3888
server.1=127.0.0.1:2889:3889
server.2=127.0.0.1:2890:3890
參數解釋:
tickTime: 客戶端和服務端或者服務端多個節點之間維持心跳的時間間隔,單位毫秒。
initLimit:服務端節點初始化時,相互通信的等待時間。一個單位就是tickTime的值。
syncLimit:服務端節點之間同步數據的間隔時間。一個單位就是tickTime的值。
dataDir: 數據文件存放目錄。
dataLogDir:用來重做數據的事務日志文件存放目錄。
clientPort:給客戶端連接的端口。
server.0,server.1,server.2表示節點編號,后邊用冒號隔開的三個數字,分別表示節點的ip,交換數據的端口號,某個節點掛掉之后專門用來選舉的端口號。
注:initLimit,syncLimit在單節點部署模式下,不需要配置。
3. 在dataDir目錄下創建myid文件,寫入該節點的編號 0 。這樣一個節點就配置完成了。
4.復制 zookeeper-3.4.6_0 到 zookeeper-3.4.6_1和 zookeeper-3.4.6_2,要修改的地方是 zoo.cfg里的 dataDir,dataLogDir,clientPort。還有需要在自己的data目錄下新建myid文件,寫入自己的編號。
最終的目錄結構如下:
比較重要的有ls, get,set,create,delete等等,path參數必須以/開頭。留意create命令的 acl參數(Access Control權限控制)和set命令的 version參數
我們用create命令創建一個znode /testnode , 然后ls,發現已經創建成功了!
再看看set和get命令,把他的值改成 iwantchangemynode
“zookeeper的簡介和安裝方法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。