zookeeper命令

Zookeeper内部实现分布式数据一致性(底层系统模型)(三)

不打扰是莪最后的温柔 提交于 2019-12-02 16:41:49
承接上一篇:继续接受最后一个特性: ACL- 保障数据的安全;   Zookeeper提供了一套完善的ACL(Access Control List)权限控制机制来保证数据的安全;     标识一个有效的ACL的三个维度:权限模式(Scheme),授权对象(ID),权限(Permission),通常使用 scheme:id:premission来标识一个有效的ACL;   <1> 权限模式:Scheme     1)IP模式,类似 ip:192.168.0.110 形式     2)Digest:类似于username:password 形式的;     3)World:最开放的权限控制模式,从其名字中可以看出,数据节点的访问权限对所有用户抗法。也可以将其看做是一种特殊的Digest模式,他只有一个标识,“”world:anyone”;     4)Super: 超级用户对任意zk节点进行任何操作;   <2> 授权对象:ID     授权对象是指权限赋予的用户或者一个指定实体,不同的权限模式下,授权对象是不同的。他们的对应关系:       IP -----> IP段:“192.168.0.1”       Digest -------> username:BASE64(SHA-1(username:password))

ZooKeeper笔记

限于喜欢 提交于 2019-12-02 16:29:00
简介: Zookeeper是一个高可用的分布式管理与协调框架,基于Paxos算法(原子消息广播协议),能够很好地保证分布式环境中数据的一致性 顺序一致性 :从客户端发起的事务请求,最终会严格地按照其发起的顺序被应用到Zookeeper中 原子性 :所有事务请求的结果在集群环境中所有机器上的应用情况应该是一致的,也就是说要么集群中所有的机器都应用了这一事务,要么所有机器都没有应用这一事务. 单一视图 :无论客户端连接的是哪一个Zookeeper服务器,其获取的服务端数据都是一致的 可靠性 :一旦服务器成功地应用了某一事务,并完成了对客户端的响应,那么该事务引起的服务端状态将被一致地保留下来,除非有另一个事务对其进行更改. 树形结构! Zookeeper服务分三种角色:leader,Follower,Observer,其中Follower与Observer又统称为Learner Leader:负责客户端的writer请求类型 Follower:负责客户端的reader类型请求和leader选举等 Observer:特殊的Follower,可以接受客户端的reader请求,但不参与选举,不接受任何的同步写入请求,只负责与leader同步数据 典型应用场景: 配置管理 集群管理 发布订阅 数据库切换 分布式日志收集 分布式锁与队列管理 Zookeeper的安装: 结构:一共三个节点

【Zookeeper】利用zookeeper搭建Hdoop HA高可用

China☆狼群 提交于 2019-12-02 14:48:42
利用zookeeper搭建Hdoop HA高可用 HA概述 所谓HA(high available),即高可用(7*24小时不中断服务)。 实现高可用最关键的策略是消除单点故障。HA严格来说应该分成各个组件的HA机制:HDFS的HA和YARN的HA。 Hadoop2.0之前,在HDFS集群中NameNode存在单点故障(SPOF)。 NameNode主要在以下两个方面影响HDFS集群 ​ NameNode机器发生意外,如宕机,集群将无法使用,直到管理员重启 ​ NameNode机器需要升级,包括软件、硬件升级,此时集群也将无法使用 HDFS HA功能通过配置Active/Standby两个nameNodes实现在集群中对NameNode的热备来解决上述问题。如果出现故障,如机器崩溃或机器需要升级维护,这时可通过此种方式将NameNode很快的切换到另外一台机器。 HDFS-HA工作机制 ​ 通过双namenode消除单点故障 HDFS-HA工作要点 (1)元数据管理方式需要改变: ​ 内存中各自保存一份元数据; ​ Edits日志只有Active状态的namenode节点可以做写操作; ​ 两个namenode都可以读取edits; ​ 共享的edits放在一个共享存储中管理(qjournal和NFS两个主流实现); (2)需要一个状态管理功能模块 ​

Zookeeper客户端java代码操作

谁说胖子不能爱 提交于 2019-12-02 13:02:18
Zookeeper客户端java代码操作 上篇博客记录了shell命令操作zookeeper集群的方式,这次尝试采用java代码来操作。通过查阅API,发现并不困难。 1. 首先获得客户端与服务器的连接 //zookeeper客户端 private ZooKeeper zkCli; //连接地址 private static final String CONNECT_STRING = "hadoop102:2181,hadoop103:2181,hadoop104:2181"; //session过期时间 private static final int SESSION_TIMEOUT = 2000; /** * 创建客户端实例对象 * * @throws IOException */ @Before public void before() throws IOException { zkCli = new ZooKeeper(CONNECT_STRING, SESSION_TIMEOUT, (event) -> { System.out.println("默认的回调函数"); }); } 2. 列出根节点下的子节点(非递归) @Test public void ls() throws KeeperException, InterruptedException { List

Linux下zookeeper的安装 启动

我们两清 提交于 2019-12-02 08:56:58
本文转自:http://blog.csdn.net/lifupingcn/article/details/78327609 1.下载Linux版的zookeeper,注意这个版本一定要和 项目中的版本 一致 2.上传到服务器中解压:tar -zxvf zookeeper-3.4.8.tar.gz 如下图: 3.进入 zookeeper-3.4.8 下的conf目录中修改核心配置文件: 默认进去zoo_sample.cfg是这个,需要复制一份重命名为zoo.cfg, 因为 Zookeeper 在启动时会找这个文件作为默认配置文件。 命令:cp zoo_sample.cfg zoo.cfg 在修改 zoo.cfg配置文件的内容: tickTime :这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳 dataDir :顾名思义就是 Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。 clientPort :这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。 当这些配置项配置好后,你现在就可以启动 Zookeeper 了( sh zkServer.sh ),启动后要检查

Linux zookeeper命令

我的未来我决定 提交于 2019-12-02 08:55:16
客户端命令 首先通过命令连接zk:sh zkCli.sh -server ip:port 常用操作命令如下: 1. 显示根目录下、文件: ls / 使用 ls 命令来查看当前 ZooKeeper 中所包含的内容 例:查看zk上的dubbo服务 ls /dubbo 指定服务:ls /dubbo/com.test.TestService(使用缩进键可提示) 2. 显示根目录下、文件: ls2 / 类似ls并能看到更新次数等数据 3. 创建文件,并设置初始内容: create /zk "test" 创建一个新的 znode节点“ zk ”以及与它关联的字符串 4. 获取文件内容: get /zk 确认 znode 是否包含我们所创建的字符串 5. 修改文件内容: set /zk "zkbak" 对 zk 所关联的字符串进行设置 6. 删除文件: delete /zk 将刚才创建的 znode 删除 7. 退出客户端: quit 8. 帮助命令: help 服务端命令 1. 启动ZK服务: sh zkServer.sh start 2. 查看ZK服务状态: sh zkServer.sh status 3. 停止ZK服务: sh zkServer.sh stop 4. 重启ZK服务: sh zkServer.sh restart 希望此文能够帮助到您! 来源: CSDN 作者: king

Linux安装zookeeper及部署

对着背影说爱祢 提交于 2019-12-02 08:54:48
在Linux找到zookeeper-3.4.5.tar.gz的位置 解压步骤: 1,解压: tar zxvf zookeeper-3.4.5.tar.gz 2,进入解压后的: cd /zookeeper-3.4.5/conf 3把conf下的zoo_samle.cfg名字改为为zoo.cfg: mv zoo_samle.cfg zoo.cfg 4修改文件名后编辑文件中的内容: vi zoo.cfg 5`主要编辑的内容 tickTime=2000 initLimit=10 syncLimit=5 clientPort=2181 dataDir=/usr/zookeeper 6运行zookeeper: ./zkServer.sh start 7这个命令使得zk服务进程在后台进行,可以通过以下命令运行: ./zkServer.sh start-foreground 来源: CSDN 作者: weixin_44176853 链接: https://blog.csdn.net/weixin_44176853/article/details/86515059

zookeeper在ubuntu上的安装配置及java操作

我们两清 提交于 2019-12-02 08:53:55
一、ubuntu上安装,配置,操作zookeeper 1.准备安装文件zookeeper-3.4.5.tar 2.上传安装文件到ubuntu,打开xshell,使用快捷键Ctrl+Alt+f打开文件上传窗口,将文件拖拽到ubuntu指定目录下 3.解压tar -zxvf zookeeper-3.4.5.tar.gz 4.cd都zookeeper-3.4.5/conf目录下,将zoo_sample.cfg复制一份,文件名为zoo.cfg 5.打开vi,编辑zoo.cfg文件,添加,保存 单个zookeeper配置:只需在上图加入红框中的内容即可 集群配置:要是多个虚拟机或者机器上都安装了zookeeper,则每个zookeeper配置文件都加入相同的配置即可, 如下:server.1=ubuntu1.2888:3888 server.2=ubuntu2.2888:3888 server.3=ubuntu3.2888:3888 bogon和ubuntu1,ubuntu2,ubuntu3是你虚拟机上ubuntu的主机名,其余固定配置,其中2888是zookeeper与其它机器上的zookeeper通信的端口,3888是zookeeper集群选举master的通信端口 6.启动,关闭zookeeper cd到zookeeper的安装目录下执行 1.bin/zkServer.sh start

linux上安装zookeeper 启动/关闭

情到浓时终转凉″ 提交于 2019-12-02 08:53:37
1.zookeeper运行需要java环境所以必须先装JDK 2.下载,解压 # wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.12/zookeeper-3.4.12.tar.gz # tar -zxvf zookeeper-3.4.12.tar.gz 3.文件自己选择安装目录,接着进入conf,复制zoo_sample.cfg改名为zoo.cfg # cp zoo_sample.cfg zoo.cfg 4.编辑zoo.cfg,增加2个目录在根目录 #vi zoo.cfg #mkdir data #mkdir logs 5.必须进入bin目录,才能输入以下内容启动程序或者在根目录输 sh /bin zkServer.sh start 启动 #zkServer.sh start 启动 #zkServer.sh status 查看状态 #zkServer.sh stop 停止/关闭 6.想不进入bin目录输命令,需在/etc/profile 配置文件加入环境变量如下 来源: CSDN 作者: s死神小学生 链接: https://blog.csdn.net/weixin_42734930/article/details/81359562

远程linux搭建zookeeper 并发布和调用服务

人走茶凉 提交于 2019-12-02 08:53:25
远程linux搭建zookeeper并发布和调用服务 ssh软件putty 文件管理软件 FileZilla Client 1、用FileZilla Client连接远程主机,把从 https://mirrors.cnnic.cn/apache/zookeeper/ 这里下载的zookeeper安装包扔到主机的一个文件夹里面,可以用 FileZilla Client 来实现 2、解压 使用 tar zxvf 命令 解压完成后进入对应目录可看到文件。 3、进入conf文件夹中,把zoo_sample.cfg复制为zoo.cfg 4、用 file zilla 把 zoo.cfg 弄到本地来,把其中两行改成这样 dataDir=/usr/local/zookeeper-3.4.11/data dataLogDir=/usr/local/zookeeper-3.4.11/log 这两个文件夹一定要是存在的,改完之后再传到服务器文件夹上。 5、配置环境变量 注意下面的路径千万不能多打空格,否则会报错 6、启动zookeeper 进入到bin目录下,用 ./zkServer.sh start 启动zookeeper,注意前面有个“.”,启动成功如图所示。 7、可以通过./zkServer.sh status 查看zookeeper的运行状态,就算最后是not running 也没关系