萌新篇 —從零開始搭建自己的大資料環境
文章目錄
- 前言
- 一、zookeeper簡介
- 二、分布式集群配置及引數介紹
- 1.下載地址
- 2.解壓
- 3.關于zoo.cfg檔案引數講解
- 4.配置zoo.cfg
- 5.啟動服務
- 6.基本命令
- 總結
前言
我事先創建好了opt檔案,該檔案里包含data,modules,software,tools,一般我把安裝包存放在sofeware解壓生成在modules,可以按照我這個方式去做,后期以便檔案好找,java環境自行先安裝建議使用1.8版本的,這里我就不示范了,程序使用的軟體Notepad++(在這里修改組態檔比較方便)MobaXterm_Personal_20.2(遠程登錄linux)FlashFPX(把檔案發送到linux上),
一、zookeeper簡介
ZooKeeper是以Fast Paxos演算法為基礎的,Paxos 演算法存在活鎖的問題,即當有多個proposer交錯提交時,有可能互相排斥導致沒有一個proposer能提交成功,而Fast Paxos做了一些優化,通過選舉產生一個leader (領導者),只有leader才能提交proposer,那么Zookeeper能做什么事情呢,簡單的例子:假設我們有20個搜索引擎的服務器(每個負責總索引中的一部分的搜索任務)和一個總服務器(負責向這20個搜索引擎的服務器發出搜索請求并合并結果集),一個備用的總服務器(負責當總服務器宕機時替換總服務器),一個web的cgi(向總服務器發出搜索請求),搜索引擎的服務器中的15個服務器提供搜索服務,5個服務器正在生成索引,這20個搜索引擎的服務器經常要讓正在提供搜索服務的服務器停止提供服務開始生成索引,或生成索引的服務器已經把索引生成完成可以提供搜索服務了,使用Zookeeper可以保證總服務器自動感知有多少提供搜索引擎的服務器并向這些服務器發出搜索請求,當總服務器宕機時自動啟用備用的總服務器,
ZooKeeper的基本運轉流程:
1、選舉Leader,
2、同步資料,
3、選舉Leader程序中演算法有很多,但要達到的選舉標準是一致的,
4、Leader要具有最高的執行ID,類似root權限,
5、集群中大多數的機器得到回應并接受選出的Leader,
Zookeeper 的存盤結構

二、分布式集群配置及引數介紹
1.下載地址
https://archive.apache.org/dist/zookeeper/
2.解壓
chmod u+x zookeeper-3.4.5.tar.gz 給壓縮包權限
tar -zxf zookeeper-3.4.5.tar.gz -C /opt/modules/ 解壓
3.關于zoo.cfg檔案引數講解

1、tickTime:這個時間是作為Zookeeper服務器之間或客戶端與服務器之間維持心跳的時間間隔,也就是每個tickTime時間就會發送一個心跳,
2、initLimit:這個配置項是用來配置Zookeeper接受客戶端(這里所說的客戶端不是用戶連接Zookeeper 服務器的客戶端,而是Zookeeper服務器集群中連接到Leader 的Follower服務器)初始化連接時最長能忍受多少個心跳時間間隔數,當已經超過10個心跳的時間(也就是tickTime)長度后Zookeeper服務器還沒有收到客戶端的回傳資訊,那么表明這個客戶端連接失敗,總的時間長度就是5*2000=10秒,
3、dataDir:顧名思義就是Zookeeper保存資料的目錄,默認情況下,Zookeeper將寫資料的日志檔案也保存在這個目錄里,
4、clientPort:這個埠就是客戶端連接Zookeeper服務器的埠,Zookeeper會監聽這個埠,接受客戶端的訪問請求,

4.配置zoo.cfg
進入解壓后zookeeper檔案,創建一個zkData(檔案名可以自擬)檔案,進入zkData檔案mkdir -p zkData 第一步
cd zkData 第二步
pwd 第三步
pwd命令后獲取路徑復制,然后粘貼在zoo.cfg中dataDir后面

以上為單個虛擬機上的配置,若多臺虛擬機還要繼續配置如下:
繼續在zoo.cfg加入:
server.1=panda-pro01.xiong.com:2888:3888
server.2=panda-pro02.xiong.com:2888:3888
server.3=panda-pro03.xiong.com:2888:3888
然后在zkData目錄下創建一個檔案,填寫內容為1:
touch myid
vi myid
完成一臺機器配置要分發給其他機器:
scp -r zookeeper-3.4.5/ xiong@10.34.102.252:/opt/modules/ 有幾臺機器發送幾臺
分發完后,注意要修改myid檔案里的內容,第幾臺機器就填入幾,比如:第二臺機器填入2,第三臺機器填入3,以此類推,
5.啟動服務
進入解壓好的zookeeper檔案
單臺機器啟動
bin/zkServer.sh start
bin/zkCli.sh
多臺機器啟動
bin/zkServer.sh start 第一臺命令
bin/zkCli.sh 第一臺命令
bin/zkServer.sh start 第二臺,第三臺,,,,
啟動一臺機器,后啟動bin/zkCli.sh會發現鏈接不上,這是必須啟動第二臺機器后才鏈接成功,
6.基本命令
這里我就不一一示范命令了,找了好久感覺下面這位博主寫的比較詳細,可以去康康:
zkCli命令,點擊
總結
關于zookeeper基本配置就到這里了,萌新一位,若有不足之處,還請指正,😎😎
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/272853.html
標籤:其他
上一篇:關于IDEA創建JavaEE沒有Web Application選項解決方案&Tomcat配置部署
下一篇:SVM演算法實作光學字符識別
