由于各版本之间兼容问题 ,这里记下本次环境搭建遇到的各种问题。
版本:
hadoop-2.6.0
hive-1..2.1
sqoop-1.99.7
简单说明一下,然后再记录各个模块的问题。
hadoop目前最新版是2.7.0,新特性自行百度,起初为了尝鲜安装了2.7.0,但在配合hive2.1.0的时候,hive能够创建、查询、删除表,但是insert、load报连接拒绝异常,估计是hive2.1.0使用了什么命令去操作hadoop2.7.0,但是不兼容,进而导致命令拒绝引发的异常,故而将hive版本降至1.2.1问题解决。随后使用sqoop1.99.7,在创建link没问题,但是执行job时同样出现连接拒绝异常,无奈,只能将hadoop版本将至2.6.0,降至2.6.0后,问题解决,并且mysql->hdfs、hdfs->mysql能够正常稳定运行,只有sqoop的增量导入暂时还没看懂api,不过sqoop在把数据从mysql转移到hdfs后,hive每次load都会移除已使用的文件。
下面说下遇到的问题,由于当时没记录,这里大概说一下:
hadoop
1、免密注意修改hostname
2、控制台无法显示dataname、put/cat报错,检查防火墙是否关闭
3、dataname连接不到namenode,检查host,不要把127.0.0.1对应到hostname,否则9000端口会被绑定到127.0.0.1导致其它ip无法访问
4、hadoop版本差异导致命令差异,实际运用时,若不懂,直接输已知的命令,若不对,hadoop会提示新命令,然后给出api
hive
hive问题没有那么多,主要注意版本兼容问题就好了,还有如果报错,最后看下hadoop的日志
sqoop
跟hive一样,注意版本兼容问题,还有创建link及job的时候,注意每一项参数什么意思,比如hdfs的会填个uri,比如hdfs://localhost:9000,那你在创建job的时候,在填地址的时候也要以这个开头,否则报错。这里推荐两篇博客,有助于sqoop的使用
http://blog.youkuaiyun.com/u012842205/article/details/52344196
http://blog.youkuaiyun.com/u012842205/article/details/52346595