hadoop-hdfs-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Steve Loughran <ste...@hortonworks.com>
Subject Re: Issue with DN and NN connection.
Date Mon, 22 Sep 2014 08:24:26 GMT
On 22 September 2014 08:02, surendra lilhore <surendra.lilhore@huawei.com>
wrote:

> org.apache.hadoop.hdfs.server.protocol.DisallowedDatanodeException: *Datanode
> denied communication with namenode because hostname cannot be resolved*
> (ip=10.18.0.108, hostname=10.18.0.108): DatanodeRegistration(10.18.0.117,
> datanodeUuid=0ed5012a-7ef6-4b55-b87b-fec70296faa3, infoPort=25002,
> ipcPort=50020, storageInfo=lv=-55;cid=myhacluster;nsid=1613974306;c=0)
>
>        at
> org.apache.hadoop.hdfs.server.blockmanagement.DatanodeManager.registerDatanode(DatanodeManager.java:806)
>
>        at
> org.apache.hadoop.hdfs.server.namenode.FSNamesystem.registerDatanode(FSNamesystem.java:4313)
>
>
>

1. From a stack trace you are free to go back and work out what is
happening.
2. By the look of things, It's  happening in the NN, working out who is
calling it

  public void registerDatanode(DatanodeRegistration nodeReg)
      throws DisallowedDatanodeException, UnresolvedTopologyException {
    InetAddress dnAddress = *Server.getRemoteIp();*


As to why it's using the private IP over public, that's probably a decision
by the networking stack deciding which interface can get packets to the NN.



You do appear to be able to turn that check off:

      if (checkIpHostnameInRegistration && !isNameResolved(dnAddress)) {
        ...
}

which comes down to a configurable check:


  public static final String
DFS_NAMENODE_DATANODE_REGISTRATION_IP_HOSTNAME_CHECK_KEY =
"dfs.namenode.datanode.registration.ip-hostname-check";
  public static final boolean
DFS_NAMENODE_DATANODE_REGISTRATION_IP_HOSTNAME_CHECK_DEFAULT = true;


try setting it to false and the check will be skipped. Be advised though
-the NN does appear to save the senders IP to use for the RPC channel in
future, so if the NN cannot reach the DN via the same IP address that it
registered on —you won't have a file system.

I'd play with network settings, especially the routing options on your
floating vs VPN addresses.

-- 
CONFIDENTIALITY NOTICE
NOTICE: This message is intended for the use of the individual or entity to 
which it is addressed and may contain information that is confidential, 
privileged and exempt from disclosure under applicable law. If the reader 
of this message is not the intended recipient, you are hereby notified that 
any printing, copying, dissemination, distribution, disclosure or 
forwarding of this communication is strictly prohibited. If you have 
received this communication in error, please contact the sender immediately 
and delete it from your system. Thank You.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message