1下载Zookeeper

2安装启动测试

2.1上载压缩文件并解压

2.2新建 zookeeper配置文件

2.3安装JDK

2.4启动zookeeper

2.5查看zookeeper的状态

3将ZooKeeper设置为开机启动(可选)

3.1在init.d目录下新建脚本文件

3.1.1文件内容的第一种方案(推荐)

3.1.2文件内容的第二种方案

3.1.3其他说明

3.2执行一系列命令

3.3执行测试看是否开机启动

4报错及解决

4.1service zookeeper does not support chkconfig

4.2 Error contacting service. It is probably not running

5本博文相关的下载

关键字:CentOS7  zookeeper3.4.10   java

1下载Zookeeper

地址:http://mirror.bit.edu.cn/apache/zookeeper/

2安装启动测试

说明:(以下操作都是使员管理员账号进行的)

2.1上载压缩文件并解压

这里使用的是CentOS7的操作系统。在opt目录下新建一个名为zookeeper的目录,将下载得到的zookeeper-3.4.10.tar.gz文件上载上去。

如图:

进入到该目录下,命令是:

cd    /opt/zookeeper

执行解压命令:

tar    -zxvf    zookeeper-3.4.10.tar.gz

如图:

2.2新建zookeeper配置文件

Zookeeper需要一个名为zoo.cfg的配置文件,我们解压后,得到的是官方的示例文件,名为zoo_sample.cfg,这个文件在zookeeper根目录的conf子目录下。如果我们想使用默认配置,直接将该文件复制并且改名即可。里面可以配置端口号,是否启用集群等等,这里不展开,直接执行cp复制重命名。

命令是:

cp    /opt/zookeeper/zookeeper-3.4.10/conf/zoo_sample.cfg        /opt/zookeeper/zookeeper-3.4.10/conf/zoo.cfg

如图:

上面的命令生成了zoo.cfg

如图:

说明:zoo.cfg里可以配置东西,如果希望搭建zookeeper集群,请看该博文:

2.3安装JDK

在Linux上安装JDK都是一样的,虽然我们这里用的是CentOS7的操作系统,但是依然可以按照在Unbuntu上安装JDK的方法来安装,请参考该博文:

http://blog.csdn.net/pucao_cug/article/details/68948639

说明:你可的JDK安装路径和ZooKeeper安装路径可以和我的不一样,但是如果你的路径和我一样的话,在本博文第三章节,将ZooKeeper设置为开机启动的相关配置中,你可以不用修改那些配置内容,直接复制使用。

2.4启动zookeeper

进入到zookeeper的bin目录下,命令:

cd    /opt/zookeeper/zookeeper-3.4.10/bin

执行zkServer.sh脚本进行启动,命令是:

./zkServer.sh   start

如图:

2.5查看zookeeper的状态

如果此时不在zookeeper的bin 目录下,先进入到该目录下:

cd    /opt/zookeeper/zookeeper-3.4.10/bin

执行命令查看zookeeper状态:

./zkServer.sh    status

如图:

standalone 是单机模式。

3将ZooKeeper设置为开机启动(可选)

3.1在init.d目录下新建脚本文件

进入到/etc/rc.d/init.d目录下,命令是:

cd    /etc/rc.d/init.d

新建一个名为zookeeper的文件,命令是:

touch    zookeeper

如图:

3.1.1文件内容的第一种方案(推荐)

使用vim命令修改文件内容,文件内容的写法有很多,除了上面的第一种方案,用下面的这种也可以:

  1. #!/bin/bash
  2. #chkconfig: 2345 10 90
  3. #description: service zookeeper
  4. export   JAVA_HOME=/opt/java/jdk1.8.0_121
  5. export   ZOO_LOG_DIR=/opt/zookeeper/log
  6. ZOOKEEPER_HOME=/opt/zookeeper/zookeeper-3.4.10
  7. su    root    ${ZOOKEEPER_HOME}/bin/zkServer.sh      "$1"

3.1.2文件内容的第二种方案

使用vim命令修改文件内容,文件内容是:

  1. #!/bin/bash
  2. #chkconfig: 2345 10 90
  3. #description: service zookeeper
  4. export    JAVA_HOME=/opt/java/jdk1.8.0_121
  5. export     ZOO_LOG_DIR=/opt/zookeeper/log
  6. ZOOKEEPER_HOME=/opt/zookeeper/zookeeper-3.4.10
  7. case  "$1"   in
  8. start)  su  root   ${ZOOKEEPER_HOME}/bin/zkServer.sh   start;;
  9. start-foreground)  su  root  ${ZOOKEEPER_HOME}/bin/zkServer.sh    start-foreground;;
  10. stop)  su  root   ${ZOOKEEPER_HOME}/bin/zkServer.sh   stop;;
  11. status)  su root  ${ZOOKEEPER_HOME}/bin/zkServer.sh    status;;
  12. restart)  su root   ${ZOOKEEPER_HOME}/bin/zkServer.sh   restart;;
  13. upgrade)su root   ${ZOOKEEPER_HOME}/bin/zkServer.sh   upgrade;;
  14. print-cmd)su root   ${ZOOKEEPER_HOME}/bin/zkServer.sh   print-cmd;;
  15. *)  echo  "requirestart|start-foreground|stop|status|restart|print-cmd";;
  16. esac

3.1.3 其他说明

注意1:新建文件的命令是touch,编辑文件的命令用vi和vim都行。如果不会使用vi和vim命令,直接在本地把文件编辑好,然后用远程工具上载上去都行,不过需要注意的是如果本地用的windows系统,需要把文件转为UNIX格式。转换工具有很多,例如使用Notepad++

如图:

注意2:两个方案中的文件头部#注释的部分不能少,而且文件中诸如JDK路径,zookeeper路径都需要修改为你自己的。

3.2 执行一系列命令

为新建的/etc/rc.d/init.d/zookeeper文件添加可执行权限,命令是:

chmod  +x  /etc/rc.d/init.d/zookeeper

把zookeeper这个脚本添加到开机启动项里面,命令是:

chkconfig  --add   zookeeper

如图:

如果想看看是否添加成功,命令是:

chkconfig  --list

如图:

3.3执行测试看是否开机启动

使用命令重启机器,命令是:

reboot

方法一

查看zookeeper的状态

重启机器,然后不手动启动zookeeper的情况下,执行命令:

service  zookeeper   status

如图:

方法二

查看2181端口是否启用,执行命令:

lsof  -i:2181

如图:

方法三

查看网络状态,执行命令:

netstat   -lntup

如图:

4报错及解决

4.1 service zookeeper does not support chkconfig

执行chkconfig  --add  zookeeper报错:

        servicezookeeper does not support chkconfig

        问题原因和解决:

         /etc/rc.d/init.d/ zookeeper脚本中头部没有添加下面这几句话(description可以随便写):

  1. #!/bin/bash
  2. #chkconfig:2345 10 90
  3. #description:service zookeeper

4.2Error contacting service. It is probably not running

执行service  zookeeper  status报错:

JMX enabled by default

Usingconfig: /opt/zookeeper/zookeeper-3.4.10/bin/../conf/zoo.cfg

Errorcontacting service. It is probably not running.

问题原因和解决:

/etc/rc.d/init.d/ zookeeper没有配置对,请看3.1.1和3.1.2的配置,里面必须要有export  JAVA_HOME这一句话,后面的路径是你自己的JDK安装路径。

至于export    ZOO_LOG_DIR=/opt/zookeeper/log这一句的话可有可无,意思是指定zookeeper的启动日志存放目录,如果该目录不存在,你必须手动创建一个。

5本博文相关的下载

上面这些东西要么可以从网上下载到,或者可以从这里下载,包括配置文件。

下载地址是:http://download.csdn.net/detail/pucao_cug/9834762

Linux上安装ZooKeeper并设置开机启动(CentOS7+ZooKeeper3.4.10)的更多相关文章

  1. Linux上安装Zookeeper以及一些注意事项

    最近打算出一个系列,介绍Dubbo的使用. 分布式应用现在已经越来越广泛,Spring Could也是一个不错的一站式解决方案,不过据我了解国内目前貌似使用阿里Dubbo的公司比较多,一方面这个框架也 ...

  2. linux上安装zookeeper

    本文先讲述Linux下单机版的安装流程,集群的配置后续再补上.关于Zookeeper的基本介绍和原来在本文不做更多介绍,可以自行查找.本文的操作流程相对简单,仅做备忘而已. 第一步  安装JDK:   ...

  3. 源码编译安装nginx及设置开机启动项

    1.上传nginx文档:解压到/data目录下,并安装依赖包tar xf nginx-1.20.1.tar.gz -C /data/cd /data/nginx-1.20.1/ && ...

  4. centos7安装docker并设置开机启动

    版本要求:查看内核版本,需大于3.10 [root@localhost ~]# uname -r -.el7.x86_64 更新内核:如果是生产机器务必慎重更新内核,避免出现不必要的问题. sudo ...

  5. CentOS7 安装 Redis 并设置开机启动

    1.下载 https://redis.io/download cd /usr/local/src wget -c http://download.redis.io/releases/redis-3.2 ...

  6. CentOS 7.6 64位安装docker并设置开机启动

    步骤如下 安装docker.docker-compose yum -y install docker-io docker-compose 启动docker service docker start 设 ...

  7. Linux的运行级别和设置开机启动服务的方式

    Linux的运行级别 什么是运行级别呢?简单点来说,运行级别就是操作系统当前正在运行的功能级别.级别是从0到6,具有不同的功能.这些级别定义在/ect/inittab文件中.这个文件是init程序寻找 ...

  8. Linux系统中svn服务器设置开机启动

    安装完svn服务器后虽然好用但是因为经常重启Linux服务器,每次重启完就要去手动启动svn服务器,很是麻烦,于是在网上找了一些方法后,自己把svn服务器设置成开机启动 步骤一:安装svn服务器: h ...

  9. linux 上配置tomcat、mysql 开机启动

    1.tomcat 开机启动 方法一.修改系统文件 (已经尝试,可以) 1.修改/etc/rc.d/rc.local vi /etc/rc.d/rc.local 2.添加下面两行脚本,记住是两行,仅仅第 ...

随机推荐

  1. Oracle存储过程中调用DBLink同义词出现错误:PLS-00201: 必须声明标识符

    前几天编写一个存储过程,需要访问远程数据库的字段,于是建立一个dbLink并建了同义词: CREATE PUBLIC DATABASE LINK orcl@dbc CONNECT TO orcl ID ...

  2. Oracle表闪回功能

    1.启用表闪回首先要在表上支持行移动(在数据字典中设置标识来标识该操作可能会改变行ID,即同一条数据闪回成功后主键都一样,但行ID其实已经发生变化了) SQL> alter table base ...

  3. (二)this、call和apply

    在javascript中,this关键字总让一些初学者迷惑,Function.prototype.call, Function.prototype.apply这两个方法广泛的运用.我们有必要理解这几个 ...

  4. Java常见对象之String

    String类的概述 String 类代表字符串.Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现.字符串是常量,一旦被赋值,就不能被改变. String ...

  5. .net core 2.2 部署CentOS7(4)CentOS7下载并安装.NET SDK(软件开发工具包)

    目录: .net core 2.2 部署CentOS7(1)安装虚拟机 .net core 2.2 部署CentOS7(2)给虚拟机安装CentOS7 .net core 2.2 部署CentOS7( ...

  6. Merge into用法

    简单的例子:好记性不如烂笔头 其基本语法规则是 merge into 目标表 a using 源表 b on(a.条件字段1=b.条件字段1 and a.条件字段2=b.条件字段2 ……) when ...

  7. PHP CURL库学习

    基本请求步骤 : // . 初始化 $ch = curl_init(); // . 设置选项,包括URL curl_setopt($ch, CURLOPT_URL, "http://www. ...

  8. OpenGL学习--08--基本渲染(灯光)

    1.tutorial08.cpp // Include standard headers #include <stdio.h> #include <stdlib.h> #inc ...

  9. Spring框架学习之概述

    一.什么是软件框架 打个比方就像建筑的混凝土框架,搭好了架子,工人只需要把墙填上. .特点: -半成品 -封装了特定的处理流程和控制逻辑 -成熟的,不断升级改造的软件 .框架和类库的区别 -框架一般是 ...

  10. AngularJs 第一个自定义指令编写

    公司在做一个OA系统, 包括移动端(从微信企业号进入OA系统),电脑端. 电脑端还是用的传统的easyui做界面,asp.net mvc作为服务端.这个技术已经很成熟了配合权限框架很快就能开发出来.但 ...