zoukankan      html  css  js  c++  java
  • Ambari部署HDP:HBase Master启动后自动消失

     这是第一次出勤部署产品。遇到不可控问题,解决,写个心得。记录一下吧^^

        在排查问题的过程中,学到不少知识。

    (1)centos系统盘和数据盘分开,装操作系统的人没有将IT的空间分配出来,所以分区,自动挂载

    #lvmdiskscan 查看哪些设备成为了物理卷. 检测硬盘和分区中的逻辑巻管理信息

    只有/dev/sda*,说明只有一个物理卷,其余的是/dev/ram*

    fdisk /dev/sdb

    d n p 1 w 即可删除分区,创建一个新的磁盘。

    格式化:mkfs.ext4 /dev/sdb1

    查看:ls -l /dev/sdb*  显示有/dev/sdb 和 /dev/sdb1 两项,缺一不可

    挂载:mkdir /data1

           mount /dev/sdb1 /data1

    这样就可以在lvmscandisk下看得到了。在配置平台的时候,就可以作为数据盘了。

    (2)ntp同步时间:ntp很重要,因为很多通信都基于ntp同步的

    修改date:只有在时间相差不超过10秒时,ntp服务才起效。

    date -s '2013-06-17 09:32:10' 修改时间 

    clock -r 查看CMOS时间

    clock -w 将时间写入CMOS

    另外一种写法:hwclock -set -date="1/23/01 22:16:59"

    ntp服务:ntpq -p

    # ntpq -p
    Name or service not known

    检查:yum list ntp 或者 rpm -qa | grep ntp

    再检查/etc/ntp.conf

    查看一下内网同步ntp的方法

    (3)安装http服务

    http没启动,就不能访问本地/var/www/html。

    先修改/etc/yum.repo.d/Centos.repo(其余外来的repo最好先删掉)

    修改baseurl:baseurl=http://hidata1/redhat 改成 baseurl=file:///var/www/html/redhat 连接到离线安装包。

    再yum list http* 

    再yum install httpd 

    (4) ambari部署后,Hbase Master启动成功后,自动消失,尝试过很多方法,有些也很有道理。但是归根到底,看日志,一行一行的不放过任何信息是最有效的方式。

    如我主要报错的信息是这样的

    Dhbase.log.dir=/var/log/hbase -Dhbase.log.file=hbase-hbase-master-hidata2.log
    2015-04-23 17:39:16,297 INFO  [main] util.ServerCommandLine: vmInputArguments=[-Dproc_master, -XX:OnOutOfMemoryError=kill, -9, %p, -Xmx1000m, -XX:+UseConcMarkSweepGC, -XX:ErrorFile=/var/log/hbase/hs_err_pid%p.log, -verbose:gc, -XX:+PrintGCDetails, -XX:+PrintGCDateStamps, -Xloggc:/var/log/hbase/gc.log-201504231739, -Xmx1024m, -Dhbase.log.dir=/var/log/hbase, -Dhbase.log.file=hbase-hbase-master-hidata2.log, -Dhbase.home.dir=/usr/lib/hbase/bin/.., -Dhbase.id.str=hbase, -Dhbase.root.logger=INFO,RFA, -Djava.library.path=:/usr/lib/hadoop/lib/native/Linux-amd64-64:/usr/lib/hadoop/lib/native, -Dhbase.security.logger=INFO,RFAS]
    2015-04-23 17:39:16,420 DEBUG [main] master.HMaster: master/hidata2/21.148.2.41:60000 HConnection server-to-server retries=350
    
    2015-04-23 17:39:17,589 INFO  [main] master.HMaster: hbase.rootdir=hdfs://hidata1:8020/apps/hbase/data, 
    2015-04-23 17:39:17,684 INFO  [main-SendThread(hidata6:2181)])] zookeeper.ClientCnxn: Opening socket connection to server hidata6/21.148.2.45:2181. Will not attempt to authenticate using SASL (java.lang.SecurityException: Unable to locate a login configuration)
    
    2015-04-23 17:39:17,907 INFO  [master:hidata2:60000] mortbay.log: jetty-6.1.26
    2015-04-23 17:39:18,202 INFO  [master:hidata2:60000] mortbay.log: Started SelectChannelConnector@0.0.0.0:60010
    2015-04-23 17:39:18,323 FATAL [master:hidata2:60000] master.HMaster: Unhandled exception. Starting shutdown.
    java.lang.ExceptionInInitializerError
    	at org.apache.hadoop.hbase.zookeeper.MasterAddressTracker.toByteArray(MasterAddressTracker.java:157)
    	at org.apache.hadoop.hbase.zookeeper.MasterAddressTracker.setMasterAddress(MasterAddressTracker.java:133)
    	at org.apache.hadoop.hbase.master.ActiveMasterManager.blockUntilBecomingActiveMaster(ActiveMasterManager.java:155)
    	at org.apache.hadoop.hbase.master.HMaster.becomeActiveMaster(HMaster.java:664)
    	at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:602)
    	at java.lang.Thread.run(Thread.java:662)
    Caused by: java.lang.RuntimeException: Failed to create local dir /boot/efi/hadoop/hbase/local/jars, DynamicClassLoader failed to init
    	at org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:94)
    	at org.apache.hadoop.hbase.protobuf.ProtobufUtil.<clinit>(ProtobufUtil.java:197)
    	... 6 more
    2015-04-23 17:48:43,897 INFO  [main] util.ServerCommandLine: vmInputArguments=[-Dproc_master, -XX:OnOutOfMemoryError=kill, -9, %p, -Xmx1000m, -XX:+UseConcMarkSweepGC, -XX:ErrorFile=/var/log/hbase/hs_err_pid%p.log, -verbose:gc, -XX:+PrintGCDetails, -XX:+PrintGCDateStamps, -Xloggc:/var/log/hbase/gc.log-201504231748, -Xmx1024m, -Dhbase.log.dir=/var/log/hbase, -Dhbase.log.file=hbase-hbase-master-hidata2.log, -Dhbase.home.dir=/usr/lib/hbase/bin/.., -Dhbase.id.str=hbase, -Dhbase.root.logger=INFO,RFA, -
    2015-04-23 17:39:18,335 INFO [master:hidata2:60000] mortbay.log: Stopped SelectChannelConnector@0.0.0.0:60010
    2015-04-23 17:39:18,439 WARN [master:hidata2:60000] master.ActiveMasterManager: Failed get of master address: java.io.IOException: Can't get master address from ZooKeeper; znode data == null
    2015-04-23 17:39:18,442 INFO [master:hidata2:60000] zookeeper.ZooKeeper: Session: 0x34ce5a44b610000 closed
    2015-04-23 17:39:18,442 INFO [master:hidata2:60000] master.HMaster: HMaster main thread exiting
    2015-04-23 17:39:18,442 INFO [main-EventThread] zookeeper.ClientCnxn: EventThread shut down
    2015-04-23 17:39:18,442 ERROR [main] master.HMasterCommandLine: Master exiting
    java.lang.RuntimeException: HMaster Aborted
    at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:192)
    at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:134)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
    at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:126)
    at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:2778)
    

      

    这是抽取出来可能存在错误或者有用信息的地方。这样可以看出

        create local dir /boot/efi/hadoop/hbase/local/jars, DynamicClassLoader failed to init导致的内存溢出和进程崩溃。查看了一下/boot下面空间(df -lh),发现只有200M,原因很显然。比如C盘是我们的系统盘,如果系统盘空间不足,程序会运行会很慢或者直接出现内存不足的提示。当hbase进程起来,需要加载很多的配置和类文件到local dir,到/boot下明显不行。

      

  • 相关阅读:
    UVa OJ 148 Anagram checker (回文构词检测)
    UVa OJ 134 LoglanA Logical Language (Loglan逻辑语言)
    平面内两条线段的位置关系(相交)判定与交点求解
    UVa OJ 130 Roman Roulette (罗马轮盘赌)
    UVa OJ 135 No Rectangles (没有矩形)
    混合函数继承方式构造函数
    html5基础(第一天)
    js中substr,substring,indexOf,lastIndexOf,split等的用法
    css的textindent属性实现段落第一行缩进
    普通的css普通的描边字
  • 原文地址:https://www.cnblogs.com/kxdblog/p/4454369.html
Copyright © 2011-2022 走看看