0

I'm trying to install Hadoop on Ubuntu. I've followed this tutorial: http://dogdogfish.com/2014/04/26/installing-hadoop-2-4-on-ubuntu-14-04/ and all seems to work fine. But, when I run the command:

hadoop namenode -format

I get the following INFOs:

14/12/26 18:18:21 INFO namenode.NameNode: registered UNIX signal handlers for [TERM, HUP, INT]
14/12/26 18:18:21 INFO namenode.NameNode: createNameNode [-format]
14/12/26 18:18:22 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Formatting using clusterid: CID-b144d870-a74f-4c1c-8918-5b2fcef6805c
14/12/26 18:18:23 INFO namenode.FSNamesystem: No KeyProvider found.

After the "No KeyProvider found", the process is completly stuck and there is no output.

Have you got any idea about what is the problem or how investigate it? Thank you in advance.

Edited: the jstack result

2014-12-27 17:14:53
Full thread dump OpenJDK Zero VM (24.65-b04 mixed mode):

"Attach Listener" daemon prio=10 tid=0x70104060 nid=0xe88 waiting on condition [0x00000000]


 java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
    - None

"Service Thread" daemon prio=10 tid=0xb577e3c0 nid=0xd98 runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
    - None

"Signal Dispatcher" daemon prio=10 tid=0xb577c9b8 nid=0xd97 runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
    - None

"Finalizer" daemon prio=10 tid=0xb5769fd8 nid=0xd96 in Object.wait() [0x7045e000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x859e6a70> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135)
    - locked <0x859e6a70> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151)
    at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

   Locked ownable synchronizers:
    - None

"Reference Handler" daemon prio=10 tid=0xb5768a80 nid=0xd95 in Object.wait() [0x705fe000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x859e6b00> (a java.lang.ref.Reference$Lock)
    at java.lang.Object.wait(Object.java:503)
    at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133)
    - locked <0x859e6b00> (a java.lang.ref.Reference$Lock)

   Locked ownable synchronizers:
    - None

"main" prio=10 tid=0xb570c4b0 nid=0xd93 runnable [0xb59a5000]
   java.lang.Thread.State: RUNNABLE
    at com.google.common.base.CharMatcher$12.setBits(CharMatcher.java:507)
    at com.google.common.base.CharMatcher$Or.setBits(CharMatcher.java:642)
    at com.google.common.base.CharMatcher.precomputedInternal(CharMatcher.java:673)
    at com.google.common.base.Platform.precomputeCharMatcher(Platform.java:53)
    at com.google.common.base.CharMatcher.precomputed(CharMatcher.java:657)
    at com.google.common.base.CharMatcher.<clinit>(CharMatcher.java:179)
    at com.google.common.base.Splitter.on(Splitter.java:125)
    at org.apache.hadoop.crypto.CryptoCodec.getCodecClasses(CryptoCodec.java:114)
    at org.apache.hadoop.crypto.CryptoCodec.getInstance(CryptoCodec.java:59)
    at org.apache.hadoop.crypto.CryptoCodec.getInstance(CryptoCodec.java:100)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.<init>(FSNamesystem.java:779)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.<init>(FSNamesystem.java:755)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.format(NameNode.java:934)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1379)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1504)

   Locked ownable synchronizers:
    - None

"VM Thread" prio=10 tid=0xb5766130 nid=0xd94 runnable

"VM Periodic Task Thread" prio=10 tid=0xb5780058 nid=0xd99 waiting on condition

JNI global references: 355
BlueTree
  • 179
  • 1
  • 13
  • The KeyProvider message should be innocuous. Recently, hadoop added encryption at rest as a new feature. The log just means no KeyProvider for this feature was configured but it is not necessary if you don't use the feature. Can you post a jstack of the namenode process to see where it gets stuck? Also, are the permissions to the namenode data dir set properly for the namenode to write to it? –  Dec 27 '14 at 02:53
  • Thank you for your answer; I added the jstack result in my post. The permission to the data directory is set to "Create and delete files" for "Hadoop" owner and "Access files" to "Hadoop" group. – BlueTree Dec 27 '14 at 16:54
  • 1
    My guess is that this is related to http://stackoverflow.com/questions/17392531/namenode-appears-to-hang-on-start where CharMatcher#setBits hangs. The asker upgraded guava to get past the hang. Perhaps that will work for you? –  Dec 27 '14 at 20:33
  • Your have been very helpful. It works, now. If you edit your comment as an answer, I will quote it. Thank you. – BlueTree Dec 29 '14 at 11:34

0 Answers0