zoukankan      html  css  js  c++  java
  • ZooKeeper设置开机启动

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

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

              cd    /etc/rc.d/init.d

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

             touch    zookeeper

    如图:

          

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

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


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

    1.2文件内容的第二种方案

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

    #!/bin/bash
    #chkconfig: 2345 10 90
    #description: service zookeeper
    export JAVA_HOME=/usr/java/jdk1.7.0_45
    export ZOOKEEPER_HOME=/usr/local/zookeeper/zookeeper-3.4.6
    case "$1" in
      start) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh start;;
      start-foreground) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh start-foreground;;
      stop) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh stop;;
      status) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh status;;
      restart) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh restart;;
      upgrade)su root ${ZOOKEEPER_HOME}/bin/zkServer.sh upgrade;;
      print-cmd)su root ${ZOOKEEPER_HOME}/bin/zkServer.sh print-cmd;;
      *) echo "requirestart|start-foreground|stop|status|restart|print-cmd";;
    esac

    1.3 其他说明

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

             如图:

      

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

    2.1 执行一系列命令

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

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

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

           chkconfig  --add   zookeeper

    如图:

         

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

           chkconfig  --list

    如图:

          

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

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

          reboot

    方法一

    查看zookeeper的状态

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

           service  zookeeper   status

     如图:

       

    方法二

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

       lsof  -i:2181

    如图:

         

    方法三

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

    netstat   -lntup

    如图:

         

    报错及解决

     service zookeeper does not support chkconfig

            执行chkconfig  --add  zookeeper报错:

            servicezookeeper does not support chkconfig

            问题原因和解决:

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


     

    #!/bin/bash  

    #chkconfig:2345 10 90  

    #description:service zookeeper  



    Error 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的启动日志存放目录,如果该目录不存在,你必须手动创建一个。

  • 相关阅读:
    【JavaWeb】SpringBoot配置静态资源路径
    apache和nginx设置反向代理
    【other】idea格式化快捷键ctr+alt+L与qq锁定冲突
    【深入Java基础】各个Map类的比较与总结
    【EmguCv】瞳孔定位(二)
    【深入Java基础】LinkedHashMap的特点与原理
    彪神666(暴力即可)
    被打脸的潇洒哥(推递推式)
    送气球.jpg(模拟)
    赌神(逆向思维)
  • 原文地址:https://www.cnblogs.com/alter888/p/8868811.html
Copyright © 2011-2022 走看看