首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在谷歌电脑引擎上成功安装Oryx?

在谷歌电脑引擎上成功安装Oryx?
EN

Stack Overflow用户
提问于 2014-10-17 17:11:14
回答 2查看 304关注 0票数 1

我正在尝试让Oryx在Google Compute引擎上运行。我创建了一个新实例并通过以下方法安装了Oryx:

代码语言:javascript
运行
复制
git clone https://github.com/cloudera/oryx.git
cd oryx
mvn -DskipTests install

并将此安装保存为(“oryx”)上的映像。

查找Oryx和Google (Hadoop 2.4.1 and Google Cloud Storage connector for Hadoop)的问题,我一直使用hdfs://作为默认的文件系统。

在Google上启动的默认Hadoop包(例如,没有默认Oryx配置所需的Snappy库)中,我还尝试用Snappy创建自己的Hadoop2.4.1 tarball,包括以下说明:How to enable Snappy/Snappy Codec over hadoop cluster for Google Compute Engine (附带说明:这里描述的jdk版本是否足以满足oryx?)然后,我使用安装了oryx的已保存的映像(“oryx”):

代码语言:javascript
运行
复制
./bdutil --bucket <some-bucket> --image oryx-image -n $number \
    --env_var_files hadoop2_env.sh --default_fs hdfs

我救下的Hadoop tarball:

代码语言:javascript
运行
复制
# File: hadoop2_env.sh
HADOOP_TARBALL_URI="gs://<some-bucket>/hadoop-2.4.1.tar.gz"

要在上部署Hadoop2.4.1(使用Snappy)集群(带有默认文件系统= hdfs://)。还是没有运气。

我可以在GCE上成功地运行测试Hadoop作业,在GCE上测试Snappy实现(请参阅second link),并在GCE上从主节点本地测试Oryx作业:

代码语言:javascript
运行
复制
# File: oryx.conf
model.local-data = true
model.local-computation = true  

唯一的问题是让Oryx在Google引擎上成功地运行hdfs://或gs://中的数据。

我发现了许多关于环境变量变化的不同指示,等等,我不知道哪些是必要的,哪些可能导致更多的问题。我想知道是否有关于在GCE上安装/运行oryx的文档。也许有人已经经历了同样的过程,并且可以提供指示和/或至少确认安装成功?

在GCE上使用Snappy安装Hadoop2.4.1的说明(在second link中找到)是非常棒的。我希望能找到一些细节,说明让羚羊从零开始在GCE上工作所需的所有步骤。

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2014-10-17 18:41:36

我不知道这是否是一个直接的答案,但我可以在这里评论几点。我认为这里的许多问题是如何在GCE上安装和运行标准Hadoop。

我从未在GCE上运行过它,但是不管它是运行在裸金属上,还是在GCE或EC2上运行,这都不重要。它只使用Hadoop。是的,它确实假设Hadoop和HDFS。(我认为硬编码的hdfs://可以删除,当然,我不知道这是否会使它适用于非HDFS文件系统。)因此,如果GCE在默认情况下具有不同的文件系统,是的,最好的选择是使用HDFS。

我想我认为Snappy是Hadoop安装所必需的一部分。如果您是手工安装Hadoop,是的,我认为您必须采取更多的步骤。这就是为什么我会推荐一个(免费的,开源的)发行版来处理这个问题。

它还应该为您设置类似于HADOOP_CONF_DIR的东西,通常情况下,我也倾向于将其视为Hadoop设置的必需部分,至少在客户端是如此。

任何版本的Java 6或更高版本都可以。

可以试试发行版吗?可能会少很多痛苦。很抱歉,这里没有进一步的说明,但是似乎GCE<->Hadoop比Hadoop<->Oryx发布的更多。如果应用程序可以改变方式,使其更好地适应GCE,我可以这样做。

票数 2
EN

Stack Overflow用户

发布于 2014-10-29 20:38:20

我找到了一个不那么优雅的“解决方案”来解决这个问题。提供的Hadoop-2.4.1标准问题确实有快速的库,只是它们不在“正确的”位置。因此,我将所有snappy库文件从它们的默认位置(/usr/lib/)复制到java库目录。显然只需要这些行中的一条,但我还没有花时间找出哪一行是正确的:

代码语言:javascript
运行
复制
sudo cp /usr/lib/lib* /usr/local/lib
sudo cp /usr/lib/lib* /usr/java/jdk1.7.0_55/lib/amd64/jli
sudo cp /usr/lib/lib* /usr/java/jdk1.7.0_55/lib/amd64
sudo cp /usr/lib/lib* /usr/java/jdk1.7.0_55/lib

当然,这与其说是一个解决方案,不如说是一项工作。我认为将snappy库目录添加到正确的路径中也是可行的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26430087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档