hadoop一些问题记录
升级Hadoop后无法启动namenode
namenode 默认在/tmp下建立临时文件,但关机后,/tmp下文档自动删除,再次启动Master造成文件不匹配,所以namenode启动失败。
在core-site.xml中指定临时文件位置,然后清空该目录,再运行hadoop namenode -format重新格式化
value中的路径只要不是/tmp 就行。
hadoop宽松的权限
|
|
hive和hbase整合后可以通过cli查询和插入数据但无法从beeline查询数据的问题
错误日志如下:
Error: java.io.IOException: org.apache.hadoop.hbase.client.RetriesExhaustedException: Failed after attempts=36, exceptions:
Fri May 19 17:23:55 CST 2017, null, java.net.SocketTimeoutException: callTimeout=60000, callDuration=68822: Call to master/192.168.70.128:16020 failed on local exception: org.apache.hadoop.hbase.exceptions.ConnectionClosingException: Connection to master/192.168.70.128:16020 is closing. Call id=11, waitTime=10 row ‘hive_hbase,,00000000000000’ on table ‘hbase:meta’ at region=hbase:meta,,1.1588230740, hostname=master,16020,1495183947488, seqNum=0 (state=,code=0)
原因是权限的问题
修改Hadoop的core-site.xml
修改hive的hive-site.xml,增加配置
java客户端连接HBase报SocketTimeout master xxx的错误
原因是master,slave等配置在Linux的hosts文件中,通常我们在idea中调试运行的Windows环境的hosts中并没有master等地址映射。把Linux上hosts的相关配置同样配置在Windows中的hosts文件中。上线后同样需要配置在Java程序运行的服务器环境中