Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式-創(chuàng)新互聯(lián)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

學(xué)習(xí) mycat mysql

十余年專(zhuān)注成都網(wǎng)站制作,企業(yè)網(wǎng)站制作,個(gè)人網(wǎng)站制作服務(wù),為大家分享網(wǎng)站制作知識(shí)、方案,網(wǎng)站設(shè)計(jì)流程、步驟,成功服務(wù)上千家企業(yè)。為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁(yè)設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù),專(zhuān)注于企業(yè)網(wǎng)站制作,高端網(wǎng)頁(yè)制作,對(duì)成都主動(dòng)防護(hù)網(wǎng)等多個(gè)領(lǐng)域,擁有多年的網(wǎng)站推廣經(jīng)驗(yàn)。
  • Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式
  • 1. ZooKeeper簡(jiǎn)介

  • 2. ZooKeeper角色和端口

  • 3. ZooKeeper部署簡(jiǎn)介

  • 4. ZooKeeper部署管理Mycat

    • 4.3.1 下載解壓

    • 4.3.2 修改配置文件

    • 4.3.3 添加myid文件

    • 4.3.4 同步zookeeper目錄到其它2個(gè)節(jié)點(diǎn),修改myid

    • 4.3.5 啟動(dòng)zookeeper

    • 4.1 環(huán)境

    • 4.2 環(huán)境準(zhǔn)備

    • 4.3 安裝zookeeper

    • 4.4 安裝Mycat

    • 4.6 執(zhí)行mycat初始化數(shù)據(jù)

    • 4.7 配置mycat支持zookeeper

    • 4.8 用zookeeper配置mycat

1. ZooKeeper簡(jiǎn)介

ZooKeeper 是一個(gè)面向分布式系統(tǒng)的構(gòu)建塊。當(dāng)設(shè)計(jì)一個(gè)分布式系統(tǒng)時(shí),一般需要設(shè)計(jì)和開(kāi)發(fā)一些協(xié)調(diào)服務(wù):
名稱(chēng)服務(wù)— 名稱(chēng)服務(wù)是將一個(gè)名稱(chēng)映射到與該名稱(chēng)有關(guān)聯(lián)的一些信息的服務(wù)。電話(huà)目錄是將人的名字映射到其電話(huà)號(hào)碼的一個(gè)名稱(chēng)服務(wù)。同樣,DNS 服務(wù)也是一個(gè)名稱(chēng)服務(wù),它將一個(gè)域名映射到一個(gè) IP 地址。在分布式系統(tǒng)中,您可能想跟蹤哪些服務(wù)器或服務(wù)在運(yùn)行,并通過(guò)名稱(chēng)查看其狀態(tài)。ZooKeeper 暴露了一個(gè)簡(jiǎn)單的接口來(lái)完成此工作。也可以將名稱(chēng)服務(wù)擴(kuò)展到組成員服務(wù),這樣就可以獲得與正在查找其名稱(chēng)的實(shí)體有關(guān)聯(lián)的組的信息。
鎖定— 為了允許在分布式系統(tǒng)中對(duì)共享資源進(jìn)行有序的訪(fǎng)問(wèn),可能需要實(shí)現(xiàn)分布式互斥(distributed mutexes)。ZooKeeper 提供一種簡(jiǎn)單的方式來(lái)實(shí)現(xiàn)它們。
同步— 與互斥同時(shí)出現(xiàn)的是同步訪(fǎng)問(wèn)共享資源的需求。無(wú)論是實(shí)現(xiàn)一個(gè)生產(chǎn)者-消費(fèi)者隊(duì)列,還是實(shí)現(xiàn)一個(gè)障礙,ZooKeeper 都提供一個(gè)簡(jiǎn)單的接口來(lái)實(shí)現(xiàn)該操作。
配置管理— 您可以使用 ZooKeeper 集中存儲(chǔ)和管理分布式系統(tǒng)的配置。這意味著,所有新加入的節(jié)點(diǎn)都將在加入系統(tǒng)后就可以立即使用來(lái)自 ZooKeeper 的最新集中式配置。這還允許您通過(guò)其中一個(gè) ZooKeeper 客戶(hù)端更改集中式配置,集中地更改分布式系統(tǒng)的狀態(tài)。
領(lǐng)導(dǎo)者選舉— 分布式系統(tǒng)可能必須處理節(jié)點(diǎn)停機(jī)的問(wèn)題,您可能想實(shí)現(xiàn)一個(gè)自動(dòng)故障轉(zhuǎn)移策略。ZooKeeper 通過(guò)領(lǐng)導(dǎo)者選舉對(duì)此提供現(xiàn)成的支持。

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

2. ZooKeeper角色和端口

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

3. ZooKeeper部署簡(jiǎn)介

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

4. ZooKeeper部署管理Mycat

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

4.1 環(huán)境

系統(tǒng):CentOS7.3
jdk版本:1.7
zookeeper版本:3.4.10
mycat版本:1.6

hostnameIPmyid
testA192.168.33.111
testB192.168.33.122
testC192.168.33.133

4.2 環(huán)境準(zhǔn)備

為了測(cè)試方便,這里關(guān)閉系統(tǒng)防火墻和禁用selinux,生產(chǎn)環(huán)境防火墻則需要開(kāi)放zookeeper相關(guān)端口,2181、2888、3888。

# 關(guān)閉防火墻 systemctl stop firewalld.service systemctl disable firewalld.service # 關(guān)閉SELINUX sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux setenforce 0

4.3 安裝zookeeper

先在testA節(jié)點(diǎn)安裝,再同步到其它2個(gè)節(jié)點(diǎn)。

4.3.1 下載解壓
mkdir -p /data/packages/ cd /data/packages/ wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz cd /usr/local/ tar -zxvf /data/packages/zookeeper-3.4.10.tar.gz ln -s zookeeper-3.4.10 zookeeper cd zookeeper mkdir data log cd conf/ cp zoo_sample.cfg zoo.cfg
4.3.2 修改配置文件

vim zoo.cfg

# The number of milliseconds of each tick tickTime=2000 # The number of ticks that the initial  # synchronization phase can take initLimit=10 # The number of ticks that can pass between  # sending a request and getting an acknowledgement syncLimit=5 # the directory where the snapshot is stored. # do not use /tmp for storage, /tmp here is just  # example sakes. dataDir=/usr/local/zookeeper/data dataLogDir=/usr/local/zookeeper/log # the port at which the clients will connect clientPort=2181 server.1=192.168.33.11:2888:3888 server.2=192.168.33.12:2888:3888 server.3=192.168.33.13:2888:3888 # the maximum number of client connections. # increase this if you need to handle more clients #maxClientCnxns=60 # # Be sure to read the maintenance section of the  # administrator guide before turning on autopurge. # # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance # # The number of snapshots to retain in dataDir #autopurge.snapRetainCount=3 # Purge task interval in hours # Set to "0" to disable auto purge feature #autopurge.purgeInterval=1
4.3.3 添加myid文件

vim /usr/local/zookeeper/data/myid寫(xiě)入 1

4.3.4 同步zookeeper目錄到其它2個(gè)節(jié)點(diǎn),修改myid
rsync -avzP /usr/local/zookeeper/ root@192.168.33.12:/usr/local/zookeeper/ rsync -avzP /usr/local/zookeeper/ root@192.168.33.13:/usr/local/zookeeper/

并在2個(gè)節(jié)點(diǎn)分別修改對(duì)應(yīng)的myid

4.3.5 啟動(dòng)zookeeper
cd /usr/local/zookeeper/bin/ ./zkServer.sh start

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

4.4 安裝Mycat

同樣,3個(gè)節(jié)點(diǎn)都需要安裝mycat。

cd /data/packages/ wget http://dl.mycat.io/1.6-RELEASE/Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz cd /usr/local/ tar -zxvf /data/packages/Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz

4.6 執(zhí)行mycat初始化數(shù)據(jù)

3個(gè)節(jié)點(diǎn)Mycat都執(zhí)行如下腳本

sh /usr/local/mycat/bin/init_zk_data.sh

4.7 配置mycat支持zookeeper

vim /usr/local/mycat/conf/myid.properties

loadZk=true # zk集群地址,多個(gè)用","隔開(kāi) zkURL=127.0.0.1:2181 # zk集群內(nèi)Mycat集群ID clusterId=mycat-cluster-1 # Mycat集群內(nèi)本實(shí)例ID,禁止重復(fù) myid=mycat_fz_01 # Mycat集群內(nèi)節(jié)點(diǎn)個(gè)數(shù) clusterSize=3 clusterNodes=mycat_fz_01,mycat_fz_02,mycat_fz_03 #server  booster  ;   booster install on db same server,will reset all minCon to 1 type=server boosterDataHosts=dataHost1

4.8 用zookeeper配置mycat

使用ZooInspector工具管理ZooKeeper,以下是連接zookeeper方法。

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

連接成功后,可看到mycat集群的配置

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

修改相應(yīng)配置

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

啟動(dòng)mycat后,mycat配置文件會(huì)自動(dòng)更新。

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式

注意事項(xiàng):

  • loadZk必須改為true才生效

  • zkURL的地址是多個(gè)中間用“,”隔開(kāi)

  • clusterId,同一個(gè)zk內(nèi)的集群ID必須唯一

  • Myid:本實(shí)例的id在當(dāng)前的mycat集群內(nèi)ID唯一

  • 配置完zk并啟動(dòng)mycat后,會(huì)更新本地conf下的相關(guān)配置文件。

參考資料:
[1] http://mycat.io/
[2] 《分布式數(shù)據(jù)庫(kù)架構(gòu)及企業(yè)實(shí)踐——基于Mycat中間件》
[3] 龍哥官方課程課件
[4] http://zookeeper.apache.org/
[5] https://www.ibm.com/developerworks/cn/data/library/bd-zookeeper/

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

本文題目:Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat的zookeeper集群模式-創(chuàng)新互聯(lián)
本文鏈接:http://muchs.cn/article20/dgicco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作微信小程序、App開(kāi)發(fā)網(wǎng)站排名、自適應(yīng)網(wǎng)站云服務(wù)器

廣告

聲明:本網(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)

商城網(wǎng)站建設(shè)