dataDir=/usr/local/zookeeperall/zookeeper03/data zookeeper/conf/zoo.cfg
clientPort=2183? ? zookeeper/conf/zoo.cfg
server.1=192.168.13.71:2881:3881
server.2=192.168.13.71:2882:3882
server.3=192.168.13.71:2883:3883
chmod +x stopall.sh? ?添加權(quán)限
三高:高并發(fā)贪庙,高可用饱溢,高性能
一:zookeeper是什么: zookeeper 就是動物園管理員怀挠,他是用來管 hadoop(大象)泼返、Hive(蜜蜂)浇垦、spark(螢火蟲)茸时、filnk(松鼠)罗丰、pig(小 豬)的管理員聪黎,大數(shù)據(jù)中。 Apache Hbase 和 Apache Solr 的分布式集群都用到了 zookeeper
是一個分布式的忘渔、開源的程序協(xié)調(diào)服務(wù)高帖,是 hadoop 項目下的一個子項目。他提供的主要功 能包括:配置管理畦粮、名字服務(wù)散址、分布式鎖、集群管理宣赔。
? ??配置管理:集中管理配置文件(solr集群)?
? ??集群管理:管理集群中的節(jié)點
二:zookeeper 的存儲結(jié)構(gòu):znode:樹形結(jié)構(gòu)進行存儲预麸,其上的每個節(jié)點,我們稱為“znode”
三:zookeeper的安裝:1儒将,安裝Linux 吏祸。2,安裝jdk钩蚊。3贡翘,上傳zookeeper。4砰逻,解壓zookeeper解壓命令:tar -zxf? zookeeper-3.4.6.tar.gz
解壓后的zookeeper的目錄結(jié)構(gòu):
5鸣驱,將解壓后的文件拷貝到usr/local/下:cp zookeeper-4.4.6 /usr/local/zookeeper -r
6,配置文件信息在zookeeper下的conf中添加zoo.cfg 這里直接復(fù)制重命名模板的 cp zoo_sample.cfg? zoo.cfg? -------vim zoo.cfg? 修改正確地址 修改正確端口號
dataDir=/usr/local/zookeeperall/zookeeper03/data zookeeper/conf/zoo.cfg
clientPort=2183?
默認(rèn)加載配置文件:./zkServer.sh start:默認(rèn)的會去 conf 目錄下加載 zoo.cfg 配置文件诱渤。
指定加載配置文件:./zkServer.sh start 配置文件的路徑丐巫。
7,啟動zookeeper:在zookeeper/bin下 :./zkServer.sh start
8勺美,停止zookeeper:?在zookeeper/bin下 :./zkServer.sh stop
Zookeeper 集群中的角色
1.最終一致性:client 不論連接到哪個 Server递胧,展示給它都是同一個視圖,這是 zookeeper 最重要的性能赡茸。?
2 .可靠性:具有簡單缎脾、健壯、良好的性能占卧,如果消息 m 被到一臺服務(wù)器接受遗菠,那么它 將被所有的服務(wù)器接受。?
3 .實時性:Zookeeper 保證客戶端將在一個時間間隔范圍內(nèi)獲得服務(wù)器的更新信息华蜒,或 者服務(wù)器失效的信息辙纬。但由于網(wǎng)絡(luò)延時等原因,Zookeeper 不能保證兩個客戶端能同時得到 剛更新的數(shù)據(jù)叭喜,如果需要最新數(shù)據(jù)贺拣,應(yīng)該在讀數(shù)據(jù)之前調(diào)用 sync()接口。?
4 .等待無關(guān)(wait-free):慢的或者失效的 client 不得干預(yù)快速的 client 的請求,使得每 個 client 都能有效的等待譬涡。?
5.原子性:更新只能成功或者失敗闪幽,沒有中間狀態(tài)。?
6 .順序性:包括全局有序和偏序兩種:全局有序是指如果在一臺服務(wù)器上消息 a 在消息 b 前發(fā)布涡匀,則在所有 Server 上消息 a 都將在消息 b 前被發(fā)布盯腌;偏序是指如果一個消息 b 在消 息 a 后被同一個發(fā)送者發(fā)布,a 必將排在 b 前面陨瘩。