【问题标题】:Accumulo getting stucked and not startingAccumulo 卡住且无法启动
【发布时间】:2015-04-08 19:41:45
【问题描述】:

我一直在尝试安装 Accumulo 并尝试了几天,但它甚至在开始之前就已备货。我最终使用了安装了 Hadoop 和 Zookeeper 的 HortonWorks Sandbox。 我按照 Accmulo 设置页面上的说明更改了配置,如下所示:

[root@sandbox ~]# vi /etc/accumulo/conf/accumulo-env.sh
if [ -z "$ACCUMULO_HOME" ]
then
test -z "$ACCUMULO_HOME"     && export ACCUMULO_HOME=/usr/hdp/2.2.0.0-2041/accumulo
fi

if [ -z "$HADOOP_HOME" ]
then
   test -z "$HADOOP_PREFIX"      && export HADOOP_PREFIX=/usr/hdp/current/hadoop-client
else
   HADOOP_PREFIX="$HADOOP_HOME"
   unset HADOOP_HOME
fi

# hadoop-1.2:
# test -z "$HADOOP_CONF_DIR"       && export HADOOP_CONF_DIR="$HADOOP_PREFIX/conf"
# hadoop-2.0:
test -z "$HADOOP_CONF_DIR"     && export HADOOP_CONF_DIR="$HADOOP_PREFIX/etc/hadoop/conf"

test -z "$JAVA_HOME"             && export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk.x86_64
test -z "$ZOOKEEPER_HOME"        && export ZOOKEEPER_HOME=/usr/hdp/current/zookeeper-client
test -z "$ACCUMULO_LOG_DIR"      && export ACCUMULO_LOG_DIR=$ACCUMULO_HOME/logs
if [ -f ${ACCUMULO_CONF_DIR}/accumulo.policy ]
then
   POLICY="-Djava.security.manager -Djava.security.policy=${ACCUMULO_CONF_DIR}/accumulo.policy"
fi

使用此配置,我能够成功启动 Accumulo:

[root@sandbox ~]# /usr/hdp/2.2.0.0-2041/accumulo/bin/start-all.sh
Starting monitor on localhost
WARN : Max open files on localhost is 1024, recommend 32768
Starting tablet servers .... done
Starting tablet server on localhost
WARN : Max open files on localhost is 1024, recommend 32768
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/root/reza/accumulo-1.6.1/lib/slf4j-log4j12.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/current/hadoop-client/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/current/hadoop-client/client/slf4j-log4j12.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/current/hadoop-client/client/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
2015-02-09 05:30:21,742 [fs.VolumeManagerImpl] WARN : dfs.datanode.synconclose set to false in hdfs-site.xml: data loss is possible on system reset or power loss
2015-02-09 05:30:21,760 [server.Accumulo] INFO : Attempting to talk to zookeeper
2015-02-09 05:30:21,920 [server.Accumulo] INFO : Zookeeper connected and initialized, attemping to talk to HDFS
2015-02-09 05:30:22,195 [server.Accumulo] INFO : Connected to HDFS
2015-02-09 05:30:22,207 [fs.VolumeManagerImpl] WARN : dfs.datanode.synconclose set to false in hdfs-site.xml: data loss is possible on system reset or power loss
Starting master on localhost
WARN : Max open files on localhost is 1024, recommend 32768
Starting garbage collector on localhost
WARN : Max open files on localhost is 1024, recommend 32768
Starting tracer on localhost
WARN : Max open files on localhost is 1024, recommend 32768 

我也能够成功初始化 Accumulo:

[root@sandbox ~]#  /usr/hdp/2.2.0.0-2041/accumulo/bin/accumulo init
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/root/reza/accumulo-1.6.1/lib/slf4j-log4j12.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/current/hadoop-client/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/current/hadoop-client/client/slf4j-log4j12.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/current/hadoop-client/client/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
2015-02-09 04:40:56,225 [fs.VolumeManagerImpl] WARN : dfs.datanode.synconclose set to false in hdfs-site.xml: data loss is possible on system reset or power loss
2015-02-09 04:40:56,229 [init.Initialize] INFO : Hadoop Filesystem is hdfs://sandbox.hortonworks.com:8020
2015-02-09 04:40:56,232 [init.Initialize] INFO : Accumulo data dirs are [hdfs://sandbox.hortonworks.com:8020/accumulo]
2015-02-09 04:40:56,232 [init.Initialize] INFO : Zookeeper server is localhost:2181
2015-02-09 04:40:56,232 [init.Initialize] INFO : Checking if Zookeeper is available. If this hangs, then you need to make sure zookeeper is running
Warning!!! Your instance secret is still set to the default, this is not secure. We highly recommend you change it.
    You can change the instance secret in accumulo by using:
       bin/accumulo org.apache.accumulo.server.util.ChangeSecret oldPassword newPassword.
    You will also need to edit your secret in your configuration file by adding the property instance.secret to your conf/accumulo-site.xml. Without this accumulo will not operate correctly
    Instance name : reza
    Instance name "reza" exists. Delete existing entry from zookeeper? [Y/N] : N
    Instance name : reza2
    Enter initial password for root (this may not be applicable for your security setup): ****
    Confirm initial password for root: ****
    2015-02-09 04:42:32,497 [Configuration.deprecation] INFO : dfs.replication.min is deprecated. Instead, use dfs.namenode.replication.min
    2015-02-09 04:42:32,509 [fs.VolumeManagerImpl] WARN : dfs.datanode.synconclose set to false in hdfs-site.xml: data loss is possible on system reset or power loss
    2015-02-09 04:42:33,208 [Configuration.deprecation] INFO : dfs.block.size is deprecated. Instead, use dfs.blocksize
    2015-02-09 04:42:33,964 [conf.AccumuloConfiguration] INFO : Loaded class : org.apache.accumulo.server.security.handler.ZKAuthorizor
    2015-02-09 04:42:33,969 [conf.AccumuloConfiguration] INFO : Loaded class : org.apache.accumulo.server.security.handler.ZKAuthenticator
    2015-02-09 04:42:33,973 [conf.AccumuloConfiguration] INFO : Loaded class : org.apache.accumulo.server.security.handler.ZKPermHandler

但是,当我尝试启动 Accumulo shell 进行尝试时,它会卡住而不会引发任何错误:

[root@sandbox ~]# /usr/bin/accumulo shell --password reza
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/root/reza/accumulo-1.6.1/lib/slf4j-log4j12.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/current/hadoop-client/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/current/hadoop-client/client/slf4j-log4j12.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/current/hadoop-client/client/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
2015-02-09 05:21:15,397 [impl.ServerClient] WARN : There are no tablet servers: check that zookeeper and accumulo are running. 

它没有进一步的进展也不给我一个外壳来尝试。有关如何解决此问题或问题是什么的任何建议?

【问题讨论】:

  • 您是在初始化后立即尝试连接,还是重新启动/暂停沙箱然后尝试?过去我在暂停/暂停 VM 时遇到过问题。奇怪的是你能够初始化,因为这意味着它已经启动了。能进入监控界面吗? accumulomaster:50095/status
  • 您可能还想确保 ZK 已启动并正在运行。不熟悉沙箱,但在我的系统上你可以像这样连接到zk:zookeeper-client -server zk01 ls /accumulo
  • 我尝试连接到 Zookeeper 并且没问题。事实上,Accumulo 可以在“start-all”期间连接到它。我也尝试在初始化后立即连接。
  • 有人找到解决方案了吗?

标签: installation bigdata accumulo


【解决方案1】:

您可能必须指定实例名称和 ZooKeeper 主机信息。使用 --help 启动 shell 以找到正确的命令行选项。

注意:您可以通过在命令行上使用--debug 启动 Accumulo shell 来调试它。

【讨论】:

  • 这方面的一个例子是:accumulo shell -u root -zh zoo1:2181,zoo2:2181,zoo3:2181 -zi reza2 -p reza
  • 谢谢,但我已经在 accumul-env.sh 中设置了 Zookeeper。事实上,在“accumulo init”期间,它会找到 Zookeeper 并能够连接到它。我什至尝试过“shell -u root -zh localhost:2181 -zi reza --password reza”,但最终卡在了同一个地方
【解决方案2】:

您是否在尝试启动 shell 之前启动了 Accumulo?

/usr/hdp/2.2.0.0-2041/accumulo/bin/start-all.sh

然后

/usr/bin/accumulo shell --password reza

【讨论】:

  • 谢谢,但从我的原始帖子中可以清楚地看出我做了这两个步骤。
  • 您是否先全部启动然后初始化 Accumulo?您采取的步骤的顺序不清楚。
  • 您是否像 furiousgeorge 所说的那样通过监视器确认 Accumulo 似乎已启动? (monitor_host:50095 其中 monitor_host 在 /etc/accumulo/conf/monitors 中定义)。您应该会看到有关 master 和 tabletservers 的详细信息。由于某种原因,tabletserver 可能无法启动(常见问题是内存大小配置错误和/或缺少正在构建的本机映射 - 运行 /usr/hdp/2.2.0.0-2041/accumulo/bin/build-native-library .sh 这样做)
猜你喜欢
  • 2020-08-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-11
  • 2022-01-17
  • 2020-07-24
  • 2021-06-01
  • 2019-05-12
相关资源
最近更新 更多