zookeeper系列学习——(2)zookeeper的安装(windows、Linux)[通俗易懂]

这一篇总结zookeeper的安装,这一篇安装的介绍是为了以后使用zookeeper做铺垫! 一:单机版的zookeeper安装 要安装zookeeper,那么首先要现在安装包,下载的地址:http://mirrors.hust.edu.cn/apache/zookeeper/ 安装的文档:http://zookeeper.apache.org/doc/trunk/zookeeperStart

大家好,又见面了,我是全栈君。

这一篇总结zookeeper的安装,这一篇安装的介绍是为了以后使用zookeeper做铺垫!
一:单机版的zookeeper安装
要安装zookeeper,那么首先要现在安装包,下载的地址:http://mirrors.hust.edu.cn/apache/zookeeper/
安装的文档:http://zookeeper.apache.org/doc/trunk/zookeeperStarted.html
1.zookeeper在Windows下的安装和使
(1):进入下载页面:(下载zip文件,下载地址:http://download.csdn.net/detail/u010648555/9683505
zookeeper安装包下载
(2):下载安装包完成之后,在对应的位置,解压安装包,如下是我解压后的内容:
这里写图片描述
(3):修改conf目录下的zoo_sample.cfg文件(我一般会复制一份,修改名称为zoo.cfg,保留原始的zoo_sample.cfg文件),为什么修改conf下文件名称为zoo.cfg,请看官方文档说明!
这里写图片描述
(4):bin目录下为zookeeper的一下命令,例如启动服务,关闭服务等!
这里写图片描述

(5):启动zookeeper服务,进入到zookeeper解压的目录的bin下,使用下面命令

zkServer.cmd

这里写图片描述

要断开服务,关闭dos窗口,或者使用Ctrl+c。

2.zookeeper在Linux下的安装和使用
在Linux系统下安装zookeeper,我使用的是centos 6.3 32位,我使用xshell远程连接VMware。
(1):下载安装包,如上下载地址,下载安装包为zookeeper-3.4.8.tar.gz

(2):将安装包上传到服务器上,在当前目录下,进行解压,解压的命令为:
这里写图片描述

tar -zxvf zookeeper-3.4.8.tar.gz

(3):解压之后,进入解压的目录如下:
这里写图片描述
修改conf目录下的zoo_sample.cfg文件(我一般会复制一份,修改名称为zoo.cfg,保留原始的zoo_sample.cfg文件),为什么修改conf下文件名称为zoo.cfg,请看官方文档说明!
这里写图片描述

(4):启动zookeeper的服务,重新回到bin目录下,执行下面命令

zkService.sh start

然后查看端口是否监听,端口监听,启动正常!
这里写图片描述

(5):关闭服务
这里写图片描述

二:集群环境中zookeeper的安装和配置

  1. 开通建立集群主机的相关网络策略
    10.254.201.120、10.254.201.121、10.254.201.122

  2. 在各个主机上安装zookeeper,参考上面单台zookeeper的安装过程

  3. 修改 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=/interactive/zookeeper/data
dataLogDir=/interactive/zookeeper/dataLog
# the port at which the clients will connect
# zookeeper 的端口
clientPort=19181
# 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
server.1=10.254.201.120:19191:19192
server.2=10.254.201.121:19191:19192
server.3=10.254.201.122:19191:19192

其中主要增加了下面集群的配置信息,
如上面配置中:

server.1=10.254.201.120:19191:19192
server.2=10.254.201.121:19191:19192
server.3=10.254.201.122:19191:19192

  • 10.254.201.120、10.254.201.121、10.254.201.123是集群主机ip。
  • 16191端口为zookeeper相互通信端口,16192位通信备用端口

    1. 在10.254.201.120的 /zookeeper、data目录下 增加myid文件。其他主机类似操作

touch myid

vim myid

在myid中输入 1

[dufy@dufy data]$ cat myid 
1
[dufy@dufy data]$ 

myid里面的值,为zoo.cfg中server. 后面配置的值, 例如上面配置中10.254.201.120的myid里面的值就为1,指定的就是第一台主机!

  1. 依次启动zookeeper即可

注意事项

  • 当启动第一个zookeeper的时候,日志会报错,原因是找不到另外2个zookeeper,属于正常情况,可以继续启动另外2个,当3个都正常启动起来后,就会没有错误了
  • zookeeper依次启动后,不会是第一个启动的位主,它是随机选定的,所以可以不用担心主从问题,状态可以查看 sh zkServer.sh status

三:zookeeper配置文件讲解
zoo.cfg 配置文件的说明

# The number of milliseconds of each tick
# zk中的一个时间单元。zk中所有的时间都是以这个时间单元为基础,进行整数倍配置的。例如,session最小超时时间是2*tickTime
tickTime=2000
# The number of ticks that the initial 
# synchronization phase can take
#Follower在启动过程中,会从Leader同步所有最新数据,然后确定自己能够对外服务的起始状态。Leader允许F在initLimit时间内完成这#个工作。通常情况下,我们不用太在意这个参数的设置。如果ZK集群的数据量确实很大了,F在启动的时候,从Leader上同步数据的时间#也会相应变长,因此在这种情况下,有必要适当调大这个参数了。(No Java system property)
initLimit=10
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
#在运行过程中,Leader负责与ZK集群中所有机器进行通信,例如通过一些心跳检测机制,来检测机器的存活状态。如果L发出心跳包在syn#cLimit之后,还没有从F那里收到响应,那么就认为这个F已经不在线了。注意:不要把这个参数设置得过大,否则可能会掩盖一些问题。#(No Java system property)
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
#存储快照文件snapshot的目录。默认情况下,事务日志也会存储在这里。建议同时配置参数dataLogDir, #事务日志的写性能直接影响zk性能
dataDir=/tmp/zookeeper
# the port at which the clients will connect
#客户端连接server的端口,即对外服务端口,一般设置为2181吧。
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#单个客户端与单台服务器之间的连接数的限制,是ip级别的,默认是60,如果设置为0,那么表明不作任何限制。
#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
#在上文中已经提到,3.4.0及之后版本,ZK提供了自动清理事务日志和快照文件的功能,这个参数指定了清理频率,单位是小时,需要配##置一个1或更大的整数,默认是0,表示不开启自动清理功能
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#这个参数和上面的参数搭配使用,这个参数指定了需要保留的文件数目。默认是保留3个
#autopurge.purgeInterval=1

好多技术,是要总结起来的,要不学过很多细节就会忘记,那么在去查资料又会浪费很多时间,何不在学习的时候,及时总结下来!

请查看这篇博文-集群和配置


如果您觉得这篇博文对你有帮助,请点赞或者喜欢,让更多的人看到,谢谢!

如果帅气(美丽)、睿智(聪颖),和我一样简单善良的你看到本篇博文中存在问题,请指出,我虚心接受你让我成长的批评,谢谢阅读!
祝你今天开心愉快!


欢迎访问我的csdn博客,我们一同成长!

不管做什么,只要坚持下去就会看到不一样!在路上,不卑不亢!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/121212.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C++ filesystem

    C++ filesystem命名空间:std::tr2::sys头文件:#include1.路径或文件是否存在templateinlineboolexists(constPath&Pval);std::tr2::sys::pathmyfile(R”(D:\胡军军\TestStatu.xm)”); if(std::tr2::sys::exists(myfile)){  

    2025年6月8日
    0
  • oracle 查看 用户,用户权限,用户表空间,用户默认表空间

    oracle 查看 用户,用户权限,用户表空间,用户默认表空间

    2021年8月24日
    61
  • Quercus_Quercus salicina

    Quercus_Quercus salicina其实,我不确定Quercus是否可以被认定为一门JVM语言;其次Quercus这个东东分开源版与商业版,开源版只能解释执行、而商业版能编译成Java字节码。但我知道国内,阿里巴巴很早就在使用它,当然,

    2022年8月5日
    2
  • 平衡二叉树的数据结构_红黑树数据结构

    平衡二叉树的数据结构_红黑树数据结构红黑树Java集合系列之TreeMap详细介绍(源码解析)和使用示例代码来自算法第四版红黑树并不追求“完全平衡”——它只要求部分地达到平衡要求,降低了对旋转的要求,从而提高了性能。红黑树实际上是由2-3-4树转换而来,红黑树能够以O(log2n)的时间复杂度进行搜索、插入、删除操作。此外,由于它的设计,任何不平衡都会在三次旋转之内解决。当然,还有一些更好的,但实现起来更复杂的数据

    2022年8月30日
    0
  • 安卓 Android之开发简单小应用(一)

    安卓 Android之开发简单小应用(一)安卓Android之开发简单小应用(一)一、简述  记–没学过Android之开发简单小应用。(课程设计作业)  例子打包:链接:https://pan.baidu.com/s/1LEQ1oWkUX8OmtfCFVydxWQ密码:9o0d二、环境搭建软件打包:链接:https://pan.baidu.com/s/1VVsZqPrwOtvMuzeeJE1y_A密…

    2022年6月15日
    27
  • Keil5最新注册机到2032

    Keil5最新注册机到2032嘿,好久不见啦,我这个马虎鬼,新的一年大家要平安顺遂、万事如意。真的过了好久没有写博客了,不在的这段时间发生了很多变故,要相信一切都会变美好的。加油啦,马虎鬼~用博客记录点滴,不管怎样,认真做自己吧~一、注册机资源百度i链接:链接:https://pan.baidu.com/s/1chvIeo9UVhnDK-a-Jq3pGg提取码:bi4u二、操作首先用管理员身份打开Keil5;在界面中选中下方菜单栏中的选项;点击后,可以看到如下的界面;选择右上角的ID,选中复制;接着.

    2022年6月14日
    155

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号