第一件事情就是要上传zookeeper,当前这里有一个zookeeper,我们用的不是最新的,现在已经有3.4.6了我用的都是3.4.5

第一件事情做什么事呢,解压这个zookeeper,这个很简单,tar -zxvf zookeeper -C /usr/local,解压到/usr/local下

三个节点都是software文件下,基本上这三个节点都解压成功了,然后咱们退出,cd ..,然后重命名一下,三个节点都应用一下,三个节点都变成zookeeper

三个节点都应用一下,解压完改完名字之后,可能要设置一下环境变量,vim /etc/profile文件,然后加上zookeeper的home,添加到path下边,这个步骤其实已经写完了,咱们整体的去vim /etc/profile文件

就是这个配置我不改了,不再去做了,就配一个zookeeper_home,/usr/local/zookeeper,然后把zookeeper_home加在这里,/bin找到zookeeper的运行,这三个文件都有,这步就默认修改完了,咱们q!退出来,改完这个文件resource一下,生效这两步走完以后,你要改一下zookeeper里的配置文件,他的配置文件就叫这个名字,默认就叫sample,在zookeeper的conf下面

他里面有三个文件,主要是zoo_sample.cfg,这个咱们整体的去mv一下,去改成zoo.cfg

复制一下,这三个都有了,整体去执行一下,就变成这个名字

然后咱们去编辑一下,进到这里面之后呢,他的配置是非常简单的,都需要指定一个dataDir,dataDir是咱们存放数据的地方

那我这块改一下,/usr/local/software/zookeeper-3.4.6/data,我建立一个文件夹,就是zookeeper下面有一个data文件夹,这是第一步咱们要改的操作,然后下一步咱们要做的事情,就是咱们要配置三个节点,三个节点之间要相互的进行通信,你注意看我这块吧,这块怎么去做呢,就是最后要加一个内容,就是在server.0,server.1,server.2,标识其实你是可以随便去改的,然后是你的主机名或者IP名也行,就是IP地址加上2888,3888,这个是什么意思呢,咱们之后再去讲这个事,先把这个配置配上第一个节点是server.0,看他是怎么写的,server.0=192.168.1.121:2888:3888,copy一下,粘贴再粘贴,122,123,改成server.1,改成server.2,把这个配置整体copy,粘贴

就是三个节点都要做同样的事情,然后按ESC,第二件事情要做的,刚才其实咱们路径指定的是什么啊,指定的是dataDir=/usr/local/zookeeper/data,data文件夹,要再创建一个文件夹data,在zookeeper下面,现在这三个文件都在zookeeper下面了,mkdir data这个文件,回车

都创建好了这个data文件以后呢,ll一下,你会发现三个节点的zookeeper下都有一个data文件夹,都会有一个data文件夹,然后咱们集体的cd到data文件夹下面,这下面是没有任何文件的,咱们要建立一个文件了,用touch,vim都行,zookeeper要指定一个myid的文件,myid的文件分别写上0,1,2,直接vim myid回车,121上写一个0,122上写一个1,123上写一个2,这个就对应server.0,server.1,server.2,整体wq!保存退出,其实做完这两步操作,咱们的zookeeper就算配置完毕了,然后就可以去启动咱们的zk了,路径其实是要到/usr/local/zookeeper/bin去启动,咱们看一眼吧,我随便找一个机器吧,cd /usr/local/zookeeper/,zookeeper下有一堆的文件

一堆的文件,咱们主要是去bin下去看一下,这下面都是啥啊,这下面就是一些启动的脚本

咱们要启动,现在要应用的就两个,一个是zkCli.sh,一个zkServer.sh,由于咱们已经配置了环境变量了,所以说无所谓,整体cd到/usr/local下,咱们直接敲命令就行,因为环境变量已经配置好了,vim /etc/profile

zkServer.sh start回车

三个节点都去start完了以后,到底启动还是没有启动,你得看他的状态,他有个status

你看121的模式是follower

然后122是一个leader

123他也是一个follower

122这个节点是一个主节点,121和123是一个从节点,然后咱们整体的clear,其实现在zookeeper的环境是已经搭建完毕了,其实很简单,然后咱们怎么去操作zookeeper,去看数据啊,他这里面有点像shell命令

他这里面有一个相当于是shell操作吧,他提供了zkCli.sh的一个脚本,我从主节点找也行,从从节点找也行,这个无所谓,咱们JPS一下吧,咱们的zookeeper进程一直都在,zookeeper服务一直都是OK的,然后咱们继续往下走,接下来咱们要操作这个东西,通过zkCli.sh这个,连一下客户端,那我就随便找一台机器吧,你是121也好,你是122也好,你是123也好,直接zkCli.sh就进来了

不用start,我刚才敲得是zkCli.sh这个,然后进来以后呢,这里面他能看到什么啊,这里进入d的是zk的客户端,正常的zk的客户端是需要查看数据的,查看命令其实就这几个命令,ls表示要查找什么样的数据,咱们现在的zookeeper下是没啥数据的,其实之前也说过,你用client端看着别扭,你看zk下面节点是没有的

他就是这样的一个节点,根目录下有一个zookeeper,zookeeper下有一个quota,配额,其实 你不用去看,相当于数据有多少配额,我后期会发啊,其实正常来讲,你去看这儿,你可以去eclipse下去装插件,工具有很多种,你会发现下面是连着三台服务器,然后节点基本上就是这么一个情况,既然看到这个情况了,你要想操作命令行的话,你要ls /,回车

你会发现根节点下有一个zookeeper的节点,进去回车 ls /zookeeper,有quota这个节点,就是刚才可视化的结果

这个下面就是空了,啥也没有了,其实默认的zookeeper刚装好以后呢,就是这种形态,就是根节点下挂着一个zookeeper的,然后zookeeper下挂着一个quota,这个东西,应该很简单了,你会发现他没有clear命令

你敲clear命令,他就会说我们这里是没有clear命令的,然后告诉你有什么命令,一共就这么多,connect,get还有set啊,rmr,delquota,quit退出,退出client端,stat节点的状态,history,还有sync同步,delete删除节点,其实我quit就是退出的

你就发现我就已经退出了,我再进入zkCli.sh进入,这个也是可以的,接下来咱们看怎么去操作,还是看这个,如果你想新创建一个节点,其实很简单的,调用create这个命令,create命令他其实有key有value,他这个目录是一个树形结构,一个树形结构,这里可以有分支,他也可以有分支,这里面也有分支,然后对应着这个目录,比如/zookeeper,然后我可以建一个目录,你说根节点下是一个/,我也可以创建一个/bhz,相当于一个节点的目录,你可以把它当做一个key,这个key可以指定一个value,这个value就是这个节点存放的一个数据,就是这样的,结构其实是很简单的,咱们做一下create,比如随便找一个路径吧,create /bhz hadoop,/bhz这个是一个key,value叫啥呢,比如叫hadoop,你会看见这个节点已经OK了

这回我们再去观察一下这个数据,我刷新一下,他就变成这种结构了,根节点下有一个这个文件,你会发现是这样的了

其实也很简单,通过get /bhz,也可以通过set设值,我取一下吧,get /zookeeper

你get一下zookeeper,里面一堆东西,你可能看不明白,咱们先clear掉,咱们先不get /zookeeper,咱们先get /bhz这个,这个你就能够看明白了

你会发现他的数据就在这里了,hadoop就是数据,这里有一堆,比如ctime,这个节点的时间是什么,然后这个修改的节点是什么,zookeeper它是保证一条一条顺序的,所以每生成一个节点操作他的时候,都会生成一个id,包括他的version版本号,就是dataVersion,这里面都有,包括他的children,多少个孩子,包括节点的长度是多长,6个长度,hadoop是6个字母,就是这个意思,如果获取到zookeeper下面,get /zookeeper

这回你再看,这个zookeeper是没有任何数据的,他也有一个时间,创建的时间,然后你会发现他下面有一个孩子numChildren,那个孩子就是quota,然后其他的就无所谓了,慢慢的再说,基本上就是这个形式,我可以去set这个节点,给他起个名字,set /bhz baihe

我现在set成功了以后,它会返回一个东西,这个时候数据就成5个了,然后你就会发现他不一致了,mtime是modify time就变了然后dataVersion同理也有些变化了,我再设一遍 set /bhz kkkk

这个dataVersion你每次去进行修改的时候,dataVersion总是进行加1,然后长度也总是变化的,set /bhz cccc,然后你有没有发现,你会发现有一个问题,就是mZxid这个也发生变化了,就是mZxid = 0xfe2这个,这个id,每次也会有不一致的变化,创建节点的时候会有一个节点的ID,就是modify的时候会指定一个节点的id,他两因为有修改了,都会有节点的变化的,就是你每次操作一下,其实你通过咱们client端的api啊,你都是可以去查找到的,这里面的信息都是可以查找到的,然后咱们继续往下看,还有一些啊,删除,你可以递归的删除,你也可以不递归的删除,你不想递归的删除就用rmr /path这个,rmr,如果不递归的删除就用delete /path/child这个,你比如我现在去建立一个节点,我现在ls /一下

有一个节点了,你比如我想在bhz节点下创建一个节点,你肯定也是这么去写,也会创建一个attr,create /bhz/attr,bhz的节点下就是attr,他整体是一个url,这个url也当做一个key,我给他指定一个名字,create /bhz/attr shuxing,就这么写

create成功,然后我去get的时候,get /bhz/attr

你会发现,这个属性就已经有了,删除我这么写行不行,delete /bhz,这样写行不行

他说什么啊,Node not empty,因为我这个节点下还有一个子节点,所以你delete不行,先删除,只有删除attr,我们rmr /bhz这样总可以吧

这回我们在看一下,有少了一个节点了

基本上这都是最简单的client端操作,能理解我说的意思吧,你也可以通过工具去添加一个节点,好像有add node,刷新一下下没有了,我就add node,然后起一个名字

然后又delete node,然后还有change node,还是我new的不太多,一般remove就行了,一般用这个比较多

双击就可以写数据了,这里面随便写数据了

数据你保存一下就行了,刚才有个*就没了,这回你会发现,你会发现bhz的值就发生变化了,因为下面没有节点,所以返回空所以我get /bhz

是不是一行1就已经有了,还有16个长度,这个是我刚才通过工具进行操作的,我只要以变更然后保存就发生变化了,这个工具都是很好操作的

所以关于工具的操作,利用这个命令去做,就OK了,演示一下File,你可以传一个文件的,一般我是自己去创建file,你可以这么去做,这个节点存储数据的作用,其实就是动态的变更信息,咱们到后期再详细去说,以后对应的一个节点,我可以存一堆数据,这个数据可以存一个JSON字符串,这都可以,包括这个节点可以上传文件,图片啊,这都是行的,这里面怎么去传呢,我先新建一个,我还没试过能不能行呢,新文件new_file,没试过,就123吧

现在有一个文件了,然后上传,我没有试过,试一下,不知道行不行

这样的话我的节点下肯定不一样了,我再双击打开就是123

也就是说也可以传,图片文件就是图片了,我这里有没有有图片呢,不要太大,小图片就行,这里又张小图片,/bhz这个节点我要修改,我要上传一个文件,这个文件就在这儿
保存好了关掉,我再去打开,这里面一堆东西

这个就是那个图片,很多,这工具也是可以上传的,也是可以上传的,创建什么呢,一般是二进制的文件的,JAVA API这部分,我不知道这个编码有没有问题,自己回去试试,这个我真不知道,咱们后期自己可以去做通过JAVA API去获得

Zookeeper_环境搭建及客户端使用相关推荐

  1. linux环境搭建seafile客户端自动上传文件

    介绍:本次搭建的是linux环境下的seafile客户端,目的是把自动备份的一些数据上传到seafile网盘,安装启动seafile客户端后,只要文件没有超过网盘空间限制,就会自动上传至网盘. 1.下 ...

  2. 华为云桌面客户端_华为云服务器购买及环境搭建简述

    一.背景 毕设的一部分是做一个微信小程序,需要购买服务器以提供公网ip.刚好刷牛客看到牛客网和华为云合作推出的超级福利活动,仅需9元即可享受一年的2G内存服务器的使用权,约等于白送有木有!!! 没有丝 ...

  3. 微信小游戏客户端开发环境搭建

    微信小游戏客户端开发环境搭建 开发工具 环境配置 发布小游戏 一直以来,弄App形式的游戏比较多,近年来,微信小游戏火了起来.出于好奇,研究了一番,觉得还是挺有意思的,想和大家分享下. 官方手册网址: ...

  4. WinMail邮件服务器(客户端)环境搭建与配置

    WinMail邮件服务器(客户端)环境搭建与配置       一.在搭建WinMail邮件服务器(客户端)之前必备             (1).在虚拟机上安装两个干净无毒的操作系统         ...

  5. eas java配置_EAS客户端调试环境搭建

    客户端调试环境搭建说明 适用场景:在现场跟踪问题或者在研发内部跟踪定位测试环境的问题时,开发人员需要快速搭建一个可供调试的环境以供分析问题,以下说明可供开发人员在需要时使用,注意该方式只支持客户端调试 ...

  6. 单点登录cas综述之cas4.2.7服务端+cas客户端+示例程序+环境搭建说明-陈杰

    1环境搭建以及把示例程序跑起来 1.1  安装jdk1.8 1.2 下载tomcat8+cas4.2.7服务端war+cas客户端war 1.2.1下载经过配置的Tomcat8和本教程配套文件 1.2 ...

  7. 开源游戏服务器框架NoahGameFrame(NF)客户端环境搭建(三)

    一.下载NoahGameFrame框架的客户端 1.进入到开源游戏服务器框架NoahGameFrame的客户端NFUnitySDK在GitHub官方界面NFUnitySDK 2.复制要Checkout ...

  8. rap2客户端dolores环境搭建

    rap2客户端dolores环境搭建 https://incoder.org/2018/03/27/rap2/ https://github.com/thx/rap2-delos/issues/119 ...

  9. ESXi6.5环境搭建(四:虚拟机操作系统安装及配置)

    实验目的及要求 完成VMware workstations安装,会应用相关操作: 完成虚拟机中ESXI6.5平台的安装及网络环境配置: 完成VMware vSphere Client 6.0软件在PC ...

最新文章

  1. 【C++自我精讲】基础系列二 const
  2. 源码安装nginx开启SSL功能
  3. 重磅!监管再升级!微信、淘宝、抖音或将纳入“超级平台”监管
  4. WebRTC / Jitsi / 多人视频通讯常用架构 Mesh / MCU / SFU
  5. python错误代码提示手册_腾讯大佬整理了 Python 所有内置异常,Python高手必备的排错手册...
  6. 计算机浏览器应用程序,基于浏览器的应用程序
  7. python基础到实践教程_Python从入门到实践案例教程(21世纪高等学校计算机教育实用规划教材)...
  8. python中集合的元素可以是_python中的集合
  9. 清理300多台MySQL数据库的过期binlog日志
  10. Assimp Android 编译
  11. linux安装安卓fastboot,Android的fastboot协议
  12. 2022黑马程序员Java学习路线图
  13. Java在线问卷调查系统的分析与实现管理员功能模块
  14. 从培训机构出来的程序员,后来都怎么样了?
  15. codeforces C. Team
  16. django 模型choice基本讲解
  17. Android允许应用具有安装权限
  18. 远程终端工具Xshell、Xftp传输工具、VMware 、CentOS7的下载、安装和使用教程(完整版)
  19. 2021年江苏高考生物成绩查询,2021年江苏省高考生物考试说明.docx
  20. Linux系统的进程和计划任务

热门文章

  1. UVA 621 Secret Research
  2. 关于mysql的error-based injection payload
  3. cuckoo hash
  4. dm9000 driver 1
  5. Addin and Automation Development In VB.NET 2003 (3)
  6. datax源码阅读一:python文件
  7. 【爬坑】Vim 文档加密 解密
  8. web百度地图 地址解析获取百度地理坐标
  9. 计划任务中allow和deny的优先级
  10. 深入理解MSTP域和端口角色