Windows里正确安装Zookeeper以服务运行

    不多说,直接上干货!

为什么要在Win下来安装Zookeeper呢?

    其实玩过大数据的人很清楚,在Linux下我更不说了。在win下,如Disconf 、Dubbo等应用。

    所以,它的应用是非常广的。

 

  ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

  ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

  ZooKeeper包含一个简单的原语集,提供Java和C的接口。

  ZooKeeper代码版本中,提供了分布式独享锁、选举、队列的接口,代码在zookeeper-3.4.8\src\recipes。其中分布锁和队列有Java和C两个版本,选举只有Java版本。

  zookeeper下载地址:

http://archive.apache.org/dist/zookeeper/zookeeper-3.4.8/

  (可自行在官网下载自己需要的版本)

  我这里以zookeeper-3.4.8为例。

  我的是解压到指定目录下  D:\SoftWare\zookeeper-3.4.8

  本博文,只关心其bin目录和conf目录。

  

  修改D:\SoftWare\zookeeper-3.4.8\conf下的:zoo_sample.cfg文件名,改为:zoo.cfg

  以下是默认的内容

  

# The number of milliseconds of each ticktickTime=2000# The number of ticks that the initial # synchronization phase can takeinitLimit=10# The number of ticks that can pass between # sending a request and getting an acknowledgementsyncLimit=5# the directory where the snapshot is stored.# do not use /tmp for storage, /tmp here is just # example sakes.dataDir=/tmp/zookeeper# the port at which the clients will connectclientPort=2181# the maximum number of client connections.# increase this if you need to handle more clients#maxClientCnxns=60## Be sure to read the maintenance section of the # administrator guide before turning on autopurge.## http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance## The number of snapshots to retain in dataDir#autopurge.snapRetainCount=3# Purge task interval in hours# Set to "0" to disable auto purge feature#autopurge.purgeInterval=1

  主要修改配置中的 dataDir ,根据自己实际修改即可,如下

  比如我这里是

dataDir=D:\SoftWare\zookeeper-3.4.8\data

  所以,我的为

# The number of milliseconds of each ticktickTime=2000# The number of ticks that the initial # synchronization phase can takeinitLimit=10# The number of ticks that can pass between # sending a request and getting an acknowledgementsyncLimit=5# the directory where the snapshot is stored.# do not use /tmp for storage, /tmp here is just # example sakes.dataDir=D:\SoftWare\zookeeper-3.4.8\data# the port at which the clients will connectclientPort=2181# the maximum number of client connections.# increase this if you need to handle more clients#maxClientCnxns=60## Be sure to read the maintenance section of the # administrator guide before turning on autopurge.## http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance## The number of snapshots to retain in dataDir#autopurge.snapRetainCount=3# Purge task interval in hours# Set to "0" to disable auto purge feature#autopurge.purgeInterval=1

  进入cmd下进bin目录,执行 zkserver.cmd 即可启动

    至此,完成!

下载的Zookeeper是.cmd的批处理命令运行的,默认没有提供以windows服务的方式运行的方案!!!

    为此,本文下载prunsrv 来作为zookeeper的服务管理。

    将zookeeper做成 windows 服务,避免每次关闭后,再启动还需要使用cmd。

下载prunsrv

  下载地址:http://archive.apache.org/dist/commons/daemon/binaries/windows/  ,找到commons-daemon-1.0.15-bin-windows

解压后复制以下文件

  注意:64位系统的机器用amd64/prunsrv.exe 
  (1)复制 commons-daemon-1.0.15-bin-windows/amd64/prunsrv.exe 至 zookeeper-3.4.8\bin目录下
      这是做服务的执行程序

  (2)复制 commons-daemon-1.0.15-bin-windows/prunmgr.exe 至 zookeeper-3.4.8\bin目录下
      监控服务配置及运行的程序

 为Zookeeper配置环境变量

  添加ZOOKEEPER_SERVICE, ZOOKEEPER_HOME两个环境变量

   ZOOKEEPER_SERVICE:服务名称(不要有中文),我这里取的是,命名为zookeeper_service

   ZOOKEEPER_HOME:设置到zookeeper-3.4.8目录下

  

  新建 zkServerStop.cmd 文件

  在zookeeper-3.4.8\bin目录下添加一个 zkServerStop.cmd 文件.

  (注:cmd文件或者下面的bat文件,我们都可以先创建一个文本文件,然后把下面的内容copy进去,然后修改文本文件的后缀名即可)

   内容如下:  

@echo off setlocal TASKLIST /svc | findstr /c:"%ZOOKEEPER_SERVICE%" > %ZOOKEEPER_HOME%\zookeeper_svc.pid FOR /F "tokens=2 delims= " %%G IN (%ZOOKEEPER_HOME%\zookeeper_svc.pid) DO (    @set zkPID=%%G ) taskkill /PID %zkPID% /T /F del %ZOOKEEPER_HOME%/zookeeper_svc.pid endlocal

 

   新建一个批处理安装文件install.bat

  (注: install.bat 文件也需要放在zookeeper-3.4.8\bin 目录下才可以)

prunsrv.exe "//IS//%ZOOKEEPER_SERVICE%" ^        --DisplayName="Zookeeper (%ZOOKEEPER_SERVICE%)" ^        --Description="Zookeeper (%ZOOKEEPER_SERVICE%)" ^        --Startup=auto --StartMode=exe ^        --StartPath=%ZOOKEEPER_HOME% ^        --StartImage=%ZOOKEEPER_HOME%\bin\zkServer.cmd ^        --StopPath=%ZOOKEEPER_HOME%\ ^        --StopImage=%ZOOKEEPER_HOME%\bin\zkServerStop.cmd ^        --StopMode=exe --StopTimeout=5 ^        --LogPath=%ZOOKEEPER_HOME% --LogPrefix=zookeeper-wrapper ^        --PidFile=zookeeper.pid --LogLevel=Info --StdOutput=auto --StdError=auto

最后在cmd中以管理员身份运行install.bat(注:其实我想说在zookeeper-3.4.8\bin目录下,双击install.bat文件就可以了,然后进入服务管理,就可以看到相应的服务了,不过这时候还没启动,右击启动即可。)

 查看: 开始→运行(Windows+R快捷键也能调出运行)   输入:services.msc确定

      如果你想彻底删除这个服务,则

  开始”——“运行”——“regedit”)然后依次打开HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services

原文地址:https://www.cnblogs.com/zlslch/p/8561791.html

原文地址:https://www.cnblogs.com/jpfss/p/9181174.html

时间: 2024-08-14 10:00:50

Windows里正确安装Zookeeper以服务运行的相关文章

Windows里如何正确安装Redis以服务运行(博主推荐)(图文详解)

不多说,直接上干货! 注意 : Redis官方并没有提供Redis的windows安装包,但在github上, 有相关的下载地址. 一.Redis的下载地址 相关的下载地址,如下: https://github.com/ServiceStack/redis-windows/tree/master/downloads 也可以到我的百度网盘下载,下载地址:http://pan.baidu.com/s/1gf2nuin,我下载的版本是redis-64.3.0.503.zip(64位的win系统,red

windows环境下安装 zookeeper

我们下载下来的zookeeper的安装包是.tar.gz格式的,但是还是可以在windows下运行. 下载地址 http://mirrors.hust.edu.cn/apache/zookeeper/ 下载stable路径下的版本 把下载的zookeeper的文件解压到指定目录 C:\zookeeper-3.4.6 Zookeeper 的配置文件在 conf 目录下,这个目录下有 zoo_sample.cfg 和 log4j.properties,你需要做的就是将 zoo_sample.cfg

Windows环境下安装配置Mosquitto服务及入门操作介绍

#### 原创:DisSun ########## #### 时间:2019.03.10 ####### 关于Mosquitto配置的资料网上还是有几篇的,但是看来看去,基本上都是基于Linux.基于Window的凤毛麟角,看上去貌似配置的东西相差不大,实操过程中真的烦透了,配置就是不成功,这次把自己实践过程中的东西记录一下,分享出来. 一.概念梳理1.Mosquitto是一款实现了消息推送协议MQTT 3.1的开源消息代理软件,提供轻量级的.支持可订阅/可发布的消息推送模式,是设备与设备之间的

Windows环境下安装Zookeeper

zookeeper版本:3.4.8 安装步骤: 1.去apache官网下载zookeeper-3.4.8.tar.gz url:http://mirrors.hust.edu.cn/apache/zookeeper/ 2.解压下载的文件 3.进入zookeeper-3.4.8\conf目录下,复制zoo_sample.cfg文件,然后改名为zoo.cfg,因为zookeeper启动后,只认识zoo.cfg中的所有设置和配置. 4.打开zoo.cfg文件,修改dataDir和dataLogDir的

windows server 2012 安装完操作系统以后运行不稳定在不定时会自动重启(software protection 在作怪)

1.导致该问题的原因可能是最近安装了莫名的其它软件,导致该服务software protection 服务促使系统自动重启. 2.解决的办法就是将software protection 服务停止使用能够满足暂时不会自动重启. 注意一点:Software protection服务是win7旗舰版32位系统中提供数字许可证的下载.安装和实施,当该服务被禁用时可能会导致操作系统和许可的应用程序以通知的模式运行,这样会给我们打开程序出现麻烦.最好的解决办法是通过一台好的服务器将该服务进行替换.具体的操作

Windows下Go安装&环境配置&编译运行

Go下载安装 官方Go下载站点:https://golang.google.cn/ 也可以选择:https://studygolang.com/dl 配置环境变量 常用环境变量 GOROOT GOROOT是Go的安装目录,在Windows中,GOROOT的默认位置是C:/go,而在Mac OS或者Linux中GOROOT的默认位置是/usr/local/go,如果Go安装在其他目录,而需要将GOROOT的位置修改为对应的目录. 另外,GOROOT/bin下包含Go为我们提供的工具链,因此应该将G

windows系统下安装下载redis服务

通常情况下我们下载东西会在官方进行下载,但是由于redis官方不支持windows,redis要安装在window系统下,在官方下载的redis压缩包解压后没有redis-server.exe.所以我是在gitHub下载的.Https://github.com/MSOpenTech/redis/release 有镜像文件也有zip压缩包,我下载了zip压缩. 解压后,打开安装目录,双击redis-server.exe,弹出dos命令框,输入redis-server --service-insta

无法启动调试 没有正确安装调试器

启动调时错误 " 无法启动调试 没有正确安装调试器 请运行安装程序安装或修复 调试器 " 的解决办法 這個問題的重點在于 Machine Debug Manager 这个服务 是否存在并正常 啟動 . 先檢查 本地服务 ( 在运行处输入 :services.msc 命令启动 ) 是否有 Machine Debug Manager 这个服务,如果没有按如下步骤操作 追加 : 1 ,在运行处输入 cmd 2 ,然后输入命令: cd C:\Program Files\Common Files

Neo4j 第一篇:在Windows环境中安装Neo4j

图形数据库(Graph Database)是NoSQL数据库家族中特殊的存在,用于存储丰富的关系数据,Neo4j 是目前最流行的图形数据库,支持完整的事务,在属性图中,图是由顶点(Vertex),边(Edge)和属性(Property)组成的,顶点和边都可以设置属性,顶点也称作节点,边也称作关系,每个节点和关系都可以由一个或多个属性.Neo4j创建的图是用顶点和边构建一个有向图,其查询语言cypher已经成为事实上的标准. 关系型数据库只对单个Join操作进行优化查询,而多重Join操作查询的性