设为首页 收藏本站
查看: 1045|回复: 0

[经验分享] zookeeper系列(一)安装

[复制链接]

尚未签到

发表于 2015-9-7 07:26:13 | 显示全部楼层 |阅读模式
  zookeeper是一个分布式应用协调服务,主要用来解决分布式应用配置项的管理、同步服务、集群管理等,它由Java语言编写,但它支持Java和C两种编程语言接口;
  
  环境部署
  操作系统:centos 6.4
  JDK版本:1.7.0_60
  
  单机模式
  1、安装包下载地址:http://www.apache.org/dyn/closer.cgi/zookeeper/
  2、安装包下载完后,解压到根目录下的cloud(该目录自己创建)目录中;
  3、cp /cloud/zookeeper-3.4.5/conf/zoo_sample.cfg ./zoo.cfg
  4、修改配置文件(zoo.cfg)
      将dataDir的字段值修改为/cloud/zookeeper-3.4.5/tmp,即:dataDir=/cloud/zookeeper-3.4.5/tmp
      说明:tmp目录需要根据路径地址手动创建,dataDir字段的值用于指定存储内存中数据快照的位置;
      在配置文件中最后添加一行配置:server.1=chenx:2888:3888
      说明:chenx为主机名,需要在/etc/hosts配置IP与主机名的映射,当然也可以直接用IP地址,2888为从机器连接到主机器的端口,3888为进行leader选举的端口;
  5、/cloud/zookeeper-3.4.5/tmp目录下创建一个myid文件,里面内容是server.N中的N(如:server.1里面内容为1)
      echo "1" > myid
  6、启动zookeeper,在命令行中运行 /cloud/zookeeper-3.4.5/bin/zkServer.sh start ,运行jps查看到QuorumPeerMain进程表示成功;
  
  
  伪分布式
  同一台机器上启动多个zookpeer服务,与单机模式的部署大部分相同,不同点如下:
  1、配置多份zoo.cfg文件(文件名任意),如:zoo1.cfg、zoo2.cfg等;
  2、 每份配置文件中clientPort、dataDir值不要一样也不要冲突;
  3、启动多少个zookeeper服务,就需重复多少次单机模式配置中的第四步,且连接端口和选举端口不要相同;
  配置图1:
   DSC0000.png
  配置图2:
   DSC0001.png   
  
  集群模式
  与伪分布式差不多,唯一的区别在于zookeeper的安装程序,需要在集群中的各个节点上重复上述配置过程;
  
  配置参数(zoo.cfg)整理说明      
1、initLimit:Zookeeper接受客户端初始化连接时最长能忍受多少个心跳时间间隔;      
2、syncLimit:标识Leader与Follower之间发送消息,请求和应答时间长度,最长不能超过多少个tickTime的时间长度;      
3、tickTime:维持Zookeeper服务之间或客户端与服务器之间心跳的时间间隔;(以毫秒为单位)      
4、dataDir:Zookeeper保存内存数据快照的目录,默认情况下,Zookeeper将写数据的日志文件也保存在该目录;      
5、clientPort:客户端连接Zookeeper服务端端口,Zookeeper会监听该端口,并接受客户端的访问请求;      
6、查看Zookeeper是否在服务:echo ruok | nc localhost 2181

  
  zookeeper高可用      
Zookeeper通过复制来实现高可用性,只要集合体中半 数以上的机器处于可用状态,它就能够保证服务继续。之所以要超过半数与Zookeeper的赋值策略有关,Zookeeper确保对znode树的每一个修改都会被复制到集合体中超过半数的机器上。而在Zookeeper部署中通常采用2n+1的方式,可容纳n台机器挂掉;

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-110281-1-1.html 上篇帖子: zookeeper系列之一—zookeeper入门 下篇帖子: ZooKeeper源码分析:Quorum请求的整个流程(转)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表