1. 程式人生 > >Windows下搭建本地hadoop環境

Windows下搭建本地hadoop環境

一、安裝JDK

下載地址:

安裝

雙擊安裝,安裝到目錄:D:\soft\JDK1.8

配置

環境變數配置:
在環境變數新增系統變數:JAVA_HOME:D:\soft\JDK1.8
在path中新增:
%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin

驗證

在cmd終端執行命令:java
如果沒有報錯,且打印出相關資訊,說明安裝成功。

二、安裝Hadoop

2.1 下載Hadoop

2.2 安裝Hadoop

將Hadoop安裝檔案解壓到指定目錄:D:\develop\hadoop-2.7.6

2.3 配置Hadoop的環境變數

在path中新增: D:\develop\hadoop-2.7.6\bin

2.4 配置Hadoop檔案

1.編輯“D:\develop\hadoop-2.7.6\etc\hadoop”下的core-site.xml檔案,將下列文字貼上進去,並儲存。

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/D:/develop/hadoop/workplace/tmp</value>
    </property>
    <property>
        <name>dfs.name.dir</name>
        <value>/D:/develop/hadoop/workplace/name</value>
    </property>
    <property>
        <name>fs.default
.name</name> <value>hdfs://localhost:9000</value> </property> </configuration>

2.編輯“D:\develop\hadoop-2.7.6\etc\hadoop”目錄下的hdfs-site.xml,貼上以下內容並儲存。

<configuration>

    <!-- 這個引數設定為1,因為是單機版hadoop -->
    <property>
        <name>dfs.replication</name>
        <value>1
</value> </property> <property> <name>dfs.data.dir</name> <value>/D:/develop/hadoop/workplace/data</value> </property> </configuration>

3.編輯“D:\develop\hadoop-2.7.6\etc\hadoop”目錄下的mapred-site.xml(如果不存在將mapred-site.xml.template重新命名為mapred-site.xml)檔案,貼上一下內容並儲存。

<configuration>
<property>
       <name>mapreduce.framework.name</name>
       <value>yarn</value>
    </property>
    <property>
       <name>mapred.job.tracker</name>
       <value>hdfs://localhost:9001</value>
    </property>

</configuration> 

4.編輯“D:\develop\hadoop-2.7.6\etc\hadoop”目錄下的yarn-site.xml檔案,貼上以下內容並儲存。

<configuration>

<!-- Site specific YARN configuration properties -->

    <property>
       <name>yarn.nodemanager.aux-services</name>
       <value>mapreduce_shuffle</value>
    </property>
    <property>
       <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
       <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>

</configuration> 

5.編輯“D:\develop\hadoop-2.7.6\etc\hadoop”目錄下的hadoop-env.cmd檔案,加入JAVA_HOME的路徑,然後儲存。

export JAVA_HOME=${JAVA_HOME} 

2.5 替換檔案

2.6 執行hadoop

  • 1.執行cmd視窗,執行:hdfs namenode -format。
  • 2.執行cmd視窗,切換到hadoop的sbin目錄,執行start-all.cmd,它將會啟動以下4個程序視窗。

2.7 驗證

  • Namenode GUI 地址 – http://localhost:50070
    如果這兩個地址都能夠開啟,說明執行成功。

    bindexception address already in use:0.0.0.0:50070 

    檢視埠50070: netstat -ano|findstr 50070
    發現埠並沒有被佔用。
    按照網上的方法:

    • 暫停所有Hadoop程序;
    • 清除core-site.xml、hdfs-site.xml檔案中配置的所有目錄檔案
    • 重新hdfs namenode -format
      重新執行D:\develop\hadoop-2.7.6\sbin/start-all.cmd,結果還是報錯。
      懷疑是其他軟體影響導致,於是,關閉了360衛士和360防毒等軟體,保留了谷歌瀏覽器。 重複上述方法,OK啦!

2.8 上傳檔案測試

2.8.1 建立輸入目錄

hadoop fs -mkdir hdfs://localhost:9000/user/

上傳資料到目錄

hadoop fs -put D:\test\README.txt hdfs://localhost:9000/user/wcinput

檢視檔案

終端執行命令hadoop fs -ls hdfs://localhost:9000/user/wcinput
D:\develop\hadoop-2.7.6>hadoop fs -ls hdfs://localhost:9000/user/wcinput
Found 1 items
-rw-r–r– 1 tancan supergroup 1366 2018-07-06 22:19 hdfs://localhost:9000/user/wcinput/README.txt

–發現檔案已經存在。