1. 程式人生 > >Hadoop的偽分散式的安裝及部署

Hadoop的偽分散式的安裝及部署

文章目錄


做Hadoop的偽分散式我們分為一下幾個步驟

需要的軟體及原始碼包

  1. FileZilla ——(https://filezilla-project.org
  2. SecureCRT ——(https://download.csdn.net/download/xujingran/10775969
  3. jdk-7u80-linux-x64.gz ——(https://download.csdn.net/download/xujingran/10775975
  4. hadoop-2.6.0.tar.gz([http://archive.apache.org/dist/hadoop/core

安裝JDK

  1. 下載完成JDK和Hadoop的原始碼包
  2. 利用FileZilla把檔案複製到/root資料夾下
  3. 配置JDK,在/usr下建立Java安裝資料夾
   	 mkdir /usr/java
  1. 執行ls命令,檢視檔案是否存在,
  2. 解壓jdk-7u80-linux-x64.gz到本地的/usr/java
	 tar -zxvf jdk-7u80-linux-x64.gz -C /usr/java
  1. 進入cd /usr/java
    執行ls命令檢視是否安裝成功並修改環境變數

        和Windows裡安裝完JDK進行計算機—>屬性—>高階屬性—>環境變數的步驟一樣

	1.vim /etc/profile 
	2.在unset -f pathmunge後面(也就是在最後一行後面)加入
		export JAVA_HOME=/usr/java/jdk1.7.0_80(需要和上面安裝的版本相同)
		export PATH=$PATH:$JAVA_HOME/bin 
  1. 修改完成後不會立即生效,需要執行source命令來讓它生效。
	source /
etc/profile
  1. 輸入java會有回顯資訊,輸入java- version命令會有版本的顯示則表示JDK安裝成功
  2. 輸入jps會有jps的顯示,若沒有則需要配置並安裝yum源,配置方法檢視https://blog.csdn.net/xujingran/article/details/83905273
  3. 配置完yum源執行 yum grep|list openjdk來查詢java包,找到後執行 yum install java-1.7.0-openjdk-devel.x86_64來安裝java包
           

Hadoop的部署安裝

  1. 進入/root,執行ls檢視是否有hadoop的檔案
  2. 執行tar -zxvf hadoop-2.6.0.tar.gz -C /usr/local(將hadoop-2.6.0.tar.gz解壓到/usr/local)
  3. 執行ls檢視是否有這個檔案,並執行mv hadoop-2.6.0/ hadoop注意空格 將名字改為hadoop)
  4. 進入cd /usr/local/hadoop/,輸入vim ~/.bashrc(編輯~/.bashrc檔案)
  5. 配置hadoop的環境變數

        與前面配置的JDK的環境變數不同


    在alias rm=”rm -i”前面加入需要的變數資訊
    export JAVA_HOME=/usr
    export PATH=/usr/local/hadoop/bin/:/usr/local/hadoop/sbin/:$PATH
    export HADOOP_HOME=/usr/local/hadoop
    export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
  1. 修改完成後不會立即生效,需要執行source命令來讓它生效。
	source ~/.bashrc
  1. (1)輸入echo $JAVA_HOME來檢驗變數值,
    (2)輸入java -version檢視java是否配置成功
    (3)輸入hadoop version檢視hadoop是否可用,不可用需要檢查配置檔案是否正確

Hadoop的配置

        我們做的都是在一臺虛擬機器裡做的實驗,所以我們是做的偽分散式的實驗,偽分散式的實驗是需要修改兩個檔案,core-site.xmlhdfs-site.xml,這兩個檔案都是位於/usr/local/hadoop/etc/hadoop資料夾下

  1. (1)修改core-site.xml檔案

    <configuration>
   		 <property>
    		<name>hadoop.tmp.dir</name>
    		<value>file:/usr/local/hadoop/tmp</value>
    		<description>Abase for other temporary directories.</description>
    	</property>
    	<property>
    		<name>fs.defaultFS</name>
    		<value>hdfs://localhost:9000</value>
    	</property>
    </configuration>

(2)修改hdfs-site.xml檔案

    <configuration>
   		 <property>
    		<name>dfs.replication</name>
    		<value>1</value>
    	</property>
    	<property>
    		<name>dfs.namenode.name.dir</name>
    		<value>file:/usr/local/hadoop/tmp/dfs/name</value>
    	</property>
    	<property>
    		<name>dfs.datanode.data.dir</name>
    		<value>file:/usr/local/hadoop/tmp/dfs/data</value>
    	</property>
    </configuration>
  1. 將NameNode格式化,執行hdfs namenode -format命令
            如果顯示successfully formatted或者Exitting with status 0則顯示配置成功,如果顯示Exitting with status 1則配置失敗(不同版本的hadoop顯示會有不同,請大家注意一下
  2. 接下來要開啟NameNode程序和DataNode程序,命令為:start-dfs.sh(此時需要輸入三次密碼)。
  3. 輸入jps命令,如果有jpsSecondaryNameNodeNameNodeDataNode則說明配置成功。
           若沒有SecondaryNameNode,需要stop-dfs.sh關閉程序重新開啟,
           如果沒有NameNode,DataNode,則需要檢查前面的檔案是否有配置錯誤
  4. 成功啟動後在瀏覽器的web介面輸入http://localhost:50070,此時會彈出分散式檔案系統的提示介面。

Hadoop的使用

  1. 在命令列輸入hdfs dfs –mkdir –p /usr/hadoop建立目錄,執行完成後去web頁面的utilities頁面去驗證是否成功
  2. 輸入
 ./bin/hdfs dfs –mkdir –p input./bin/hdfs dfs –mkdir –p input
 ./bin/hdfs dfs –put /etc/hadoop/*.xml input

       將hadoop資料夾下的所有.xml檔案上傳到分散式檔案系統,進入web頁面的utilities頁面去驗證是否成功

  1. 輸入
  mkdir ./output
./bin/hdfs dfs –get hdfs-site.xml ./output

  cat ./output/ hdfs-site.xml 

       在分散式檔案系統中下載hdfs-site.xml 到output資料夾)進入output資料夾下執行ls檢視是否成功。

  1. 實驗結束。