Zookeeper环境搭建
时间:2019-09-22
本文章向大家介绍Zookeeper环境搭建,主要包括Zookeeper环境搭建使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Zookeeper环境搭建
下载
从镜像站中下载最近版本
http://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/
从文档站中下载所有的历史版本
https://archive.apache.org/dist/zookeeper/
apache-zookeeper-3.5.5-bin.tar.gz 2019-05-20 18:40 10M
zookeeper-3.4.6.tar.gz 2016-01-10 17:11 17M
参考文档
https://zookeeper.apache.org/doc/r3.5.5/zookeeperStarted.html
单机环境
创建配置文件 conf/zoo.cfg
tickTime=2000
dataDir=D:\\chengxu\\apache-zookeeper-3.4.6\\data
clientPort=2181
windows启动
zkServer.cmd
D:\chengxu\apache-zookeeper-3.4.6\bin>zkServer.cmd
Linux启动
zkServer.sh start
Bugs
启动zookeeper时报错:
Caused by: java.net.BindException: Address already in use: bind
原因:
zookeeper最近的版本中有个内嵌的管理控制台是通过jetty启动,会占用8080 端口。
方案:
修改端口号:
1. 启动脚本zkServer.cmd中增加 -Dzookeeper.admin.serverPort=没有被占用的端口号
2. 在zoo.cfg中增加admin.serverPort=没有被占用的端口号
停用jetty AdminServer:
3. 启动脚本zkServer.cmd中增加 "-Dzookeeper.admin.enableServer=false"
效果:
2019-09-22 09:42:38,064 [myid:] - INFO [main:JettyAdminServer@112] - Started AdminServer on address 0.0.0.0, port 7000 and command URL /commands
dataDir配置后不起作用
原因:
左斜杠没有转义
错误:
D:\chengxu\apache-zookeeper-3.4.6\data
正确:
D:\\chengxu\\apache-zookeeper-3.4.6\\data
D:/chengxu/apache-zookeeper-3.4.6/data
原文地址:https://www.cnblogs.com/mozq/p/11568385.html
- 【设计模式】—— 桥接模式Bridge
- 【插件开发】—— 1 Eclipse插件开发导盲
- 【插件开发】—— 4 SWT编程须知
- 【插件开发】—— 5 SWT控件以及布局使用
- 【插件开发】—— 6 SWT 复杂控件使用以及布局
- 【插件开发】—— 7 SWT布局详解,不能再详细了!
- 【插件开发】—— 8 IPreferenceStore,插件的键/值存储!
- 【插件开发】—— 9 编辑器代码分块着色-高亮显示!
- 【插件开发】—— 10 JFace开发详解
- 【插件开发】—— 12 GEF入门
- 【插件开发】—— 13 GEF双击模型事件
- 给博客添加节日雪花
- 修改Cisco交换机密码
- MySQL服务无法正常启动的解决方法(1053错误)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 关于jasmine里debugElement.query和fixture.detectChanges的依赖关系
- 使用python批量转换文件编码为UTF-8的实现
- rxjs operator学习笔记
- python实现将两个文件夹合并至另一个文件夹(制作数据集)
- rxjs里使用from operator从一个generator里生成Observable
- 使用asyncScheduler进行Observable的延迟subscribe
- 解决flask接口返回的内容中文乱码的问题
- Android自定义控件实现带数值和动画的圆形进度条
- rxjs interval和take的混合使用
- Android自定义控件实现带文本与数字的圆形进度条
- 云函数Python依赖包安装,应用启动超时问题排查
- Android Volley扩展实现支持进度条的文件上传功能
- Android自定义控件实现球赛比分条效果
- rxjs里concat operators的用法
- rxjs里merge operators的用法