CentOS下service zookeeper does not support chkconfig的解决办法

最初的zookeeper执行脚本:

#! /bin/bash

ZOOKEEPER_PATH=/usr/appdata/zookeeper-3.4.6/bin/

case "$1" in
     start)
echo "start zookeeper service..."
sh ${ZOOKEEPER_PATH}/zkServer start
;;
stop)
echo "stop zookeeper service..."
sh ${ZOOKEEPER_PATH}/zkServer stop
;;
     restart)
echo "restart zookeeper service..."
sh ${ZOOKEEPER_PATH}/zkServer restart
;;   
     status)
echo "zookeeper status"
sh ${ZOOKEEPER_PATH}/zkServer status
;; 
     *)
echo "require start|stop|status|restart"
exit1
;;
esac

为了方便管理,我们常常喜欢在Linux中将之安装为服务,然后就可以使用服务来管理。

但是当我们运行安装服务的命令时候

#chkconfig --add zookeeper

常常会出现:

service zookeeper does not support chkconfig

问题解决办法如下:

必须把下面两行注释放在/etc/init.d/zookeeper文件中

#vi /etc/init.d/zookeeper

添加下面两句到 #!/bin/bash 之后:

# chkconfig:   2345 10 90

# description:  zookeeper

其中2345是默认启动级别,级别有0-6共7个级别。

  等级0表示:表示关机   

  等级1表示:单用户模式   

  等级2表示:无网络连接的多用户命令行模式   

  等级3表示:有网络连接的多用户命令行模式   

  等级4表示:不可用   

  等级5表示:带图形界面的多用户模式   

  等级6表示:重新启动

10是启动优先级,90是停止优先级,优先级范围是0-100,数字越大,优先级越低。

上面的注释的意思是,zookeeper服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是10,关闭的优先级是90

修改后的zookeeper执行脚本:

#! /bin/bash
# chkconfig: 2345 10 90
# description: zookeeper

ZOOKEEPER_PATH=/usr/appdata/zookeeper-3.4.6/bin/

case "$1" in
     start)
echo "start zookeeper service..."
sh ${ZOOKEEPER_PATH}/zkServer start
;;
       stop)
echo "stop zookeeper service..."
sh ${ZOOKEEPER_PATH}/zkServer stop
;;
     restart)
echo "restart zookeeper service..."
sh ${ZOOKEEPER_PATH}/zkServer restart
;;   
     status)
echo "zookeeper status"
sh ${ZOOKEEPER_PATH}/zkServer status
;; 
     *)
echo "require start|stop|status|restart"
exit1
;;
esac

安装服务:

#chkconfig --add zookeeper

#chkconfig zookeeper on

启动服务:

service zookeeper start|stop|restart|status


附录:

linux 运行级别

运行级别就是操作系统当前正在运行的功能级别。这个级别从0到6 ,具有不同的功能。这些级别在/etc/inittab文件里指定。这个文件是init程序寻找的主要文件,最先运行的服务是那些放在/etc/rc.d 目录下的文件。

不同的运行级定义如下:(可以参考Linux里面的/etc/inittab)

# 缺省的运行级,RHS用到的级别如下:

0:关机

1:单用户模式

2:无网络支持的多用户模式

3:有网络支持的多用户模式

4:保留,未使用

5:有网络支持有X-Window支持的多用户模式

6:重新引导系统,即重启


对各个运行级的详细解释:


0 为停机,机器关闭。

1 为单用户模式,就像Win9x下的安全模式类似。

2  为多用户模式,但是没有NFS支持。

3  为完整的多用户模式,是标准的运行级。

4 一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本 电脑的电池用尽时,可以切换到这个模式来做一些设置。

5  就是X11,进到X Window系统了。

6  为重启,运行init 6机器就会重启。

chkconfig用法

chkconfig命令可以用来检查、设置系统的各种服务

使用语法:

chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]


参数用法:

–add  增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。

–del  删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。

–level<等级代号>  指定读系统服务要在哪一个执行等级中开启或关毕。


使用范例:

chkconfig –list                    列出所有的系统服务

chkconfig –add redis               增加redis服务

chkconfig –del redis                删除redis 服务

chkconfig –level redis 2345 on     把redis在运行级别为2、3、4、5的情况下都是on(开启)的状态。






你可能感兴趣的:(centos)