Zookeeper分布式集群部署.md

## zookeeper分布式集群部署

**主機分配**

- 192.168.214.143

- 192.168.214.152

- 192.168.214.153

**各節(jié)點時間同步**

```

[root@Ansible ~]# ansible zk -m shell -a 'ntpdate gudaoyufu.com'

```

**關閉selinux**

```

[root@Ansible ~]# ansible zk -m shell -a "sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config"

[root@Ansible ~]# ansible zk -m shell -a "setenforce 0"

```

**關閉防火墻**

```

[root@Ansible ~]# ansible zk -m shell -a "systemctl disable firewalld"

[root@Ansible ~]# ansible zk -m shell -a "systemctl stop firewalld"

```

### 安裝JDK

**各節(jié)點上傳安裝包**

```

[root@Ansible ~]# ansible zk -m shell -a 'tar zxf jdk-8u181-linux-x64.tar.gz -C /usr/local/src'

```

```

[root@Ansible ~]# ansible zk -m shell -a 'ln -s /usr/local/src/jdk1.8.0_181 /usr/local/jdk'

```

```

[root@Ansible ~]# ansible zk -m copy -a 'src=/home/.bashrc dest=/root/.bashrc'

#ansible 遠程執(zhí)行指令的使用到的環(huán)境變量不在/etc/profile中每币,在.bashrc中要注意

```

- bashrc中配置java環(huán)境變量

```

# .bashrc

# User specific aliases and functions

alias rm='rm -i'

alias cp='cp -i'

alias mv='mv -i'

# Source global definitions

if [ -f /etc/bashrc ]; then

? ? ? ? . /etc/bashrc

fi

export JAVA_HOME=/usr/local/jdk

export JAVA_BIN=$JAVA_HOME/bin:$JAVA_HOME:/jre/bin

export JAVA_CLASS=$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

export PATH=$PATH:$JAVA_HOME:$JAVA_BIN:$JAVA_CLASS

```

- 測試java指令

```

[root@Ansible ~]# ansible zk -m shell -a 'java -version'

```

### 安裝zookeeper

- 各節(jié)點上傳安裝包

```

[root@Ansible ~]# ansible zk -m shell -a 'mkdir /data'

```

- 解壓

```

[root@Ansible ~]# ansible zk -m shell -a 'tar zxf zookeeper-3.4.12.tar.gz -C /data'

```

- 修改目錄名稱

```

[root@Ansible ~]# ansible zk -m shell -a 'mv /data/zookeeper-3.4.12 /data/zookeeper'

```

- 創(chuàng)建zoo.cfg配置文件

```

[root@Ansible ~]# ansible zk -m shell -a 'cp /data/zookeeper/conf/zoo_sample.cfg /data/zookeeper/conf/zoo.cfg'

```

- 將zookeeper配置文件復制一份到ansible進行修改配置內容如下:

```

tickTime=2000

initLimit=10

syncLimit=5

dataDir=/opt/zookeeper/datadir? ? ? #各節(jié)點創(chuàng)建相應目錄

dataLogDir=/opt/zookeeper/logdir

clientPort=2181

server.1 192.168.214.143:2888:3888? #各節(jié)點配置相同

server.2 192.168.214.152:2889:3889

server.3 192.168.214.153:2890:3890

```

- 復制配置文件到各節(jié)點

```

[root@Ansible ~]# ansible zk -m copy -a 'src=/home/zoo.cfg dest=/data/zookeeper/conf/'

```

- 創(chuàng)建各節(jié)點數據存放目錄

```

[root@Ansible ~]# ansible zk -m shell -a 'mkdir -pv /opt/zookeeper/{datadir,logdir}'

```

- 給個節(jié)點添加節(jié)點ID

```

[root@zookeeper1 ~]# echo 1 >? /opt/zookeeper/datadir/myid

[root@zookeeper2 ~]# echo 2 >? /opt/zookeeper/datadir/myid

[root@zookeeper3 ~]# echo 3 >? /opt/zookeeper/datadir/myid

```

```

[root@Ansible ~]# ansible zk -m shell -a "cat /opt/zookeeper/datadir/myid"

192.168.214.152 | SUCCESS | rc=0 >>

2

192.168.214.153 | SUCCESS | rc=0 >>

3

192.168.214.143 | SUCCESS | rc=0 >>

1

```

- 啟動集群

```

[root@Ansible ~]# ansible zk -m shell -a "/data/zookeeper/bin/zkServer.sh start"

```

```

[root@Ansible ~]# ansible zk -m shell -a "/data/zookeeper/bin/zkServer.sh status"

192.168.214.143 | SUCCESS | rc=0 >>

Mode: followerZooKeeper JMX enabled by default

Using config: /data/zookeeper/bin/../conf/zoo.cfg

192.168.214.152 | SUCCESS | rc=0 >>

Mode: followerZooKeeper JMX enabled by default

Using config: /data/zookeeper/bin/../conf/zoo.cfg

192.168.214.153 | SUCCESS | rc=0 >>

Mode: leaderZooKeeper JMX enabled by default

Using config: /data/zookeeper/bin/../conf/zoo.cfg

#第一行Mode后面就是節(jié)點的角色

```

### 測試同步

- 在leader節(jié)點創(chuàng)建一個數據節(jié)點test2,到follower節(jié)點查看

```

[zk: localhost:2181(CONNECTED) 1] create /test2 'test2 node'

Created /test2

#follower節(jié)點查看

[zk: localhost:2181(CONNECTED) 5] get /test2

test2 node

cZxid = 0x100000004

ctime = Sun Sep 02 14:38:22 CST 2018

mZxid = 0x100000004

mtime = Sun Sep 02 14:38:22 CST 2018

pZxid = 0x100000004

cversion = 0

dataVersion = 0

aclVersion = 0

ephemeralOwner = 0x0

dataLength = 10

numChildren = 0

```

- 測試故障leader轉移

```

[root@Ansible ~]# ansible zk -m shell -a "/data/zookeeper/bin/zkServer.sh status"

192.168.214.152 | SUCCESS | rc=0 >>

Mode: followerZooKeeper JMX enabled by default

Using config: /data/zookeeper/bin/../conf/zoo.cfg

192.168.214.153 | SUCCESS | rc=0 >>

Mode: leaderZooKeeper JMX enabled by default

Using config: /data/zookeeper/bin/../conf/zoo.cfg

192.168.214.143 | FAILED | rc=1 >>

Error contacting service. It is probably not running.ZooKeeper JMX enabled by default

Using config: /data/zookeeper/bin/../conf/zoo.cfgnon-zero return code

```

可以看到原來的leader節(jié)點掛了以后另一153節(jié)點獲得leader身份

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末红且,一起剝皮案震驚了整個濱河市姆坚,隨后出現的幾起案子箱季,更是在濱河造成了極大的恐慌裸删,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,265評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件泉褐,死亡現場離奇詭異赐写,居然都是意外死亡,警方通過查閱死者的電腦和手機膜赃,發(fā)現死者居然都...
    沈念sama閱讀 90,078評論 2 385
  • 文/潘曉璐 我一進店門挺邀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人跳座,你說我怎么就攤上這事端铛。” “怎么了疲眷?”我有些...
    開封第一講書人閱讀 156,852評論 0 347
  • 文/不壞的土叔 我叫張陵禾蚕,是天一觀的道長。 經常有香客問我狂丝,道長换淆,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,408評論 1 283
  • 正文 為了忘掉前任几颜,我火速辦了婚禮倍试,結果婚禮上,老公的妹妹穿的比我還像新娘蛋哭。我一直安慰自己县习,他們只是感情好,可當我...
    茶點故事閱讀 65,445評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著躁愿,像睡著了一般叛本。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上彤钟,一...
    開封第一講書人閱讀 49,772評論 1 290
  • 那天来候,我揣著相機與錄音软能,去河邊找鬼心俗。 笑死,一個胖子當著我的面吹牛母谎,可吹牛的內容都是我干的峡眶。 我是一名探鬼主播剧防,決...
    沈念sama閱讀 38,921評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼辫樱!你這毒婦竟也來了峭拘?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,688評論 0 266
  • 序言:老撾萬榮一對情侶失蹤狮暑,失蹤者是張志新(化名)和其女友劉穎鸡挠,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體搬男,經...
    沈念sama閱讀 44,130評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡拣展,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,467評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了缔逛。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片备埃。...
    茶點故事閱讀 38,617評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖褐奴,靈堂內的尸體忽然破棺而出按脚,到底是詐尸還是另有隱情,我是刑警寧澤敦冬,帶...
    沈念sama閱讀 34,276評論 4 329
  • 正文 年R本政府宣布辅搬,位于F島的核電站,受9級特大地震影響脖旱,放射性物質發(fā)生泄漏堪遂。R本人自食惡果不足惜萌庆,卻給世界環(huán)境...
    茶點故事閱讀 39,882評論 3 312
  • 文/蒙蒙 一溶褪、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧踊兜,春花似錦、人聲如沸佳恬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,740評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至垫言,卻和暖如春贰剥,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背筷频。 一陣腳步聲響...
    開封第一講書人閱讀 31,967評論 1 265
  • 我被黑心中介騙來泰國打工蚌成, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人凛捏。 一個月前我還...
    沈念sama閱讀 46,315評論 2 360
  • 正文 我出身青樓担忧,卻偏偏與公主長得像,于是被迫代替她去往敵國和親坯癣。 傳聞我的和親對象是個殘疾皇子瓶盛,可洞房花燭夜當晚...
    茶點故事閱讀 43,486評論 2 348

推薦閱讀更多精彩內容