zookeeper 安装以及简单使用

因为我需要使用kafka消息队列。所以就在本机安装一下 安装的时候看到需要用到zookeeper又去学习了一下 zookeeper

官网下载zookeeper文件

https://zookeeper.apache.org/

本人安装版本Apache ZooKeeper 3.7.0    下载tar包

因为我是ubuntu 系统所以我直接浏览器下载 在家目录有个下载包里面

cd 下载

cd ..

在家目录创建一个zookeeper文件夹 然后安装
mkdir zookeeper

接下来将 下载里面的zookerper包 MV到刚刚创建的目录
解压
tar zxvf zookeeper-3.4.13.tar.gz
备份配置文件
cd conf
 cp  configuration.xsl{,.bak}
cp  log4j.properties{,.bak}
cp  zoo_sample.cfg{,.bak}
创建文件存放点
在自己创建的zookeeper文件架下创建一个自定义存放数据的目录

mkdir ZKdata

cd ZKdata


pwd
修改配置文件
cp zoo_sample.cfg zoo.cfg
vim 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=/home/ywz/zookeeper/zookeeper-3.4.13/zkdata
# the port at which the clients will connect
clientPort=2181
# 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

上面的 dataDir 路径改成刚刚配置文件路径
启动
启动的文件在bin目录下

cd bin/

./zkServer.sh start

ZooKeeper JMX enabled by default
Using config: /home/ywz/zookeeper/zookeeper-3.4.13/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
查看状态
./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /home/ywz/zookeeper/zookeeper-3.4.13/bin/../conf/zoo.cfg
Mode: standalone   # 表示的是单个主机

如果没启动查看状态的话就是
	ZooKeeper JMX enabled by default
Using config: /home/ywz/zookeeper/zookeeper-3.4.13/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.
停止服务
./zkServer.sh stop

ZooKeeper JMX enabled by default
Using config: /home/ywz/zookeeper/zookeeper-3.4.13/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED
bin目录下的客户端
bin 目录下面有很多的客户端 可以直接./启动 后面不用加任何的参数
	zkServer.sh

客户端如果进去的话则 quit 退出 ls / 查看当前节点
配置参数解读(# 就是翻译)
# 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=/home/ywz/zookeeper/zookeeper-3.4.13/zkdata


# the port at which the clients will connect
clientPort=2181
# 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
选举机制
半数机制 半数以上可用(奇数最好)

配置文件并没有指定的 Naster 和 Skave 但是工作的时候只有一个节点为Leader 其他的为 Follower Leader是通过内部的选举机制临时产生

假设五个
第一台查看有几台服务器   投票投自己 发现五台选自己的一共就一票 
第二台投自己也是一票 但是第一台没成功 第一台就把票数投在了第二台但是第二台还是没成功
第三台 投自己一票 第一台 第二台 因为没成功 则全投给了第三台 那么第三台就是主
第四台第五台.... 没机会了 
节点类型Node
持久(Persistent)  客户与服务端断开后, 此节点不删除
	每个节点有自己的顺序 所以能区分不同多个节点
短暂(Ephemeral) 客户与服务端断开后, 新节点删除

节点理解

				              /根
				              
     节点|   节点|     	节点|       节点|
分布式就算了 我是开发能够使用kafka就好了 等我有机会部署我在讲 - -

原文地址:https://blog.csdn.net/JiuWeiYaoHo/article/details/118613507

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

相关推荐


#一、什么是ZooKeeper**ZooKeeper是一个分布式服务协调框架**,提供了分布式数据一致性的解决方案,基于ZooKeeper的**数据结构,Watcher,选举机制**等特点,可以**实现数据的发布/订阅,软负载均衡,命名服务,统一配置管理,分布式锁,集群管理**等等。#二、为什么使用ZooKeeperZooKeeper能保证:*
2.ZooKeeper介绍2.1.ZooKeeper由来正式介绍ZooKeeper之前,我们先来看看ZooKeeper的由来,还挺有意思的。下面这段内容摘自《从Paxos到ZooKeeper》第四章第一节,推荐大家阅读一下:ZooKeeper最早起源于雅虎研究院的一个研究小组。在当时,研究人员发现,在雅虎内部很
Zookeeper概述1.ZooKeeper最为主要的使⽤场景,是作为分布式系统的分布式协同服务。2.分布式系统中每台服务器的算力和资源都是有限的,但是我们通过分布式系统组成集群就可以对算力和资源进行无限扩张,但是分布式节点间的协调就成了问题。3.就像我们的开发团队之间的协作一
环境:1.VMware®Workstation12Pro 2.CentOS7 3.zookeeper-3.4.6安装步骤1.下载zookeeper本文使用的zookeeper下载地址如下(大家也可以下载其它版本)链接:https://pan.baidu.com/s/1Ab9F53jNy7upsrYHCacWrw 提取码:jqyn 
###1\.面试官:工作中使用过Zookeeper嘛?你知道它是什么,有什么用途呢?**小菜鸡的我:***有使用过的,使用ZooKeeper作为**dubbo的注册中心**,使用ZooKeeper实现**分布式锁**。*ZooKeeper,它是一个开放源码的**分布式协调服务**,它是一个集群的管理者,它将简单易用的接口提供给用户。*
##2\.ZooKeeper介绍###2.1\.ZooKeeper由来正式介绍ZooKeeper之前,我们先来看看ZooKeeper的由来,还挺有意思的。下面这段内容摘自《从Paxos到ZooKeeper》第四章第一节,推荐大家阅读一下:>ZooKeeper最早起源于雅虎研究院的一个研究小组。在当时,研究人员发现,在雅虎内部很
环境准备:windows:jdk8+nginx+ab压测centos7:redis+zookeeper3.3.6ab下载链接:https://www.apachelounge.com/download/测试思路:windows下使用springboot编写秒杀接口,商品数据存在redis,运行三个服务,利用nginx做代理,使用ab分别测试单机锁,自实现zookeeper分布式锁和Curator
由于只有一台电脑,所以搭建一个伪集群(伪集群就是在一台电脑上模拟搭建集群,走不同端口启动,真实的情况在每台机器上搭建一个zookeeper或者每台机器两个zookeeper等),道理是一样的,只不过要注意别被防火墙或者安全组规则挡住了zookeeper节点间的通信,每个节点直接的网络要是通的。集群数
常用命令总结(linux运行.sh结尾的脚本,window运行.cmd结尾的脚本,一下均为linux运行的,直接将.sh改为.cmd即可):linux环境:1.启动ZK服务:bin/zkServer.shstart2.查看ZK服务状态:bin/zkServer.shstatus3.停止ZK服务:bin/zkServer.shstop4.重启ZK服务:bin/zkServer.shrest
Kubernetes简介Kubernetes(简称K8S,K和S之间有8个字母)是用于自动部署,扩展和管理容器化应用程序的开源系统。它将组成应用程序的容器组合成逻辑单元,以便于管理和服务发现。Kubernetes源自Google15年生产环境的运维经验,同时凝聚了社区的最佳创意和实践。Kubernetes具有如下特性:
###正文ZooKeeper很流行,有个基本的疑问:*ZooKeeper是用来做什么的?*之前没有ZK,为什么会诞生ZK?OK,解答一下上面的疑问:(下面是凭直觉说的)*ZooKeeper是用于简化分布式应用开发的,对开发者屏蔽一些分布式应用开发过程中的底层细节*ZooKeeper对外暴露简单的API,用于支持分
#一、什么是ZooKeeper**ZooKeeper是一个分布式服务协调框架**,提供了分布式数据一致性的解决方案,基于ZooKeeper的**数据结构,Watcher,选举机制**等特点,可以**实现数据的发布/订阅,软负载均衡,命名服务,统一配置管理,分布式锁,集群管理**等等。#二、为什么使用ZooKeeperZooKeeper能保证:*
点赞再看,养成习惯,微信搜索「小大白日志」关注这个搬砖人。文章不定期同步公众号,还有各种一线大厂面试原题、我的学习系列笔记。zoo.cfg即/usr/local/java/zookeeper/conf下的zoo_sample.cfgzoo.cfg内含参数:tickTime、initLimit、syncLimit、dataDir、dataLogDir、clientPort
正文ZooKeeper很流行,有个基本的疑问:ZooKeeper是用来做什么的?之前没有ZK,为什么会诞生ZK?OK,解答一下上面的疑问:(下面是凭直觉说的)ZooKeeper是用于简化分布式应用开发的,对开发者屏蔽一些分布式应用开发过程中的底层细节ZooKeeper对外暴露简单的API,用于支持分布式应用开
#**NO1:说说zookeeper是什么?**ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现(Chubby是不开源的),它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供
正文ZooKeeper很流行,有个基本的疑问:ZooKeeper是用来做什么的?之前没有ZK,为什么会诞生ZK?OK,解答一下上面的疑问:(下面是凭直觉说的)ZooKeeper是用于简化分布式应用开发的,对开发者屏蔽一些分布式应用开发过程中的底层细节ZooKeeper对外暴露简单的API,用于支持分布式应用开
NO1:说说zookeeper是什么?ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现(Chubby是不开源的),它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供
#**NO1:说说zookeeper是什么?**ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现(Chubby是不开源的),它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供
一、什么是ZooKeeperZooKeeper是一个分布式服务协调框架,提供了分布式数据一致性的解决方案,基于ZooKeeper的数据结构,Watcher,选举机制等特点,可以实现数据的发布/订阅,软负载均衡,命名服务,统一配置管理,分布式锁,集群管理等等。二、为什么使用ZooKeeperZooKeeper能保证:更新请求
#**NO1:说说zookeeper是什么?**ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现(Chubby是不开源的),它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供