用于访问HDFS中的文件的URI

nis*_*013 4 hdfs ambari

我使用包含3个节点的Ambari设置了一个集群.

现在我想使用我的客户端应用程序访问HDFS中的文件.

我可以在Amabari的数据节点下找到所有节点URI.

我需要使用什么URI +端口来访问文件?我使用了默认的安装过程.

Man*_*lur 11

默认端口为"8020".

您可以通过3种不同的方式访问"hdfs"路径.

  1. 只需使用"/"作为根路径

    例如

    E:\HadoopTests\target>hadoop fs -ls /
    Found 6 items
    drwxrwxrwt   - hadoop  hdfs          0 2015-08-17 18:43 /app-logs
    drwxr-xr-x   - mballur hdfs          0 2015-11-24 15:36 /tmp
    drwxrwxr-x   - mballur hdfs          0 2015-10-20 15:27 /user
    
    Run Code Online (Sandbox Code Playgroud)
  2. 使用"hdfs:///"

    例如

    E:\HadoopTests\target>hadoop fs -ls hdfs:///
    Found 6 items
    drwxrwxrwt   - hadoop  hdfs          0 2015-08-17 18:43 hdfs:///app-logs
    drwxr-xr-x   - mballur hdfs          0 2015-11-24 15:36 hdfs:///tmp
    drwxrwxr-x   - mballur hdfs          0 2015-10-20 15:27 hdfs:///user
    
    Run Code Online (Sandbox Code Playgroud)
  3. 使用"hdfs:// {NameNodeHost}:8020 /"

    例如

    E:\HadoopTests\target>hadoop fs -ls hdfs://MBALLUR:8020/
    Found 6 items
    drwxrwxrwt   - hadoop  hdfs          0 2015-08-17 18:43 hdfs://MBALLUR:8020/app-logs
    drwxr-xr-x   - mballur hdfs          0 2015-11-24 15:36 hdfs://MBALLUR:8020/tmp
    drwxrwxr-x   - mballur hdfs          0 2015-10-20 15:27 hdfs://MBALLUR:8020/user
    
    Run Code Online (Sandbox Code Playgroud)

    在这种情况下,"MBALLUR"是我的名称节点主机的名称.