全部产品

使用开源HDFS客户端访问

更新时间:2020-09-29 18:29:45

本章介绍如何使用开源HDFS 客户端访问文件引擎。

运行环境准备

  1. 运行查看java -version命令,查看JDK版本:JDK 版本不能低于1.7。

  2. 按照以下方式设置环境变量,假设 java 安装位置为 /opt/install/java 。

JAVA_HOME=/opt/install/java
PATH=/opt/install/java/bin:$PATH

客户端下载

您可以从 Apache官网下载 hadoop 2.7.3 版本SDK:hadoop-2.7.3.tar.gz

配置Hadoop

  1. 下载 hadoop-2.7.3 发布包。

  2. 运行 tar -zxvf hadoop-2.7.3.tar.gz 解压缩下载的sdk包 。

  3. 运行 export HADOOP_HOME=/installDir/hadoop-2.7.3 命令,设置环境变量。

  4. 运行 cd $HADOOP_HOME 进入hadoop 目录。

  5. 修改 etc/hadoop/hadoop-env.sh 文件,并增加环境准备中设置的JAVA_HOME , 假设 java 安装在/opt/install/java 。

    # set to the root of your Java installation
    export JAVA_HOME=/opt/install/java
  6. 修改 etc/hadoop/core-site.xml 文件 , core-site.xml 文件中需要修改的内容如下所示,其中实例id需要替换为实际的实例id。

    <configuration>
      <property>
         <name>fs.defaultFS</name>
         <value>hdfs://${实例id}</value>
      </property>
    </configuration>
  7. 修改 etc/hadoop/hdfs-site.xml 文件,hdfs-site.xml 文件中需要修改的内容如下所示,其中实例id需要替换为实际的实例id。

    <configuration>
      <property>
            <name>dfs.nameservices</name>
            <value>${实例id}</value>
        </property>
        <property>
           <name>dfs.client.failover.proxy.provider.${实例id}</name>
           <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
        </property>
        <property>
           <name>dfs.ha.automatic-failover.enabled</name>
           <value>true</value>
        </property>
        <property>
           <name>dfs.ha.namenodes.${实例id}r</name>
           <value>nn1,nn2</value>
        </property>
         <property>
           <name>dfs.namenode.rpc-address.${实例id}.nn1</name>
           <value>${实例id}-master1-001.lindorm.rds.aliyuncs.com:8020</value>
        </property>
        <property>
           <name>dfs.namenode.rpc-address.${实例id}.nn2</name>
           <value>${实例id}-master2-001.lindorm.rds.aliyuncs.com:8020</value>
        </property>
    </configuration>
说明

可以在Lindorm控制台<文件引擎中单击一键生成配置项按钮自动生成配置文件,详情请参见开通指南

常用操作示例

  1. 上传本地文件。

    • 创建目录

    $HADOOP_HOME/bin/hadoop fs -mkdir /test
    • 准备一个文件,将其上传到文件引擎

    echo "test" > test.log
    $HADOOP_HOME/bin/hadoop fs -put test.log /test
  2. 查看上传的文件。

     $HADOOP_HOME/bin/hadoop fs -ls /test
  3. 下载文件到本地。

    $HADOOP_HOME/bin/hadoop fs -get /test/test.log
注意

访问文件引擎的节点需要加入Lindorm白名单,添加方法请参见设置白名单