首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache Accumulo安装

Apache Accumulo安装
EN

Stack Overflow用户
提问于 2019-12-30 21:29:23
回答 2查看 234关注 0票数 0

我正在尝试安装Apache Accumulo 2.0,其中Hadoop集群和Zookeeper集群已经作为单独的docker容器运行;

现在我必须按照安装说明设置以下环境变量;

代码语言:javascript
复制
############################
# Variables that must be set
############################

## Hadoop installation
export HADOOP_HOME="${HADOOP_HOME:-/path/to/hadoop}"
## Hadoop configuration
export HADOOP_CONF_DIR="${HADOOP_CONF_DIR:-${HADOOP_HOME}/etc/hadoop}"
## Zookeeper installation
export ZOOKEEPER_HOME="${ZOOKEEPER_HOME:-/path/to/zookeeper}"

但是,本地计算机中不存在这些目录。我必须从Hadoop和Zookeeper的单独容器中复制这些目录,才能使它们在我试图运行Accumulo的本地计算机上可用吗?或者有一些适当的方法来配置它?

EN

回答 2

Stack Overflow用户

发布于 2019-12-31 12:25:09

与任何Hadoop客户端一样,Accumulo需要Hadoop XML配置文件。它使用$HADOOP_CONF_DIR$HADOOP_HOME/conf对它们进行罚款

它使用$HADOOP_HOME/lib来获取Hadoop

我不确定$ZOOKEEPER_HOME是用来做什么的,但我猜它也不会附带Zookeeper JARs

Hadoop将使用这些位置查找

和Zookeeper jars,并将它们添加到CLASSPATH变量中

因此,是的,您需要将它们复制到容器之外,或者在主机上下载Hadoop库并将它们挂载到容器中。无论如何,你应该已经有了Zookeeper和NameNode & Datanodes的卷装载。

票数 1
EN

Stack Overflow用户

发布于 2020-01-04 05:26:25

在Accumulo 2.0中,conf/accumulo-env.sh脚本有两个主要用途:

  1. 用于设置任何环境,例如CLASSPATH
  2. 用于设置要传递给java命令的任何JVM参数。

在其最简单的形式中,bin/accumulo基本上做到了:

代码语言:javascript
复制
  source conf/accumulo-env.sh
  java "${JAVA_OPTS[@]}" "$@"

因此,您在accumulo-env.sh中导出的任何环境(例如CLASSPATH )都将设置为调用java。而且,您在JAVA_OPTS数组中设置的任何选项都将传递给java

accumulo-env.sh内容应由用户自定义。脚本的默认内容尝试使用您当前安装的Hadoop和ZooKeeper设置用于累积进程的CLASSPATH环境。但是,您必须告诉它这些文件在您的系统中的位置,这样才能正常工作。用于设置这些的variables。 Accumulo要求来自Hadoop和ZooKeeper的客户端库以及Hadoop配置文件位于Accumulo CLASSPATH上。如果这些文件在本地不存在,您将需要找出如何将它们放到CLASSPATH上以供Accumulo使用,并更新此环境脚本以让Accumulo知道您将它们放在哪里。

如果您希望以不同的方式设置您的CLASSPATH,您可以自由地这样做,但是您可能希望定制accumulo-env.sh脚本的更大部分。对于已自定义其部署的高级用户或已自定义其供应商提供的Accumulo版本的供应商来说,这是一种可能的方案。

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

https://stackoverflow.com/questions/59531693

复制
相关文章

相似问题

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