初始Zookeeper
Zookeeper是一个分布式服务框架,据说是一个比较强大的架构模式,具体我也不甚了解,但是最近由于工作上的原因,需要部署一个Zookeeper服务,实现移动端一个简单的发单、抢单功能。于是我便开始了解这个框架,将个人本地测试以及服务器部署过程的中遇到的问题和解决方案总结如下,希望大家在使用过程中可以少走弯路,第一次学习这个框架,写的不好,还望指正,大神勿喷哦!
使用任何一门语言或者框架之前的首要工作就是部署开发环境。
本地部署Mac版本
1. 下载对应的安装程序,支持版本 dmg 、tar.gz 下载地址: http://www.apache.org/dyn/closer.cgi/zookeeper;
2. 也可以使用brew命令$ brew install zookeeper 直接下载安装, 具体安装步骤详见链接http://blog.csdn.net/whereismatrix/article/details/50420099;
3. 安装后的配置工作可以参考上述这位博主的链接,我觉得这位博主总结比我到位,我本地的环境就是按照这个步骤搭建的,灰常感谢。
下面重点说一下服务器部署
服务器部署Linux版本
1. 下载对应的安装程序,可以使用命令下载(如果你的服务器有域名解析的话),也可以将本地的安装包上传至服务器。我比较倾向于后者,因为一般新搭建的服务器都没有域名解析,要使用的话还需要网络工程师做配置修改,比较麻烦,所以我将本地的资源上传了上去,不会上传的童鞋可以搜索一下远程拷贝scp命令,这里就不赘述;
2. 解压安装程序,这里我建议直接解压到/usr/local/ 目录下,这不是硬性规则,只是个人习惯而已;
3. 创建配置文件zoo.cfg
在解压文件中的conf文件夹中创建自定义配置文件zoo.cfg,并根据配置文件的内容,创建对应的文件夹(比如data、logs文件夹)
配置文件的内容
tickTime=2000 dataDir= /usr/local/zookeeper-3.4.8/data (填写自己的data目录) dataLogDir=/usr/local/zookeeper-3.4.8/logs clientPort=2181
4. 启动服务
进入文件中的bin目录 运行 ./zkserver.sh start
如果出现下图中start 等字样表示启动成功,但是不要高兴的太早!
5.启动zookeeper客户端
跟随第四步,继续在当前目录运行 ./zkCli.sh -timeout 3000 -server 127.0.0.1:2181
如果不出意外的话是会启动失败的,报错信息为 ./zookeeper-3.4.8/bin/zkCli.sh: line 39: java: command not found
下面详细说一下这个问题的解决方案:
导致这个问题的原因有两种,一是服务器没有Java 开发环境, 二是配置文件未生效
没有Java环境怎么解决我就不多说;
要让配置文件生效的话,就得再启动服务时指定配置文件路径,这样的话启动命令为 ./zkserver.sh start /usr/local/zookeeper-3.4.8/conf/zoo.cfg
成功启动即可解决。
初始Zookeeper相关推荐
- Zookeeper命令操作(初始Zookeeper、JavaAPI操作、分布式锁实现、模拟12306售票分布式锁、Zookeeper集群搭建、选举投票)
Zookeeper命令操作(初始Zookeeper.JavaAPI操作.分布式锁实现.模拟12306售票分布式锁.Zookeeper集群搭建.选举投票) 1.初始Zookeeper Zookeeper ...
- ZooKeeper 3.0.0发行说明
ZooKeeper 3.0.0发行说明 升级到3.0.0时的迁移说明 迁移客户端代码 观察管理 Java API C API 迁移服务器数据 迁移服务器配置 自ZooKeeper 2.2.1以来的变化 ...
- springcloud入门——zookeeper
1.zookeeper初始 zookeeper是一个分布式协调工具,可以实现注册中心功能.换而言之,zookeeper和eureka一样,是用于充当服务注册功能服务器的一个springcloud插件. ...
- Zookeeper的快速入门(Curator)
ZooKeeper 一.初始ZooKeeper Zookeeper 是 Apache的一个项目,并且是一个树形目录服务,简称zk. Zookeeper 是一个分布式的.开源的分布式应用程序的协调服务. ...
- Zookeeper的学习与应用
1初始zookeeper zookeeper是一个树形目录结构:通俗地讲,ZooKeeper是动物园管理员,它是拿来管大象 Hadoop.鲸鱼 HBase.Kafka等的管理员: Zookeeper主 ...
- Redis 分布式锁笔记
Redis 分布式锁笔记 (公众号:水滴与银弹)深度剖析:Redis分布式锁到底安全吗? 一.初识分布式锁 1.什么是分布式锁 分布式环境下,我们在写多线程程序时,避免同时操作一个共享变量产生数据 ...
- api 创建zookeeper客户端_zookeeper分布式锁原理及实现
前言 本文介绍下 zookeeper方式 实现分布式锁 原理简介 zookeeper实现分布式锁的原理就是多个节点同时在一个指定的节点下面创建临时会话顺序节点,谁创建的节点序号最小,谁就获得了锁,并且 ...
- 【ZooKeeper Notes 3】ZooKeeper Java API 使用样例
查看PDF版本 转载请注明:@ni掌柜 nileader@gmail.com ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务框架,包含一组简单的原语集合.通过这些原语言的组合使用, ...
- 亲 , Zookeeper了解一下 : 概述
2019独角兽企业重金招聘Python工程师标准>>> 在学习的过程中,我们总需要一个来自灵魂的拷问: 为什么? 为什么会产生Zookeeper 这个问题有深度,那要从五百万年说起, ...
最新文章
- 心中无码,自然高清 | 联合去马赛克与超分辨率研究论文Pytorch复现
- diy nas配置推荐2020_2020适合大学生专业需求及玩游戏的电脑配置推荐
- 《梦断代码Dreaming In Code》阅读计划
- Android 视频播放器 VideoView 的使用,播放本地视频 和 网络 视频
- linux下使用c++17编译filesystem
- 一切的开始源于网络的虚拟
- 这家厂商正式宣布退出手机市场:将加强汽车零部件业务
- token 微信access 过期_如何设计 QQ、微信等第三方账号登陆 ?以及设计数据库表!...
- redis mysql qps_14_redis如何通过读写分离来承载读请求QPS超过10万+?
- 无限滚动加载最佳实践
- linux 搭建LAMP平台手册
- 菜比如我的漫漫react学习路(二)
- python安装模块方法_Python模块安装方法
- 【STM32F407F429H7的DSP教程】第34章 滤波器基础知识
- 弹簧优化设计MATLAB,基于MATLAB的圆柱螺旋弹簧的优化设计
- python爬取豆瓣Top250-改进版
- AUTOCAD——直线命令
- 隔离DCDC电源模块和非隔离DCDC电源模块不同之处
- 阻止switch开关的事件冒泡
- VsCode超实用插件推荐,让你的开发效率火力全开