在Ubuntu上安裝Hadoop單機版

weixin_33751566發表於2018-12-12

原文地址: https://itweknow.cn/detail?id=52 ,歡迎大家訪問。

前置條件

安裝Hadoop

  1. 前置說明
    文中的hadoop壓縮包存放位置為~/apps/hadoop/hadoop-2.8.5.tar.gz,解壓後的hadoop地址為~/apps/hadoop/hadoop-2.8.5

  2. 解壓hadoop壓縮包

    root@test:~/apps/hadoop# tar -xzvf hadoop-2.8.5.tar.gz
    
  3. 配置hadoop-env.sh,其路徑為~/apps/hadoop/hadoop-2.8.5/etc/hadoop/httpfs-env.sh。只需要做一個小小的修改,就是將${JAVA_HOME}修改為我們JDK的目錄即可。

      export JAVA_HOME=/usr/local/Java/jdk1.8.0_181
    
  4. 配置core-size.xml,其路徑為~/apps/hadoop/hadoop-2.8.5/etc/hadoop/core-size.xml。主要是新增了兩個配置項fs.defaultFShadoop.tmp.dir

    <configuration>
      <!-- 指定HADOOP所使用的檔案系統schema(URI),HDFS的老大(NameNode)的地址 -->
      <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
      </property>
    
      <!-- 指定hadoop執行時產生檔案的儲存目錄 -->
      <property>
        <name>hadoop.tmp.dir</name>
        <value>/root/hadoop/tmp</value>
      </property>
    </configuration>
    
  5. 配置hdfs-site.xml,這裡主要配置了HDFS副本的數量,也就是一個檔案存在HDFS中的份數。

    <configuration>
      <!-- 指定HDFS副本的數量 -->
      <property>
        <name>dfs.replication</name>
        <value>1</value>                                                                                    
      </property>
    </configuration>
    
    
  6. 配置mapred-site.xml,配置這個的時候會比上面多上那麼一步,因為hadoop中這個配置檔案的模板名稱為mapred-site.xml.template,我們需要改個名字。

    cp mapred-site.xml.template mapred-site.xml
    

    配置檔案的內容為:

    <configuration>
      <!-- 指定MapReduce程式執行在yarn上 -->
      <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
      </property>
    </configuration>
    
  7. 配置yarn-site.xml

       <configuration>
         <!-- 指定ResourceManager(YARN的老大)的地址,主機名 -->
         <property>
           <name>yarn.resourcemanager.hostname</name>
           <value>test</value>
         </property>
         <!-- reducer獲取資料的方式 -->
         <property>
           <name>yarn.nodemanager.aux-services</name>
           <value>mapreduce_shuffle</value>
         </property>
       </configuration>
    
  8. 將hadoop新增到環境變數中

    export HADOOP_HOME=/root/apps/hadoop/hadoop-2.8.5
    export PATH=export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
    
  9. 使環境變數生效

    root@test:~/apps/hadoop/hadoop-2.8.5# source /etc/profile
    

測試

  1. 檢視hadoop版本
    root@test:~/apps/hadoop/hadoop-2.8.5# hadoop version
    
    你應該可以看到如下結果
    Hadoop 2.8.5
    Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r 0b8464d75227fcee2c6e7f2410377b3d53d3d5f8
    Compiled by jdu on 2018-09-10T03:32Z
    Compiled with protoc 2.5.0
    From source with checksum 9942ca5c745417c14e318835f420733
    This command was run using /root/apps/hadoop/hadoop-2.8.5/share/hadoop/common/hadoop-common-2.8.5.jar
    
  2. 啟動hdfs,首先切到/root/apps/hadoop/hadoop-2.8.5/sbin目錄下,該目錄下有很多hadoop的啟動指令碼,比如start-all.sh是啟動所有服務的,start-dfs.sh是單獨啟動hdfs的。
    (1) 格式化namenode
    hdfs namenode -format
    
    (2) 啟動hadoop的全部服務
     ./start-all.sh
    
    (3) jps命令檢視啟動結果
    root@test:~/apps/hadoop/hadoop-2.8.5/etc/hadoop# jps
    15920 Jps
    15283 SecondaryNameNode
    15430 ResourceManager
    15063 DataNode
    15599 NodeManager
    14879 NameNode
    
    (4) 瀏覽器檢視hdfs的網頁端,訪問地址http://{虛擬機器IP}:50070
    5700489-d050f4de6eafc4fd.png
    image

相關文章