标签:最大 tree war 实现 失败 接受 let home 硬件
CAP:
BASE:
保证分布式系统的一致性多种协议:
HDFS/HBase, Zookeeper:
三种部署方式:单机模式、伪分布式模式、分布式模式
安装jdk
# yum install java-1.7.0-openjdk-devel -y
# vim /etc/profile.d/java.sh
export JAVA_HOME=/usr
# . /etc/profile.d/java.sh
# java -version
~]# wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz
~]# mkdir /data/zookeeper/ -pv
~]# tar xf zookeeper-3.4.9.tar.gz -C /usr/local/
~]# cd /usr/local/
local]# ln -sv zookeeper-3.4.9 zookeeper
local]# cd zookeeper/conf/
conf]# cp zoo_sample.cfg zoo.cfg
conf]# vim zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper
clientPort=2181
#maxClientCnxns=60
server.1=192.168.0.17:2888:3888
#autopurge.snapRetainCount=3
#autopurge.purgeInterval=1
conf]# cd ../bin/
bin]# ./zkServer.sh start
~]# telnet localhost 2181
ruok
stat
srvr
conf
cons
wchs
envi
...
~]# cd /usr/local/zookeeper/bin/
bin]# ./zkCli.sh
create
ls
ls2
stat
delete
rmr
get
set
...
基本配置参数:
clinetPort=2181
dataDir=/data/zookeeper
dataLogDir:事务日志文件路径;
tickTime
存储配置参数:
preAllocSize:为事务日志预先分配的磁盘空间量,默认65535KB
snapCount:每多少次事务后执行一次快照操作,每事务的平均大小在100字节左右
autopurge.snpRetainCount:保留自动快照数
autopurge.purgeInterval:自动purge操作的时间间隔,0表示不启动
fsync.warningthiresholdms:zk进行事务日志的fsync操作时消耗的时长报警阈值
weight.X=N:判断quorum时投票权重,默认为1
网络配置参数:
maxClientCnxns:每客户端IP的最大并发连接数
clientPortAddress:zk监听的IP地址
minSessionTimeout:会话的最短超时时长
maxSessionTimeout:会话的最大超时时长
集群配置参数:
initLimit:Follower连入Leader并完成数据同步的时长
syncLimit:心跳检测的最大延迟
leaderServers:默认zk的leader接受读写请求,额外还要负责协调各Follower发来的事务等,因此,为使得Leader集中处理zk集群内部信息,建议不让Leader直接提供服务
cnxTimeout:Leader选举期间,各服务器创建TCP连接的超时时长
ellectionAlg:选举算法,目前仅支持FastLeaderElection算法一种
server.id=[hostname]:port:port[:observer]:集群内各服务器的属性参数
第一个port:follwer与leader进行通信和数据同步时所使用的端口
第二个port:leader选举时使用的端口
observer:定义指定的服务器为observer
###############node01:###############
~]# echo 1 > /data/zookeeper/myid
~]# vim /usr/local/zookeeper/conf/zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper
clientPort=2181
server.1=192.168.0.17:2888:3888
server.2=192.168.0.18:2888:3888
server.3=192.168.0.19:2888:3888
~]# /usr/local/zookeeper/bin/zkServer.sh start
###############node02:###############
~]# echo 2 > /data/zookeeper/myid
~]# vim /usr/local/zookeeper/conf/zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper
clientPort=2181
server.1=192.168.0.17:2888:3888
server.2=192.168.0.18:2888:3888
server.3=192.168.0.19:2888:3888
~]# /usr/local/zookeeper/bin/zkServer.sh start
###############node03:###############
~]# echo 3 > /data/zookeeper/myid
~]# vim /usr/local/zookeeper/conf/zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper
clientPort=2181
server.1=192.168.0.17:2888:3888
server.2=192.168.0.18:2888:3888
server.3=192.168.0.19:2888:3888
~]# /usr/local/zookeeper/bin/zkServer.sh start
注意:运行为集群模式时,每个节点在其数据目录中应该有一个myid文件,其内容仅为server的id
标签:最大 tree war 实现 失败 接受 let home 硬件
原文地址:https://www.cnblogs.com/L-dongf/p/10264832.html