Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-4043

Namenode Kerberos Login does not use proper hostname for host qualified hdfs principal name.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.0.0-alpha, 2.0.1-alpha, 2.0.2-alpha, 2.0.3-alpha, 3.4.0, 3.3.5
    • 3.4.0, 3.3.5
    • security
    • CDH4U1 on Ubuntu 12.04

    • Reviewed

    Description

      The Namenode uses the loginAsNameNodeUser method in NameNode.java to login using the hdfs principal. This method in turn invokes SecurityUtil.login with a hostname (last parameter) obtained via a call to InetAddress.getHostName. This call does not always return the fully qualified host name, and thus causes the namenode to login to fail due to kerberos's inability to find a matching hdfs principal in the hdfs.keytab file. Instead it should use InetAddress.getCanonicalHostName. This is consistent with what is used internally by SecurityUtil.java to login in other services, such as the DataNode.

      Attachments

        Issue Links

          Activity

            People

              svaughan Steve Vaughan
              ahadr Ahad Rana
              Votes:
              0 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - 24h
                  24h
                  Remaining:
                  Time Spent - 50m Remaining Estimate - 23h 10m
                  23h 10m
                  Logged:
                  Time Spent - 50m Remaining Estimate - 23h 10m
                  50m