July 20th, 2016 10:00

This looks like it fails in the form of:

curl -sS -L -w '%{http_code}' -X GET 'http://isilon.hadoop.example.com:8082/webhdfs/v1/tmp?user.name=hdfs&op=GETFILESTATUS'

But is successful with root

curl -sS -L -w '%{http_code}' -X GET 'http://isilon.hadoop.example.com:8082/webhdfs/v1/tmp?user.name=root&op=GETFILESTATUS'

This maybe a user mapping issue:

If you look at the hdfs users access token on Isilon, what do you see:

isi auth mapping token --user=hdfs --zone=

Does the hdfs user actually look like root or is it just hdfs?

I believe the mapping rule is slightly incorrect. A replace rule should look like:  hdfs => root []

5 Posts

July 20th, 2016 19:00

Firstly I tried your URL with root but failed again

[root@hadoop-dev ~]# curl -sS -L -w '%{http_code}' -X GET 'http://isilon.hadoop.example.com:8082/webhdfs/v1/tmp?user.name=root&op=GETFILESTATUS'

{

  "RemoteException":

  {

    "exception"    : "FileNotFoundException",

    "javaClassName": "java.io.FileNotFoundException",

    "message"      : "The requested file or directory does not exist in the filesystem."

  }

}

I tried to run command on isilon

Isilon-1# isi auth mapping token --user=hdfs --zone=zonehdp

                   User

                       Name: root

                        UID: 0

                        SID: S-1-22-1-0

                    On Disk: 0

                    ZID: 2

                   Zone: zonehdp

             Privileges: -

          Primary Group

                       Name: wheel

                        GID: 0

                        SID: S-1-22-2-0

                    On Disk: 0

Supplemental Identities

                       Name: Authenticated Users

                        UID: -

                        GID: -

                        SID: S-1-5-11

It shows the mapping is correct.

Any other suggestions?

July 21st, 2016 10:00

This still looks like a permission issue. Increase the logging level on the hdfs service and see what the hdfs_d.log is saying.

Also start with troubleshooting and getting the mapred & yarn services up, before moving on to all the rest.

If the mapred service fails to start, provide the full output of the log from the ambari start task.

13 Posts

July 21st, 2016 12:00

so  it looks like the zone you're using is zonehdp...and the namenode you are using is isilon.hadoop.example.com, is this defined as the SC name in your network pools? ...just to be sure...because if you have multiple zones it may be complicated.

isi network pools view --id=groupnet0.Hadoop.namenode

                    ID: groupnet0.Hadoop.namenode

              Groupnet: groupnet0

                Subnet: Hadoop

                  Name: namenode

                  Rules: -

            Access Zone: hworx

      Allocation Method: dynamic

      Aggregation Mode: lacp

    SC Suspended Nodes: -

            Description: -

                Ifaces: 1:10gige-1, 1:10gige-2, 2:10gige-1, 2:10gige-2, 3:10gige-1, 3:10gige-2

              IP Ranges: 172.168.10.200-172.168.10.240

      Rebalance Policy: auto

SC Auto Unsuspend Delay: 0

      SC Connect Policy: round_robin

                SC Zone: hworx.bblab.local

    SC DNS Zone Aliases: nn.bblab.local

    SC Failover Policy: round_robin

              SC Subnet: Hadoop

                SC TTL: 0

          Static Routes: -

5 Posts

July 21st, 2016 18:00

Here are my zone details, the 2nd zone is my "hdpzone" which I am using for HDFS. any advice to troubleshoot?

Isilon-1# isi network list pools --verbose

subnet0:pool0 - Default ext-1 pool

          In Subnet: subnet0

         Allocation: Static

             Ranges: 1

                     192.168.1.21-192.168.1.25

    Pool Membership: 3

                     1:ext-1 (up)

                     2:ext-1 (up)

                     3:ext-1 (up)

   Aggregation Mode: Link Aggregation Control Protocol (LACP)

        Access Zone: System (1)

       SmartConnect:                  

                     Suspended Nodes  : None

                     Auto Unsuspend ... 0

                     Zone             : N/A

                     Time to Live     : 0

                     Service Subnet   : N/A

                     Connection Policy: Round Robin

                     Failover Policy  : Round Robin

                     Rebalance Policy : Automatic Failback

subnet0:poolhdp

          In Subnet: subnet0

         Allocation: Static

             Ranges: 1

                     192.168.1.40-192.168.1.45

    Pool Membership: 3

                     1:ext-1 (up)

                     2:ext-1 (up)

                     3:ext-1 (up)

   Aggregation Mode: Link Aggregation Control Protocol (LACP)

        Access Zone: zonehdp (2)

       SmartConnect:                  

                     Suspended Nodes  : None

                     Auto Unsuspend ... 0

                     Zone             : zonehdp

                     Time to Live     : 0

                     Service Subnet   : subnet0

                     Connection Policy: Round Robin

                     Failover Policy  : Round Robin

                     Rebalance Policy : Automatic Failback

As for smart connect host name (isilon.hadoop.example.com) I have added it to the DNS server and point to the smart connect IP address (e.g. 192.168.1.20).

All have said but you should see that my HDFS web API works when query the root directory using root account but query failed when try to access sub-directories by using the same root account. (see my 1st post). That is weird.

2 Intern

 • 

300 Posts

July 22nd, 2016 00:00

Please change your Smartconnectzone to a fqdn.

13 Posts

July 22nd, 2016 09:00

So what is happening is that you are querrying the system zone because your namenode is not the smartconnect zone name of the access zone... in your case it should be zonehdp (and yes it should be an FQDN, zonehdp.hadoop.example.com)

in my example the namenode is the smartconnect zone:  hworx.bblab.local (which is 8.0 sorry if the output looks different)

No Events found!

Top