本文檔主要介紹文件存儲 HDFS 版文件系統SDK的安裝及使用方式。
前提條件
背景信息
本文以hadoop-mapreduce-examples為例,介紹文件系統SDK的使用方式。其中MapReduce以偽分布式方式運行。有關MapReduce的偽分布方式,請參見Apache Hadoop。
配置Hadoop
本節以Hadoop 2.7.2版本為例,介紹如何配置Hadoop。
下載Hadoop,建議版本不低于2.7.2。
執行以下命令,解壓Hadoop壓縮包。
tar -zxf hadoop-2.7.2.tar.gz
執行以下命令,設置Hadoop工作環境變量。
export HADOOP_HOME=yourWorkingDir/hadoop-2.7.2
執行
cd hadoop-2.7.2
命令,進入Hadoop目錄。配置hadoop-env.sh文件。
執行以下命令,打開hadoop-env.sh文件。
vim etc/hadoop/hadoop-env.sh
配置
JAVA_HOME
。# ${JAVA_HOME}為您ECS的Java JDK的路徑,請根據實際路徑進行替換。 export JAVA_HOME=${JAVA_HOME}
配置core-site.xml文件。core-site.xml文件中需要修改的內容如下所示。
執行以下命令,打開core-site.xml文件。
vim etc/hadoop/core-site.xml
在core-site.xml文件中,配置如下信息。
<property> <name>fs.defaultFS</name> <value>dfs://f-xxxxxxxx.cn-xxxxx.dfs.aliyuncs.com:10290</value> </property> <property> <name>fs.dfs.impl</name> <value>com.alibaba.dfs.DistributedFileSystem</value> </property> <property> <name>fs.AbstractFileSystem.dfs.impl</name> <value>com.alibaba.dfs.DFS</value> </property>
說明f-xxxxxxxx.cn-xxxxx.dfs.aliyuncs.com
為文件存儲 HDFS 版掛載點地址,請根據實際值替換。core-site.xml的內容需要同步到所有依賴
hadoop-common
的節點上。
部署依賴
下載最新的文件存儲 HDFS 版的文件系統Java SDK。
將下載的SDK拷貝至Hadoop生態系統組件的CLASSPATH上。
推薦將其部署到hadoop-common-x.y.z.jar所在的目錄內,并復制到所有Hadoop節點。對于MapReduce組件,該目錄為${HADOOP_HOME}/share/hadoop/hdfs,命令示例如下。
cp aliyun-sdk-dfs-x.y.z.jar ${HADOOP_HOME}/share/hadoop/hdfs
其中,
x.y.z
為文件系統SDK的版本號,請根據實際版本號替換。
驗證安裝
請執行以下步驟驗證安裝。
準備數據。
運行以下命令創建目錄。
${HADOOP_HOME}/bin/hadoop fs -mkdir -p inputDir
運行以下命令上傳文件(例如,上傳a.txt文件)。
${HADOOP_HOME}/bin/hadoop fs -put a.txt inputDir/
重啟YARN服務。
關閉YARN服務。
${HADOOP_HOME}/sbin/stop-yarn.sh
開啟YARN服務。
${HADOOP_HOME}/sbin/start-yarn.sh
執行樣例測試。
WordCount樣例
${HADOOP_HOME}/bin/hadoop jar \ ${HADOOP_HOME}/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount \ inputDir outputDir
Grep樣例
${HADOOP_HOME}/bin/hadoop jar \ ${HADOOP_HOME}/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep \ inputDir outputDirGrep "the"
后續步驟
關于通過Hadoop FileSystem API接口方式使用文件存儲 HDFS 版文件系統的操作示例,請參見SDK示例。