欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

ZooKeeper安裝部署

0x01 簡(jiǎn)介

Zookeeper是一個(gè)很好的集群管理工具,被大量用于分布式計(jì)算。如Hadoop以及Storm系統(tǒng)中。
Apache ZooKeeper是一個(gè)為分布式應(yīng)用所設(shè)計(jì)開(kāi)源協(xié)調(diào)服務(wù),其設(shè)計(jì)目是為了減輕分布式應(yīng)用程序所承擔(dān)的協(xié)調(diào)任務(wù)??梢詾橛脩?hù)提供同步、配置管理、分組和命名服務(wù)。

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專(zhuān)注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、成都小程序開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶(hù)創(chuàng)新互聯(lián)還提供了沈陽(yáng)免費(fèi)建站歡迎大家使用!

0x02 環(huán)境說(shuō)明

在三臺(tái)裝有centos6.5(64位)服務(wù)器上安裝ZooKeeper,官網(wǎng)建議至少3個(gè)節(jié)點(diǎn),本次實(shí)驗(yàn)3臺(tái)
(主機(jī)數(shù):3(要求3+,且必須是奇數(shù),因?yàn)閆ooKeeper選舉算法))。
需要提前安裝jdk,選擇版本是jdk-8u111-linux-x64。

0x03 安裝配置過(guò)程

  1. 下載ZooKeeper,選擇穩(wěn)定版,即stable
    下載地址:http://apache.fayea.com/zookeeper/

  2. 解壓

    $ tar -zxvf zookeeper-3.4.6.tar.gz
    //將文件移動(dòng)到/usr/cloud/$ mv zookeeper-3.4.6 /usr/cloud/zookeeper
  3. 配置環(huán)境變量

    # vim /etc/profile//最后一行追加# set zookeeper environmentexport ZOOKEEPER_HOME=/usr/cloud/zookeeperexport PATH=$PATH:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf

    使環(huán)境變量立即生效
    $ source /etc/profile

  4. 集群部署
    在Zookeeper集群環(huán)境下只要一半以上的機(jī)器正常啟動(dòng)了,那么Zookeeper服務(wù)將是可用的。因此,集群上部署Zookeeper最好使用奇數(shù)臺(tái)機(jī)器,這樣如果有5臺(tái)機(jī)器,只要3臺(tái)正常工作則服務(wù)將正常使用。
    下面我們將對(duì)Zookeeper的配置文件zoo.cfg的參數(shù)進(jìn)行設(shè)置:

    $ cd /usr/cloud/zookeeper/conf$ cp zoo_sample.cfg zoo.cfg$ vim zoo.cfg

    參數(shù)可以參考下圖
    ZooKeeper安裝部署
    注意上圖的配置中master,slave1分別為主機(jī)名,具體的對(duì)應(yīng)的主機(jī)可參見(jiàn)之前的Hadoop的安裝與配置的博文。
    在上面的配置文件中server.id=host:port:port中的第一個(gè)port是從機(jī)器(follower)連接到主機(jī)器(leader)的端口號(hào),第二個(gè)port是進(jìn)行l(wèi)eadership選舉的端口號(hào)。
    接下來(lái)在dataDir所指定的目錄下創(chuàng)建一個(gè)文件名為myid的文件,文件中的內(nèi)容只有一行,為本主機(jī)對(duì)應(yīng)的id值,也就是上圖中server.id中的id。例如:在服務(wù)器1中的myid的內(nèi)容應(yīng)該寫(xiě)入1。
    參數(shù)說(shuō)明
    ①tickTime:心跳時(shí)間,毫秒為單位。
    ②initLimit:這個(gè)配置項(xiàng)是用來(lái)配置 Zookeeper 接受客戶(hù)端(這里客戶(hù)端不是用戶(hù)連接 Zookeeper服務(wù)器的客戶(hù)端,而是 Zookeeper 服務(wù)器集群中連接到 Leader 的 Follower 服務(wù)器)初始化連接時(shí)最長(zhǎng)能忍受多少個(gè)心跳時(shí)間間隔數(shù)。當(dāng)已經(jīng)超過(guò) 10 個(gè)心跳的時(shí)間(也就是 tickTime)長(zhǎng)度后 Zookeeper 服務(wù)器還沒(méi)有收到客戶(hù)端的返回信息,那么表明這個(gè)客戶(hù)端連接失敗??偟臅r(shí)間長(zhǎng)度就是 102000=20 秒。
    ③syncLimit:這個(gè)配置項(xiàng)標(biāo)識(shí) Leader 與 Follower 之間發(fā)送消息,請(qǐng)求和應(yīng)答時(shí)間長(zhǎng)度,最長(zhǎng)不能超過(guò)多少個(gè) tickTime時(shí)間長(zhǎng)度,總時(shí)間長(zhǎng)度就是 5*2000=10 秒。
    ④dataDir:存儲(chǔ)內(nèi)存中數(shù)據(jù)庫(kù)快照的位置。
    ⑤clientPort:監(jiān)聽(tīng)客戶(hù)端連接的端口
    ⑥server.A=B:C:D:其中 A 是一個(gè)數(shù)字,表示這個(gè)是第幾號(hào)服務(wù)器;B 是這個(gè)服務(wù)器的 ip 地址;C 表示的是這個(gè)服務(wù)器與集群中的 Leader 服務(wù)器交換信息的端口;D 表示的是萬(wàn)一集群中的 Leader 服務(wù)器掛了,需要一個(gè)端口來(lái)重新進(jìn)行選舉,選出一個(gè)新的 Leader,而這個(gè)端口就是用來(lái)執(zhí)行選舉時(shí)服務(wù)器相互通信的端口。如果是偽集群的配置方式,由于 B 都是一樣,所以不同的 Zookeeper 實(shí)例通信端口號(hào)不能一樣,所以要給它們分配不同的端口號(hào)。
    dataDir目錄下創(chuàng)建myid文件,將內(nèi)容設(shè)置為上⑥中A值,用來(lái)標(biāo)識(shí)不同的服務(wù)器。

  5. 將安裝文件復(fù)制到其它節(jié)點(diǎn)

    $ scp -r /home/hadoop/zookeeper hadoop@slave1:/home/hadoop/$ scp -r /home/hadoop/zookeeper hadoop@slave1:/home/hadoop/
  6. 修改對(duì)應(yīng)機(jī)器上的myid

    $ echo "1" > /home/hadoop/zookeeper/data/myid
    $ cat /home/hadoop/zookeeper/data/myid

0x04 啟動(dòng)ZooKeeper集群

在ZooKeeper集群的每個(gè)結(jié)點(diǎn)上,執(zhí)行啟動(dòng)ZooKeeper服務(wù)的腳本,如下所示:
各節(jié)點(diǎn)上啟動(dòng) (這里啟動(dòng)順序?yàn)閙aster > slave1 > slave2 )
啟動(dòng)順序:
Hadoop——>Zookeeper——>HBase
停止順序
HBase——>Zookeeper——>Hadoop

hadoop@master:/home/hadoop/zookeeper/bin/$ zkServer.sh start
hadoop@slave1:/home/hadoop/zookeeper/bin/$ zkServer.sh start
hadoop@slave2:/home/hadoop/zookeeper/bin/$ zkServer.sh start

ZooKeeper安裝部署
其中,QuorumPeerMain是zookeeper進(jìn)程,啟動(dòng)正常。
如上依次啟動(dòng)了所有機(jī)器上的Zookeeper之后可以通過(guò)ZooKeeper的腳本來(lái)查看啟動(dòng)狀態(tài),包括集群中各個(gè)結(jié)點(diǎn)的角色(或是Leader,或是Follower),如下所示,是在ZooKeeper集群中的每個(gè)結(jié)點(diǎn)上查詢(xún)的結(jié)果:
ZooKeeper安裝部署
ZooKeeper安裝部署
ZooKeeper安裝部署
通過(guò)上面狀態(tài)查詢(xún)結(jié)果可見(jiàn),slave1是集群的Leader,其余的兩個(gè)結(jié)點(diǎn)是Follower。
另外,可以通過(guò)客戶(hù)端腳本,連接到ZooKeeper集群上。對(duì)于客戶(hù)端來(lái)說(shuō),ZooKeeper是一個(gè)整體(ensemble),連接到ZooKeeper集群實(shí)際上感覺(jué)在獨(dú)享整個(gè)集群的服務(wù),所以,你可以在任何一個(gè)結(jié)點(diǎn)上建立到服務(wù)集群的連接。

0x05 停止ZooKeeper進(jìn)程

$ zkServer.sh stop
參考鏈接
http://blog.csdn.net/cruise_h/article/details/19046357
https://yq.aliyun.com/articles/36329

0x06 常見(jiàn)問(wèn)題

  1. Error contacting service. It is probably not running.
    網(wǎng)上看了下'Error contacting service. It is probably not running.'類(lèi)錯(cuò)誤不外乎3種答案:
    1,配置文件zoo.cfg中的datadir文件夾未創(chuàng)建導(dǎo)致
    2,防火墻未關(guān)閉,建議永久關(guān)閉防火墻-->chkconfig iptables of
    3,修改sh腳本里的一個(gè)nc的參數(shù)來(lái)解決,可在自己的版本中并沒(méi)有找到nc的調(diào)用。-->nc屬于老版本,新版本沒(méi)有了nc
    但是,我的都不是上述問(wèn)題,我的問(wèn)題是myid文件配置錯(cuò)誤。

    myid的文件,文件中的內(nèi)容只有一行,為本主機(jī)對(duì)應(yīng)的id值,也就是上圖中server.id中的id

分享名稱(chēng):ZooKeeper安裝部署
標(biāo)題URL:http://chinadenli.net/article32/giegpc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站服務(wù)器托管、微信小程序、小程序開(kāi)發(fā)、外貿(mào)網(wǎng)站建設(shè)動(dòng)態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化