zookeeper启动闪退

2023-05-16

下载好zookeeper后想启动zookeeper,如果是windows直接运行%zookeeer安装目录%/bin/zkServer.cmd即可,运行的时候可能会出现闪退的问题。

首先要定位到问题,闪退的原因可能有几种。找到闪退的原因然后对症下药。

实际上这个zkServer.cmd是一个脚本文件,脚本里面有个命令pause。可以让程序暂停到这里不往下运行。类似于前端的debgger。和后端的断点debug启动服务。

打开zkServer.cmd文件在内容最后加上pause

@echo off
REM Licensed to the Apache Software Foundation (ASF) under one or more
REM contributor license agreements.  See the NOTICE file distributed with
REM this work for additional information regarding copyright ownership.
REM The ASF licenses this file to You under the Apache License, Version 2.0
REM (the "License"); you may not use this file except in compliance with
REM the License.  You may obtain a copy of the License at
REM
REM     http://www.apache.org/licenses/LICENSE-2.0
REM
REM Unless required by applicable law or agreed to in writing, software
REM distributed under the License is distributed on an "AS IS" BASIS,
REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
REM See the License for the specific language governing permissions and
REM limitations under the License.

setlocal
call "%~dp0zkEnv.cmd"

set ZOOMAIN=org.apache.zookeeper.server.quorum.QuorumPeerMain
echo on
call %JAVA% "-Dzookeeper.log.dir=%ZOO_LOG_DIR%" "-Dzookeeper.root.logger=%ZOO_LOG4J_PROP%" -cp "%CLASSPATH%" %ZOOMAIN% "%ZOOCFG%" %*
pause # 在该位置加上这个pause
endlocal

重新启动zkServer.cmd

定位问题。我遇到的问题有两种情况

  1. 找不到zoo.cfg文件

​ 在下载zookeeper后,在%zookeeper安装目录%/conf目录下有一个zoo.sample.cfg文件,这个文件就是给你一个模板,告诉你zookeeper应该怎么配置。你可以直接把zoo.sample.cfg文件改名为zoo.cfg再重启zkServer.cmd,问题解决

​ 在zoo.cfg中配置了高可用的一些属性

# Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时# 间就会发送一个心跳。tickTime以毫秒为单位。
tickTime=2000
    
# Leader-Follower初始通信时限
# 集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数#(tickTime的数量)。
initLimit=10
    
#Leader-Follower同步通信时限
#集群中的follower服务器与leader服务器之间请求和应答之间能容忍的最多心跳数(tickTime的数量)。
syncLimit=5
    
#数据文件目录
#Zookeeper保存数据的目录,默认情况下,Zookeeper将写数据的日志文件也保存在这个目录里。
dataDir=E:/zookeeper/data
# 客户端连接端口
# 客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
clientPort=2181

一个数据节点中包含镜像的个数,实际上zookeeper他是为了实现服务的高可用性,默认会有3个节点,zookeeper集群有一个特性:集群中只要有过半机器正常,就可以对外开放,默认有三个机器,这样有一台机器挂掉时,这个集群还是能够使用的一般设置为奇数个原因是3个和4个节点的容忍度是一样的可以省一台机器。
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
  1. jdk没有配置,或者jdk路径出错。

    zookeeper是一个java进程依赖于jdk,可以查看一下%zk安装目录%/bin/zkEnv.cmd文件。

    @echo off
    REM Licensed to the Apache Software Foundation (ASF) under one or more
    REM contributor license agreements.  See the NOTICE file distributed with
    REM this work for additional information regarding copyright ownership.
    REM The ASF licenses this file to You under the Apache License, Version 2.0
    REM (the "License"); you may not use this file except in compliance with
    REM the License.  You may obtain a copy of the License at
    REM
    REM     http://www.apache.org/licenses/LICENSE-2.0
    REM
    REM Unless required by applicable law or agreed to in writing, software
    REM distributed under the License is distributed on an "AS IS" BASIS,
    REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    REM See the License for the specific language governing permissions and
    REM limitations under the License.
    
    set ZOOCFGDIR=%~dp0%..\conf
    set ZOO_LOG_DIR=%~dp0%..
    set ZOO_LOG4J_PROP=INFO,CONSOLE
    
    REM for sanity sake assume Java 1.6
    REM see: http://java.sun.com/javase/6/docs/technotes/tools/windows/java.html
    
    REM add the zoocfg dir to classpath
    set CLASSPATH=%ZOOCFGDIR%
    
    REM make it work in the release
    SET CLASSPATH=%~dp0..\*;%~dp0..\lib\*;%CLASSPATH%
    
    REM make it work for developers
    SET CLASSPATH=%~dp0..\build\classes;%~dp0..\build\lib\*;%CLASSPATH%
    这个地方就是配置启动zk找到的配置文件,默认去conf下的zoo.cfg文件,也就是出现闪退第一种情况去查找这个文件改名为zoo.cfg的原因
    set ZOOCFG=%ZOOCFGDIR%\zoo.cfg
    
    @REM setup java environment variables
    
    if not defined JAVA_HOME (
      echo Error: JAVA_HOME is not set.
      goto :eof
    )
    
    set JAVA_HOME=%JAVA_HOME:"=%
    
    if not exist "%JAVA_HOME%"\bin\java.exe (
      echo Error: JAVA_HOME is incorrectly set.
      goto :eof
    )
    
    set JAVA="%JAVA_HOME%"\bin\java
    找到环境变量,看看有没有配置这个"JAVA_HOME"环境变量,注意这个值中的目录文件,在系统的环境变量中值不要有\
        我的环境变量的值是C:\Program Files\Java\jdk1.8.0_151
        如果你在这个后面有一个\那么zk去找环境变量的时候就会报错不要有\
    
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

zookeeper启动闪退 的相关文章

  • Get与Post

    一 HTTP请求的两种方法 xff1a 在客户机和服务器之间进行请求 响应时 xff0c 两种最常被用到的方法是 xff1a GET 和 POST 二 HTTP超文本传输协议 xff08 HyperText transfer Protoco
  • SVN文件没有对勾感叹号的状态提示

    今天小编在用SVN下载好项目一看 xff0c 咦 为啥没有提示有没有修改的状态呢 组长发话了 xff1a 这样你以后怎么提交呢 xff0c 总不能时刻记得自己改那了吧 xff0c 纠结 决定 下午就开始解决这个问题 xff0c 不同的问题不
  • 计算机网络知识点

    复习计算机知识网络总结小的知识点 xff0c 看图
  • 自考总结

    再一次参加自考 xff0c 这次感触很多 xff0c 在复习还有三遍读书法方面更深入的理解 为什么要三遍读书法为什么要思维导图 在学习计算机网络时自己对这个没怎么接触过 xff0c 但是在不断的看书画思维导图的过程中慢慢理解了这本书的思路
  • VS2015 community评估期已结束

    今天打开VS2015 community忽然弹出框提示VS2015 community评估期已结束 xff0c 请登录已结束锁定 第一反应是需要秘钥 xff0c 发现咦 这个软件不太一样不需要秘钥 xff0c 只需要登录就可以使用 那这就简
  • 嵌入式 dns需要的几个库

    add nss and resolv lib for dns 34 libnss dns 34 34 libnss files 34 34 libresolv 34
  • 解决Mac无法访问localhost和127.0.0.1

    启动服务apache服务器 sudo apachectl start 失败的话 xff0c 重启服务 sudo apachectl restart 效果如下 xff1a localhost 127 0 0 1
  • JQuery学习

  • ionic入门软件安装学习

    1 先安装nodejs网址 xff1a xff0c 安装完成检查安装是否成功 图中标记1命令为检查nodejs是否安装成功 2 安装cordova和ionic xff0c 建议安装版本为3 12 0或3 19 0 xff08 这两个无差别
  • VSCode好用插件介绍

    1 Vscode icons xff1a 用于项目中文件类型显示对应的图标 xff0c 提高文件定位的效率 2 TSLint xff1a 用于TS文件规范检测 3 Path Intellisense xff1a 用于提示导入文件时候的路径
  • JDK安装

    1 JDK JRE JVM是什么 xff1f JDK Java Development Kit 是 Java 语言的软件开发工具包 SDK JRE是Java Runtime Environment缩写 xff0c 指Java运行环境 JVM
  • java运行

    1 java语言特性 简单性 xff1a java舍弃了C 43 43 中难以掌握的不安全的功能 如 xff1a 指针 多继承等 java语言底层是C 43 43 实现的 面向对象 xff1a java和C 43 43 一样 xff0c 是
  • 浏览器调试注释部分中文乱码

    今天在浏览器端页面调试的时候发现自己的写的注释显示乱码 xff0c 在看代码时比较费力 xff0c 搜索结果显示字体格式的问题 解决方案 xff1a 1 打开浏览器设置 常规设置 网络内容 自定义字体 2 编码 Unicode xff08
  • ionic滑动加载

    首先页面上添加滚动条 xff1a lt ion infinite scroll ionInfinite 61 34 doInfinite event 34 threshold 61 34 100px 34 gt lt ion infinit
  • 安装IDEA导入项目

    1 找到安装包双击安装 xff0c 点击下一步 2 选择安装路径 3 修改数据类型系统选择 xff1a createDesktop shortcut xff0c create associations的复选框全部选择 xff0c 点击nex
  • IONIC折叠功能

    这两天小编在实现一个页面分等级 xff0c 每个等级下面有数据 xff0c 单击可以将每个等级下的数据折叠展开 xff0c 代码实现如下 xff1a 一 首先获取数据 ts文件内容 xff1a ts文件中 定义变量用来存放数据 xff0c
  • 数据库设计字段中包含关键字

    今天写完一条线在运行时方法可以走但是数据库插入数据不成功报错 xff0c 把数据库语句复制到数据库中新建查询报如下错误 xff1a 后来通过检查发现 xff0c 是因为数据库字段中index为关键字 xff0c 在写的时候有特定的语法格式
  • 强化学习(一)-DQN控制倒立摆

    这里 xff0c 使用gym环境实现仿真 xff0c 从小车倒立摆的环境模型中 xff0c 我们不难看到 xff0c 小车倒立摆的状态空间为共四个 xff0c 动作空间为为两个 xff0c 当动作为1时 xff0c 施加正向的力10N 当动
  • java变量类型

    这几天小编在学习java时看到很多变量很懵圈 xff0c 去学习了一下 1 静态变量 xff08 类变量 xff09 xff1a 独立于方法之外的变量 xff0c 用 static 修饰 类变量也称为静态变量 xff0c 在类中以stati
  • PowerDisigner添加数据描述

    1 首先创建表 xff0c 然后双击表 2 弹出框后选择Columns 3 点击Coustomize Columns and Filter 或者使用快捷键 xff1a Ctrl 43 U 4 在comment前面打对勾 5 列集合里面会多出

随机推荐

  • Mapper对于数据求和返回值为null怎么解决

    在对于数据求和时返回值为null 报如下错误 数据库语句如下 SELECT FROM user WHERE user id 61 userid and YEARWEEK date format create time 39 Y m d 39
  • Ionic圆环进度条

    最近小编做的项目有个业务需求是对于自己的情况和目标有一个进度环的展示 如图 代码如下 Ts文件中 先定义两个变量max以及current 圆环进度条 color string 61 39 1890fb 39 backgound string
  • task-bug-detail.ts ispart of the declarations of 2 modules: APPModel

    Ionic手机端项目在打包的时候报错 task bug detail ts ispart of the declarations of 2 modules AppModule 出现原因在APPModel中 APPModel中声明 task
  • 字符串过长时截取字符串前n个字

    今天小编在做项目时发现现实内容过长产生乱码一样的效果 xff0c 就用截取字符串长度来优化了一下 方法代码如下 xff1a 实现的效果为超过16个字符串后 xff0c 从第15个字符串开始用 代替 if arr i reason 61 34
  • idea的xml文件Tag name expected

    小编在mapper文件中写sql语句时提示Tag name expected xff0c 找到原因是因为xml不识别 lt 号需要用特定转义符来表示 lt 号 SELECT CASE WHEN SUM integral is null Th
  • jenkins构建成功后提交的代码不起作用

    小编今天用Jenkins构建之后不报错 xff0c 但是打开软件提交代码的这个功能没有实现 最后定位找原因时发现提交的代码没有拉过去 xff0c 在本地build时报错 xff1a 提示引用两个组件Page xff0c 当这里报错时Jenk
  • 添加spring cloud微服务

    在之前的spring cloud项目中添加微服务 1 右键父项目文件夹 xff0c new添加maven项目 2 选择next 3 对于微服务自定义名字 4 微服务名字选定后对微服务的文件夹保存地址进行选择 5 创建成功
  • 2018半年博客总结

    自己接触编程三年了 xff0c 时间很快 xff0c 自己这半年经历了大学毕业答辩 xff0c 还有河北大学自考答辩 xff0c 感受到了别人的成长也看到了自己的成长 管理 这一个月刚当了小组长 xff0c 在之前都是自己领任务完成任务就好
  • ftp操作,权限设置及用户创建的各种坑

    首先说下我的环境 xff0c windows7 xff0c iis部署的的ftp服务器 坑1 xff0c 必须使用文件夹里面 xff0c 输入ip地址才能进去 xff0c ftp 192 168 1 12就能进去了 不要用IE和浏览器 xf
  • XXL-Job 没有到主机的路由

    最近项目需要添加定时任务 xff0c 使用了XXL job xff0c 在执行时报错界面如下 xff1a 1 查到原因说可能端口号没有开 服务器查看端口号 xff1a 9991防火墙端口未开启 2 解决方案 xff1a 打开服务器防火墙端口
  • 本地开启网关

    因为本地调试XXL JOB需要通过本地IP以及端口 xff0c 本地没有端口需要添加 xff0c 步骤如下 xff1a 1 2 3 4 5 6 7 8 9
  • 游标

    游标 xff08 Cursor xff09 是处理数据的一种方法 xff0c 为了查看或者处理结果集中的数据 xff0c 游标提供了在结果集中一次一行或者多行前进或向后浏览数据的能力 可以把游标当作一个指针 xff0c 它可以指定结果中的任
  • 自考总结

    又一次自考来临 xff0c 越来越深的体会是课本基础知识很重要 理解记忆 xff0c 还有各种方式 xff0c 不限于书本上的理论知识 xff0c 可以运行C 43 43 软件去写代码运行理解 思维导图是一遍一遍加深自己理解的过程 xff0
  • MySQL启动报错

    1 问题描述 2 解决方案 本地计算机上的MySQL服务启动后停止 某些服务在未由其他服务或程序使用时将自动停止 1 安装完MySQL后配好环境启动SQL服务报错 xff0c 如下图 xff1a 2 解决方案 1 xff09 查找报错原因
  • No compiler is provided in this environment

    小编今天在运行项目时报错 xff0c 如下图 xff1a 第一行错误排查原因 xff0c 发现是因为版本不对应 xff0c 找到项目引用版本的地方发现没有错误 xff0c 内容如下 xff1a 第二行错误排查原因 xff1a java编译环
  • 无法打开内核设备“\\.\Global\vmx86”

    1 今天小编在继续运行挂起的虚拟机时提示无法打开内核设备 Global vmx86 系统找不到指定的文件 是否在安装 VMware Workstation 后重新引导 未能初始化监视器设备 2 出现该问题的原因是 xff1a 是虚拟机服务没
  • 【Redis】redis学习

    目录 redis数据形式redis使用命令Redis特性 redis数据形式 redis数据形式 xff1a key value xff1b redis所有存放数据都是String类型 数据类型指的是value的类型 xff1a Strin
  • 【Redis】Redis雪崩、 穿透

    目录 Redis穿透Redis雪崩热点key重建优化 Redis缓存中间件的使用 xff0c 极大的提升了应用程序数据查询的性能和效率 在使用Redis的过程中存在其他的问题 Redis穿透 雪崩 Redis穿透 redis穿透 xff1a
  • 【Redis】Redis的持久化

    Redis支持RDB和AOF两种持久化机制 xff0c 持久化有效的避免因进程退出造成的数据丢失问题 xff0c 当下次重启时利用之前的持久化文件即可实现数据恢复 RDB RDB持久化是把当前进程数据生成快照保存到硬盘的过程 xff0c 出
  • zookeeper启动闪退

    下载好zookeeper后想启动zookeeper xff0c 如果是windows直接运行 zookeeer安装目录 bin zkServer cmd即可 xff0c 运行的时候可能会出现闪退的问题 首先要定位到问题 xff0c 闪退的原