我正在尝试启动 Accumulo,但遇到了一个令人讨厌的异常,该异常似乎与我的虚拟机的某些网络问题有关。我以为命令
sudo -u accumulo /usr/lib/accumulo/bin/accumulo init --instance-name lumify --password password
将初始化累加器。但是,我收到一条警告,指出已检测到地址更改,然后是致命异常。我注意到我没有在文件中$ACCUMULO_HOME
定义。accumulo-env.sh
我还注意到 master 和 slaves 文件中唯一的“masters”和“slaves”是一行,上面写着localhost
,并且没有我的 IP 地址。我在这些文件中更改localhost
了我的 IP 地址,但同样的问题仍然存在。
我相当确定这是一个 IP 地址问题,但我严格按照说明进行操作。也许这是一个问题,因为我在虚拟机上(即使我正在使用桥接适配器并为我的虚拟机获得了真实的 IP 地址)?
我使用检查我的eth0
连接ifconfig
,它仍然显示192.168.1.232
,而我仍然收到消息
Hadoop文件系统是hdfs://192.168.1.232:8020
累积数据目录是 /accumulo
Zookeeper 服务器是 localhost:2181
然后是警告
检测到地址更改。旧:localhost.localdomain/192.168.1.232:8020 新:localhost.localdomain/127.0.0.1:8020
和例外
无法检查文件系统是否已经初始化。
似乎即使没有不同的网络,我的虚拟机的 IP 地址与我运行设置时的 IP 地址相同,我在初始化 accumulo 的过程中得到了这个砖块。
有什么建议么?堆栈跟踪继续
ConnectException:从 localhost.localdomain/127.0.0.1 到 localhost.localdomain:8020 的调用因连接异常而失败:连接被拒绝
如果有帮助,这是堆栈跟踪:
[root@localhost conf]# sudo -u accumulo /usr/lib/accumulo/bin/accumulo init --instance-name lumify --password password
2014-08-20 17:49:35,488 [util.Initialize] INFO : Hadoop Filesystem is hdfs://192.168.1.232:8020
2014-08-20 17:49:35,490 [util.Initialize] INFO : Accumulo data dir is /accumulo
2014-08-20 17:49:35,490 [util.Initialize] INFO : Zookeeper server is localhost:2181
2014-08-20 17:49:35,490 [util.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
2014-08-20 17:49:35,915 [ipc.Client] WARN : Address change detected. Old: localhost.localdomain/192.168.1.232:8020 New: localhost.localdomain/127.0.0.1:8020
2014-08-20 17:49:35,923 [util.Initialize] FATAL: java.io.IOException: Failed to check if filesystem already initialized
java.io.IOException: Failed to check if filesystem already initialized
at org.apache.accumulo.server.util.Initialize.checkInit(Initialize.java:178)
at org.apache.accumulo.server.util.Initialize.doInit(Initialize.java:185)
at org.apache.accumulo.server.util.Initialize.main(Initialize.java:545)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.accumulo.start.Main$1.run(Main.java:103)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.net.ConnectException: Call From localhost.localdomain/127.0.0.1 to localhost.localdomain:8020 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.apache.hadoop.net.NetUtils.wrapWithMessage(NetUtils.java:782)
at org.apache.hadoop.net.NetUtils.wrapException(NetUtils.java:729)
at org.apache.hadoop.ipc.Client.call(Client.java:1242)
at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:202)
at com.sun.proxy.$Proxy10.getFileInfo(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:164)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:83)
at com.sun.proxy.$Proxy10.getFileInfo(Unknown Source)
at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getFileInfo(ClientNamenodeProtocolTranslatorPB.java:629)
at org.apache.hadoop.hdfs.DFSClient.getFileInfo(DFSClient.java:1545)
at org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:820)
at org.apache.hadoop.fs.FileSystem.exists(FileSystem.java:1380)
at org.apache.accumulo.server.util.Initialize.isInitialized(Initialize.java:512)
at org.apache.accumulo.server.util.Initialize.checkInit(Initialize.java:163)
... 8 more
Caused by: java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:599)
at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:207)
at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:528)
at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:492)
at org.apache.hadoop.ipc.Client$Connection.setupConnection(Client.java:510)
at org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:604)
at org.apache.hadoop.ipc.Client$Connection.access$2100(Client.java:252)
at org.apache.hadoop.ipc.Client.getConnection(Client.java:1291)
at org.apache.hadoop.ipc.Client.call(Client.java:1209)
... 23 more
Thread "init" died java.lang.reflect.InvocationTargetException
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.accumulo.start.Main$1.run(Main.java:103)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.RuntimeException: java.io.IOException: Failed to check if filesystem already initialized
at org.apache.accumulo.server.util.Initialize.main(Initialize.java:549)
... 6 more
Caused by: java.io.IOException: Failed to check if filesystem already initialized
at org.apache.accumulo.server.util.Initialize.checkInit(Initialize.java:178)
at org.apache.accumulo.server.util.Initialize.doInit(Initialize.java:185)
at org.apache.accumulo.server.util.Initialize.main(Initialize.java:545)
... 6 more
Caused by: java.net.ConnectException: Call From localhost.localdomain/127.0.0.1 to localhost.localdomain:8020 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.apache.hadoop.net.NetUtils.wrapWithMessage(NetUtils.java:782)
at org.apache.hadoop.net.NetUtils.wrapException(NetUtils.java:729)
at org.apache.hadoop.ipc.Client.call(Client.java:1242)
at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:202)
at com.sun.proxy.$Proxy10.getFileInfo(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:164)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:83)
at com.sun.proxy.$Proxy10.getFileInfo(Unknown Source)
at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getFileInfo(ClientNamenodeProtocolTranslatorPB.java:629)
at org.apache.hadoop.hdfs.DFSClient.getFileInfo(DFSClient.java:1545)
at org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:820)
at org.apache.hadoop.fs.FileSystem.exists(FileSystem.java:1380)
at org.apache.accumulo.server.util.Initialize.isInitialized(Initialize.java:512)
at org.apache.accumulo.server.util.Initialize.checkInit(Initialize.java:163)
... 8 more
Caused by: java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:599)
at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:207)
at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:528)
at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:492)
at org.apache.hadoop.ipc.Client$Connection.setupConnection(Client.java:510)
at org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:604)
at org.apache.hadoop.ipc.Client$Connection.access$2100(Client.java:252)
at org.apache.hadoop.ipc.Client.getConnection(Client.java:1291)
at org.apache.hadoop.ipc.Client.call(Client.java:1209)
... 23 more