天天看點

Linux環境下,zookeeper僞叢集模式搭建實戰

廢話不多說,上來就幹,Linux環境下,zk僞叢集模式搭建

打開事先安裝好的zk目錄下,這裡不在詳解zk單執行個體的安裝部署,可以參考

叢集配置流程:

進入到zk目錄下,進入conf,将zoo_sample.cfg複制并命名為zoo1.cfg(目的是為了不修改原始檔案)

cp zoo_sample.cfg zoo1.cfg

Linux環境下,zookeeper僞叢集模式搭建實戰

分别建立3個data目錄用于存儲各節點資料

mkdir data

mkdir data/1

mkdir data/3

mkdir data/3

Linux環境下,zookeeper僞叢集模式搭建實戰

編寫myid檔案

echo 1 > data/1/myid

echo 3 > data/3/myid

echo 2 > data/2/myid

建立完後,檢查下,確定正确,以免返工

ls datamyid

ls -R data

Linux環境下,zookeeper僞叢集模式搭建實戰

修改配置檔案,zoo1.cfg

vim zoo1.cfg 

修改資料存儲路徑

dataDir=data/1

修改端口

clientPort=12181

添加監聽端口

server.1=127.0.0.1:2887:3887

server.2=127.0.0.1:2888:3888

server.3=127.0.0.1:2889:3889

Linux環境下,zookeeper僞叢集模式搭建實戰

儲存,并複制zoo1.cfg,為zoo2.cfg,zoo3.cfg

cp zoo1.cfg zoo2.cfg

cp zoo1.cfg zoo3.cfg

Linux環境下,zookeeper僞叢集模式搭建實戰

修改zoo2.cfg的資料存儲目錄,和端口

vim zoo2.cfg

Linux環境下,zookeeper僞叢集模式搭建實戰

修改zoo3.cfg的資料存儲目錄,和端口

vim zoo3.cfg

Linux環境下,zookeeper僞叢集模式搭建實戰

好了,現在配置已經修改完畢,開始啟動,

cd ../

./bin/zkServer.sh start conf/zoo1.cfg 

./bin/zkServer.sh start conf/zoo2.cfg

./bin/zkServer.sh start conf/zoo3.cfg 

Linux環境下,zookeeper僞叢集模式搭建實戰

驗證是否部署成功,

進入12181的用戶端,添加一個節點

./bin/zkCli.sh -server localhost:12181

Linux環境下,zookeeper僞叢集模式搭建實戰

建立成功,去12182的用戶端看看,是否存在,并更新資料

Linux環境下,zookeeper僞叢集模式搭建實戰

成功,去12183的用戶端,檢查資料是否正常

Linux環境下,zookeeper僞叢集模式搭建實戰

資料沒問題,至此,linux環境下,zookeeper僞叢集模式部署完成,

以下就相關知識點進行解釋下

配置文法:

server.<節點ID>=<ip>:<資料同步端口>:<選舉端口>

  1. 節點ID:服務id手動指定1至125之間的數字,并寫到對應服務節點的 {dataDir}/myid 檔案中。
  1. IP位址:節點的遠端IP位址,可以相同。但生産環境就不能這麼做了,因為在同一台機器就無法達到容錯的目的。是以這種稱作為僞叢集。
  1. 資料同步端口:主從同時資料複制端口,(做僞叢集時端口号不能重複)。
  1. 遠舉端口:主從節點選舉端口,(做僞叢集時端口号不能重複)。

必須配置在所有節點的zoo.cfg檔案中,這是是zk的監聽端口

server.1=zoo1:2888:3888

server.2=zoo2:2888:3888

server.3=zoo3:2888:3888

Linux環境下,zookeeper僞叢集模式搭建實戰