mac机器zookeeper安装及单机、集群搭建演示 您所在的位置:网站首页 zookeeper集群方式 mac机器zookeeper安装及单机、集群搭建演示

mac机器zookeeper安装及单机、集群搭建演示

#mac机器zookeeper安装及单机、集群搭建演示| 来源: 网络整理| 查看: 265

1.什么是zookeeper? Zookeeper是一个分布式服务协调框架,一个高性能的分布式数据一致性解决方案,一般用于实现配置管理、名字服务、分布式锁、集群管理功能。 2.zookeeper安装包下载 http://mirror.bit.edu.cn/apache/zookeeper/ 官网建议选择stable目录下的安装包mac机器zookeeper安装及单机、集群搭建演示注意上面有两个安装包,bin是官方提供已经编译的版本,非bin的为官网源码,需要下载后自己进行编译。如果只是应用的话,建议下载bin编译后二进制安装包。 3.准备工作 检查是否安装JDK环境,官方要求需要jdk1.7或1.7版本以上

mac机器zookeeper安装及单机、集群搭建演示命令行分别执行java、java -version命令,看是否有输出,如果有输出证明安装成功

4.安装 解压缩apache-zookeeper-3.5.7-bin.tar.gz安装包,移动到对应的文件目录mac机器zookeeper安装及单机、集群搭建演示 Pache-zookeeper-3.5.7-bin文件名带有版本号且长度很长,创建目录软连接zookeeper,方便后续版本变更不用修改对应环境变量,易于操作:mac机器zookeeper安装及单机、集群搭建演示 Linux ln创建软连接命令: ln -s 源目录 目标文件 软链接的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置mac机器zookeeper安装及单机、集群搭建演示 创建环境变量: Vim ~/.bash_profile 添加:export PATH=$PATH:zookeeper安装目录/bin Source ~/.bash_proflie 命令使环境变量生效 设置完环境变量,在命令行执行zk 加tab按键,会提示对应的命令mac机器zookeeper安装及单机、集群搭建演示 5.单机执行 (1)修改配置文件,配置文件目录/conf,复制conf_sample.cfg为conf.cfg 执行命令mv conf-sample.cfg conf.cfgmac机器zookeeper安装及单机、集群搭建演示 修改dataDir为zookeeper安装目录中mac机器zookeeper安装及单机、集群搭建演示 tickTime:心跳时间,用于配置服务器最小时间的单位,默认值3000ms,心跳检测时间通常是该单位的倍数。如客户端与服务端之间的会话超时时间在2tickTime~20tickTime之间。 initLimit:用于配置leader服务器等待Follewer服务器启动,并完成数据同步的时间,默认为10,表示10tickTime syncLimit:用于配置leader服务器和Follewer服务器之间进行心跳检测的最大延时时间,默认为5,表示5tickTime dataDir:用于配置zookeeper服务器存储快照文件(zookeeper 节点数据)的目录,无默认值 clientPort:用于配置当前服务器对客户端暴露的端口,一般配置为2181,无默认值 dataLogDir:用于配置服务器存储事务日志文件的目录,有默认值dataDir,但是建议将两个目录分别配置,防止磁盘的并发读写,影响服务器性能。可将其配置在一个单独的磁盘上。 minSessionTimeout & maxSessionout:用于服务端对客户端会话超时时间的限制,也就是客户端自定义的超时时间必须在minSessionTimeout~maxSessionout内,其默认为分别为2 和 20,时间表示为2tickTime~20tickTime maxClientCnxns:从socket层面限制单个客户端和单台服务器之间的最大并发连接数,即以IP地址粒度来进行连接数的限制,如果为0,表示不作限制,默认为60 clientPortAddress:针对多网卡的机器,该参数允许为每个IP地址指定不同的监听端口 server.id=host:port:port:用于配置组成zookeeper集群的机器列表,其中id为serverId,与myid文件中的值对应。第一个端口用于指定Leader服务器和Follewer服务器进行运行时通信和数据同步所使用的端口,第二个端口用于进行Leader选举过程中的投票通信 autopurge.snapRetainCount:用于配置zookeeper在自动清理的时候需要保留的快照数据文件数量和对应的事务日志文件,默认为3,切自定义值小于3也会取值3 (2)启动zookeeper服务器,客户端连接 zkServer.sh启动服务器,使用命令./zkServer.sh startmac机器zookeeper安装及单机、集群搭建演示 查看服务器状态,使用命令./zkServer.sh status,如下图所示状态为standalone,单机mac机器zookeeper安装及单机、集群搭建演示 使用zookeeper客户端连接,使用命令./zkCli.sh -server ip:port,查看到,其中-server的参数可以不加,ip和port默认为本地ip地址,port为2181mac机器zookeeper安装及单机、集群搭建演示 当查看Welcome to ZooKeeper信息,显示zookeeper客户端连接成功mac机器zookeeper安装及单机、集群搭建演示 使用tab按键,查看常见的节点操作命令mac机器zookeeper安装及单机、集群搭建演示 5.常用命令 ZNode是Zookeeper中数据的最小单元,每个ZNode都可以保存数据,同时还可以挂载子节点,因此构成了一个层次化的命名空间,称为树。ZNode可以保存任意格式的数据结构,并且保存数据变更版本号、时间戳。mac机器zookeeper安装及单机、集群搭建演示 (1) 查看znode节点mac机器zookeeper安装及单机、集群搭建演示 (2)创建znode节点,节点名为mydate,存储数据为node1mac机器zookeeper安装及单机、集群搭建演示 (3)设置节点值,获取节点值,get +znode的path,set+znode的pathmac机器zookeeper安装及单机、集群搭建演示 (4)删除节点值,delete + znode的pathmac机器zookeeper安装及单机、集群搭建演示 注意,不能级联删除,即:/aaa/bbb,不能直接删除aaa,应该先删除bbb后,再删除aaamac机器zookeeper安装及单机、集群搭建演示 5.搭建集群 搭建集群建议在多个实体物理机或者虚拟机安装多个机器,或者在同一个机器启动多个Zookeeper服务器实例模拟集群环境,后者适用于日常学习,下面的过程即为模拟在一台机器搭建集群环境。 如下图描述Note中,官方建议建立集群建议集群中机器格式为奇数个,至少有3台机器。mac机器zookeeper安装及单机、集群搭建演示 5.1 集群配置工作 下面,配置三台机器作为集群,需要修改conf/zoo.cfg配置文件、data/myid对应server机器编号,具体修改如下所示: (1)将上面单机的zookeeper安装环境复制到cluster-demo/zoo1目录 (2)编辑/zoo1/conf/zoo.cfg文件mac机器zookeeper安装及单机、集群搭建演示 如上图所示: dataDir:存储对应Server存储快照路径需要修改,3台zookeeper分别存放在各自的目录下的data中,即zoo1/data、zoo2/data、zoo3/data clientPort:对应Server的端口号,由于目前我们采用同一台机器模拟集群,因此端口号不能相同,如果采用虚拟机或者物理机,由于IP地址不同,因此端口号可以一致。本次实验对应的zoo1的端口号为2181、zoo2的端口号为2182、zoo3的端口号为2183 (3)编辑/zoo1/data文件下对应server节点序号 首先需要删除/zoo1/data目录中的全部内容,执行命令rm -rf *mac机器zookeeper安装及单机、集群搭建演示 再创建myid文件,zoo1对应的节点序号为1,因此输入1序号在myid文件中mac机器zookeeper安装及单机、集群搭建演示 以此分别设置zoo2的myid文件值为2,zoo3的myid文件值为3 5.3 启动集群 (1)首先查看目前是否有zookeeper服务启动,如果有需要kill -9 进程号关闭 ps aux|grep zoo 查看是否有zookeeper服务 kill -9 pid号 (2)分别进入到zoo1/bin、zoo2/bin、zoo3/bin目录,执行./zkServer.sh start启动对应集群节点mac机器zookeeper安装及单机、集群搭建演示 注意:刚开始启动zoo1/bin和zoo2/bin,执行./zkServer.sh status显示未成功,是正常情况,如下图所示,必须等zoo3/bin启动成功后才证明集群搭建完成,才可以查看正常的状态。mac机器zookeeper安装及单机、集群搭建演示 启动完zoo3后,查看对应的状态,查看zoo2为leader,zoo1和zoo3为followermac机器zookeeper安装及单机、集群搭建演示 5.4 客户端连接集群 连接一个zoo2客户端,对应端口号为2182,zkCli.sh -server 127.0.0.1:2182mac机器zookeeper安装及单机、集群搭建演示 创建一个znode并设置值mac机器zookeeper安装及单机、集群搭建演示 退出,并再用客户端连接zoo1,查看刚才在zoo2中设置的znode及值是否一致mac机器zookeeper安装及单机、集群搭建演示mac机器zookeeper安装及单机、集群搭建演示 如图所示,对应/mydata中存储的数据为value1,与zoo2中内容一致,因此集群搭建成功。 通过quit命令,可以退出zookeeper客户端mac机器zookeeper安装及单机、集群搭建演示 5.5 杀掉一个zoo2进程,看一下集群是否还能正常工作mac机器zookeeper安装及单机、集群搭建演示 连接zoo1,即端口号为2181,可以正常连接,现在集群中还有两台机器 如下图所示,znode path数据也存在mac机器zookeeper安装及单机、集群搭建演示 新的集群leader变为zoo3,具体如下所示mac机器zookeeper安装及单机、集群搭建演示

本篇文章主要简要介绍zookeeper安装及单机、集群环境搭建,后续还需要进一步深入学习zookeeper事件订阅通知、zookeeper选举算法。 参考文章: zookeeper配置文件信息:https://www.jianshu.com/p/64fe549ab9a7 mac下zookeeper安装:https://www.jianshu.com/p/d9275f4c663a zookeeper官网:http://zookeeper.apache.org/ zookeeper原理介绍:https://cloud.tencent.com/developer/article/1467567



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有