Zookeeper環境搭建及簡單練習
之前簡單介紹了Zookeeper,接下來搭建一個Zookeeper的叢集環境
本叢集使用三個節點,網路環境及jdk安裝不再贅述,直接從環境搭建開始
環境搭建
接下來操作在hadoop使用者下進行
1. 解壓 tar -xzvf zookeeper-3.4.10.tar.gz
2. 由於伺服器上不需要其他東西,因此刪除掉.txt及.xml檔案和doc目錄
3. 進入安裝目錄下的conf目錄,複製zoo_sample.cfg並重新命名為zoo.cfg cp zoo_sample.cfg zoo.cfg
4. 修改zoo.cfg:
修改快照檔案目錄:
dataDir=/usr/local/zookeeper/data
新增日誌檔案目錄:
dataLogDir=/usr/local/zookeeper/log
server.1=node01:2888:3888 (主機名, 心跳埠、資料埠)
server.2=node02:2888:3888
server.3=node03:2888:3888
5. 在安裝目錄下建立data和log目錄
6. 在data目錄下建立myid檔案 touch myid,myid的內容為從1開始的數字,對應各節點的cfg配置
7. 切換到root使用者,建立軟連結 ln -s /home/hadoop/zookeeper-3.4.10 /usr/local/zookeeper
單節點配置完成,把配好的安裝目錄複製到其他節點 scp -r /home/hadoop/zookeeper-3.4.10 hadoop@node02:/home/hadoop
分別在對應的節點建立軟連結及修改myid,修改環境變數(root使用者)
vim /etc/profile
增加export ZOOKEEPER_HOME=/usr/local/zookeeper,在path中追加ZOOKEEPER_HOME指向Bin,並編譯
配置完成,分別啟動各節點的zookeeper
/usr/local/zookeeper/bin/zkServer.sh start
檢查狀態:/usr/local/zookeeper/bin/zkServer.sh status
其中有follower,有leader為啟動成功
簡單練習
zookeeper登入可以使用bin目錄下的zkCli.sh
執行./zkCli.sh
help命令可檢視zookeeper所提供的一些命令
建立節點: create /zktest 123即可在根目錄下建立zktest並在節點中存123資料
檢視節點資料: get /zktest
顯示的包括資料內容、版本號、建立時間等詳細資訊
建立監聽事件(監聽資料變化) get /zktest watch
在另外節點連線zookeeper,修改節點資料:set /zktest 3456
在本節點會看到監聽事件
可看到在最後出現監聽變化,但注意,監聽只一次有效,再次修改,這個監聽就無效了
建立子節點,可以在之前測試的zktest節點下繼續建立子節點,create /zktest/s1 111
順序子節點的建立為create -s /zktest/ss1 111
可以看到在後邊會自動追加若干個0並接1,繼續執行上述create操作,則繼續2,3...
建立臨時節點create -e /zktest/es1 111,臨時節點在建立節點的客戶端斷開連線時會自動刪除,可以通過監聽節點實現一些功能(ls監聽)
刪除節點:delete 節點路徑,但這樣不能刪除有子節點的節點,要刪除待子節點的節點,可用rmr命令
zookeeper還可對版本進行管理,set命令後可接版本號,如果版本號和當前版本號不一致,則資料不會更新,一致的話會更新資料並對版本號加一
zookeeper常用四字命令
四字命令在telnet 連線使用
conf檢視zookeeper執行時的配置資訊
cons 輸出當前伺服器上所有客戶端的連線資訊
在node01 l連線node02 zkCli.sh -server node02:2181,使用cons檢視:
stat 輸出Zookeeper執行時狀態資訊
srvr 與stat命令功能一致,但不會輸出客戶端的連線情況,僅輸出伺服器自身的資訊
wchs 輸出當前伺服器管理的Watcher的概要資訊
wchc 輸出當前伺服器管理的Watcher的詳細資訊
mntr 輸出比stat命令更詳盡的統計資訊
envi 輸出Zookeeper所在伺服器執行時的環境資訊
可以基於zookeeper的上述操作根據不同需求搭建適宜的系統,這些待以後研究,目前的zookeeper主要用於hadoop2.0的搭建及後續環境搭建
相關文章
- ZooKeeper 系列(二)—— Zookeeper單機環境和叢集環境搭建
- ZooKeeper環境搭建
- Angular環境搭建及簡單體驗Angular
- Zookeeper 叢集環境搭建
- Dapr-簡介及環境搭建
- Mesos+Zookeeper+Marathon+Docker環境搭建Docker
- MySQL NDB Cluster簡介及環境搭建MySql
- Windows單機配置Zookeeper環境Windows
- 搭建Hyperledger Fabric 2.3.2開發環境及簡單案例執行開發環境
- rust學習一、入門之搭建簡單開發環境Rust開發環境
- Docker環境搭建CUDA12.2 + Yolov5 7.0 GPU訓練環境(單卡訓練)DockerYOLOGPU
- Windows 10環境簡單搭建ELK叢集Windows
- angular中使用Echarts(環境搭建+簡單使用)AngularEcharts
- GoldenGate簡單複製環境的搭建Go
- Windows環境下ELK簡單搭建記錄Windows
- Flutter學習之路(一)Flutter簡介及Window下開發環境搭建Flutter開發環境
- aws 之 python 和 go 環境簡單搭建PythonGo
- MySQL InnoDB Cluster環境搭建和簡單測試MySql
- kafka環境安裝及簡單使用(單機版)Kafka
- 環境搭建及介紹
- 單機搭建ASM環境ASM
- Hadoop叢集之 ZooKeeper和Hbase環境搭建Hadoop
- jenkins簡單安裝及配置(Windows環境JenkinsWindows
- 超詳細,Windows系統搭建Flink官方練習環境Windows
- kubernetes實戰之consul簡單測試環境搭建及填坑
- 基於Debian搭建Hyperledger Fabric 2.4開發環境及執行簡單案例開發環境
- Dockfile搭建極簡LNMP環境LNMP
- Zookeeper原始碼分析(一) ----- 原始碼執行環境搭建原始碼
- Python要點及其環境搭建+Pycharm簡單使用教程PythonPyCharm
- monogdb windows環境下 安裝及使用簡單示例MonoWindows
- (一)Linux環境的學習環境的搭建Linux
- Windows搭建Superset環境學習Windows
- Linux學習環境搭建Linux
- 【美妙的Python之一】Python簡介及環境搭建Python
- griffin環境搭建及功能測試
- BugFree環境搭建及使用
- 簡易的開發環境搭建開發環境
- Hibernate(二):Hibernate搭建開發環境+簡單例項開發環境單例