我熟悉Cloudera架构,但不熟悉MapR。我有一个RHEL vm,之前使用此documentation安装了MapR客户端软件。我可以按预期提交mapreduce作业并查询HDFS。
我跟着这个documentation(在我安装了MapR yum repo之后)并安装了sqoop,如下所示:
yum install mapr-sqoop
如果我尝试sqoop一些数据,或者甚至只发出命令sqoop
,我收到以下错误:
/opt/mapr/sqoop/sqoop-1.4.4/bin/configure-sqoop:line 47:/opt/mapr/bin/versions.sh:没有这样的文件或目录
Error: /opt/mapr/hadoop/hadoop- does not exist!
Please set $HADOOP_COMMON_HOME to the root of your Hadoop installation.
我有一个/opt/mapr/hadoop/hadoop-0.20.2目录。我尝试将HADOOP_COMMON_HOME
和HADOOP_HOME
设置为/opt/mapr/hadoop
和/opt/mapr/hadoop/hadoop-0.20.2
,但仍然收到相同的错误。
- 更新:
我发了find / -name hadoop
并注明了/usr/bin/hadoop
的最后一行。
然后我将HADOOP_COMMON_HOME设置为/usr
,然后要求设置HADOOP_MAPRED_HOME,HBASE_HOME和HCAT_HOME,我将其设置为/usr
。
然而,此错误仍然存在:
/opt/mapr/sqoop/sqoop-1.4.4/bin/configure-sqoop:line 47:/opt/mapr/bin/versions.sh:没有这样的文件或目录
我打开了这个文件并注释掉第47行。这允许我使用sqoop命令,但是导入作业失败了,我收到了很多Error: Unsupported major.minor version
。
答案 0 :(得分:1)
如果没有修复,应该有一个补丁
这是临时解决方案:
mapr-client不提供versions.sh,只有mapr-core。简单的解决方法是 从安装了mapr-core的节点手动复制该文件并自定义 其中的版本。 sqoop然后工作正常。