溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

zookeeper配置及集群搭建

發布時間:2020-07-20 10:05:10 來源:網絡 閱讀:334 作者:我叫袁蒙蒙 欄目:大數據

接下來我們將啟動一個單實例的zookeeper然后在此基礎上搭建一個最簡單的zookeeper集群,為了貫徹最簡單的理念,我們的集群將共只有三個節點,并且他們都在同一臺機器上。

好了,讓我們開始干吧!

單實例

1. 解壓安裝包并復制配置文件

tar -xvzf zookeeper-3.4.12.tar.gz
解壓后到conf目錄下,復制一份配置文件:
cp zoo_sample.cfg zoo.cfg

2. 修改dataDir

雖然是可選的,最好還是把data移出/tmp目錄,我在zookeeper的安裝目錄下創建了一個data目錄,到zookeeper目錄下執行:
mkdir data
然后修改zoo.cfg文件中的dataDir,我修改后的文件內容為:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/ym/zookeeper/zookeeper-3.4.12/data
clientPort=2181
3. 啟動實例

到bin目錄下執行:
./zkServer.sh start
出現以下內容表示成功了:

[ym@localhost bin]$ ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /home/ym/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

集群搭建

1. 修改配置文件

首先,從上面的單實例配置文件zoo.cfg復制一份:
cp zoo.cfg zoo1.cfg
修改其中內容為:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/ym/zookeeper/zookeeper-3.4.12/data1
clientPort=2182
server.1=127.0.0.1:2222:2223
server.2=127.0.0.1:3333:3334
server.3=127.0.0.1:4444:4445

創建zoo2.cfg和zoo3.cfg:

cp  zoo1.cfg  zoo2.cfg
cp  zoo1.cfg  zoo3.cfg

修改zoo2.cfg和zoo3.cfg中clientPort分別為2183和2184、dataDir分別指向data2和data3,修改后內容分別為:
data2.cfg

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/ym/zookeeper/zookeeper-3.4.12/data2
clientPort=2183
server.1=127.0.0.1:2222:2223
server.2=127.0.0.1:3333:3334
server.3=127.0.0.1:4444:4445

data3.cfg

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/ym/zookeeper/zookeeper-3.4.12/data3
clientPort=2183
server.1=127.0.0.1:2222:2223
server.2=127.0.0.1:3333:3334
server.3=127.0.0.1:4444:4445

每一個server.n項指定了編號為n的ZooKeeper服務器使用的地址和端口號。每個server.n項通過冒號分隔為三部分,第一部分為服務器n的IP地址或主機名(hostname),第二部分和第三部分為TCP端口號,分別用于仲裁通信和群首選舉。因為我們在同一個機器上運行三個服務器進程,所以我們需要在每一項中使用不同的端口號。通常,我們在不同的服務器上運行每個服務器進程,因此每個服務器項的配置可以使用相同的端口號。

2 創建data目錄

到zookeeper安裝目錄下執行:

mkdir data1
mkdir data2
mkdir data3

當啟動一個服務器時,我們需要知道啟動的是哪個服務器。一個服
務器通過讀取data目錄下一個名為myid的文件來獲取服務器ID信息???br/>以通過以下命令來創建這些文件:

echo 1 >  data1/myid
echo 2 >  data2/myid
echo 3 >  data3/myid
3 啟動實例

打開三個終端,到zookeeper目錄下分別執行:

bin/zkServer.sh  start  ../conf/zoo1.cfg
bin/zkServer.sh  start  ../conf/zoo2.cfg
bin/zkServer.sh  start  ../conf/zoo3.cfg
4 使用zkCli.sh訪問集群

bin/zkCli.sh -server 127.0.0.1:2182,127.0.0.1:2183,127.0.0.1:2184
會出現如下信息:

[myid:] - INFO [...] - Session establishment
complete on server localhost/127.0.0.1:2182 ...

表面客戶端連接到了端口為2182的zookeeper服務器上。

使用ctrl+c停止并重新使用上述命令進行連接,如此往復幾次會發現連接的端口在2182,2183,2184來回改變。

參考:《ZooKeeper-分布式過程協同技術》

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女