使用supervisor启动hbase

管理进程是一件麻烦的事情,有时候进程因为内存被其他进程抢占,导致程序崩溃,又没有好的办法来解决,那么就涉及到如何让它挂了自动启动的问题,supervisor就是一款这样的软件,在做之前,请确保你需要让进程自动启动,否则可能重启机器也无法解决进程占用IO等导致ssh无法连接的问题。下面介绍如何安装与配置,以及如何查看页面状态。

  1. 安装supervisor

    yum install supervisor -y

  2. ambari按照pid文件来检测进程是否启动,为了使ambari检测进程状态,要保证进程号的文件名称一样,HBASE_IDENT_STRING会在进程启动文件中用作变量去命名进程pid文件

    echo ‘export HBASE_IDENT_STRING=hbase‘>>/etc/init.d/supervisord

  3. 编辑/etc/supervisord.conf

    [unix_http_server]

    file=/tmp/supervisor.sock;

    [supervisord]

    http_port=/var/tmp/supervisor.sock;

    http_port=0.0.0.0:9001  ; (alternately, ip_address:port specifies AF_INET)

    logfile=/tmp/supervisord.log ; (main log file;default $CWD/supervisord.log)

    logfile_maxbytes=50MB        ; (max main logfile bytes b4 rotation;default 50MB)

    logfile_backups=10           ; (num of main logfile rotation backups;default 10)

    loglevel=info                ; (log level;default info; others: debug,warn,trace)

    pidfile=/tmp/supervisord.pid ; (supervisord pidfile;default supervisord.pid)

    nodaemon=false               ; (start in foreground if true;default false)

    minfds=1024                  ; (min. avail startup file descriptors;default 1024)

    minprocs=200                 ; (min. avail process descriptors;default 200)

    [rpcinterface:supervisor]

    supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface

    [supervisorctl]

    serverurl=unix:///var/tmp/supervisor.sock ; use a unix:// URL  for a unix socket

    [program:regionserver]

    command=bash /usr/hdp/current/hbase-regionserver/bin/hbase-daemon.sh --config /usr/hdp/current/hbase-regionserver/conf foreground_start regionserver

    process_name=%(program_name)s

    numprocs=1

    ;directory=/usr/hdp/current/hbase-regionserver/bin/

    autostart=true

    autorestart=true

    startretries=3

    exitcodes=0,2

    stopsignal=INT

    user=hbase

    stdout_logfile=regionserver_out.log

    stdout_logfile_maxbytes=1MB

    stdout_logfile_backups=10

    stdout_capture_maxbytes=1MB

    stderr_logfile=test_err.log

    stderr_logfile_maxbytes=1MB

    stderr_logfile_backups=10

    stderr_capture_maxbytes=1MB

  4. 如果还要启动其他程序直接在最后面一行添加即可,比如

    [program:wpiweibo]

    command=/usr/jdk64/jdk1.8.0_40/bin/java -jar /home/luoweimin/wpiindex/WPIIndex-1.0-SNAPSHOT.jar

    numprocs=1

    user=luoweimin

    stdout_logfile=wpiweibo.out

    stderr_logfile=wpiweibo.err

  5. 启动

    /etc/init.d/superversiord start

  6. 由于我监听了9001端口,你可以使用ip:9001去监控页面查看状态,启停服务

时间: 2024-08-28 14:48:22

使用supervisor启动hbase的相关文章

ubuntu下的supervisor启动express失败问题

ubuntu下apt-get install nodejs后的启动命令是nodejs,而不同于windows下的node 所以我在supervisor启动express的时候出现了问题 提示如下: /usr/bin/env: "node": 没有那个文件或目录 然后whereis node,查看到文件都是nodejs形式命名,所以supervisor启动node的时候没有找到可执行的文件. 解决方法如下: cd  /usr/bin ls -s /usr/bin/nodejs /usr/

启动hbase时,hregionserver没有启动的原因

今天配置hbase的时候发现有几台机器的regionserver启不来.报错如下: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAcc

启动hbase时出现HMaster Aborted错误

启动hbase时出现 java.lang.RuntimeException: HMaster Aborted at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:194) at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:135) at org.apache.h

supervisor启动worker源码分析-worker.clj

supervisor通过调用sync-processes函数来启动worker,关于sync-processes函数的详细分析请参见"storm启动supervisor源码分析-supervisor.clj".sync-processes函数代码片段如下: sync-processes函数代码片段 ;; sync-processes函数用于管理workers, 比如处理不正常的worker或dead worker, 并创建新的workers;; supervisor标识supervis

启动hbase出现的zookeeper连接问题

今天安装了hbase想做下测试,结果发现在创建表时报错“can't get master address from zookeeper, zookeeper date = null”,大致是这样描述的,之后查看日志,发现hbase在启动zookeeper时确实报错了,查阅了网上的资料,说hbase自带zookeeper,如果想用独立的zookeeper需要把hbase-env.sh中的HBASE_MANAGES_ZK改成false,但自己试了还是没用,错误显示zk端口已经被占用,估计是hbase

利用ClouderaManager启动HBase时,出现 master.TableNamespaceManager: Namespace table not found. Creating...

1.错误描述: 出现上述这个错误的原因是我之前已经安装了Cloudera Manager中的CDH,其中添加了所有的服务,当然也包含HBase.然后重新安装的时候,就会出现如下错误: Failed to become active master,org.apache.hadoop.hbase.TableExistsException:hbase:namespace. 根据上面错误的我们可以很清楚的知道,在启动Hbase的时候,由于之前安装的HBase版本的数据还存在,因此重新安装的HBase会报

Hbase启动hbase shell运行命令报Class path contains multiple SLF4J bindings.错误

1:Hbase启动hbase shell运行命令报Class path contains multiple SLF4J bindings.错误,是因为jar包冲突了,所以对于和hadoop的jar包冲突的,可以将其他jar包删除,如果你不确定是否删除正确,可以将其他的jar包复制备份或者修改名称,确保操作以后失败了,还可以找回. SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:fil

supervisor启动报错

supervisor 启动失败报错 Error: Another program is already listening on a port that one of our HTTP servers is configured to use.  Shut this program down first before starting supervisord. 解决办法: unlink /var/run/supervisor.sock unlink /tmp/supervisor.sock 这个

Supervisor启动error: <class 'socket.error'>, [Errno 101] Network is unreachable

全栈与架构 > 技术设计 Supervisor启动error: <class 'socket.error'>, [Errno 101] Network is unreachable 2015/08/03 技术设计 Linux,Python,Supervisor,Tornado 合作公司的MM今天送来第六份文档,我在开发之处留意并担心的问题最终还是被提出来了.文档中大多数为细节调整,重点问题集中在全站商品分类(goodcat)的增删改查和前端展开特效.current_item定位以及数据筛