1. 程式人生 > >(三)hadoop虛擬機器環境下安裝以及配置

(三)hadoop虛擬機器環境下安裝以及配置

基礎檔案安裝及配置

  1. 上傳jdk, hadoop安裝包到linux
  2. 解壓jdk, 配置JAVA_HOME
  3. 解壓hadoop
  4. 配置HADOOP_HOME(針對全域性配置就修改/etc/profile,針對當前使用者就修改~/.bashrc
  5. 配置$HADOOP_HOME/etc/hadoop/目錄下的5個屬性檔案:

    • hadoop-env.sh
      配置JAVA_HOME路徑
    • core-site.xml

      <configuration>
           <!--指定NameNode路徑-->
           <property>
               <name>fs.defaultFS</name
      >
      <value>hdfs://hadoop01:9000</value> </property> <!--指定執行時臨時檔案路徑--> <property> <name>hadoop.tmp.dir</name> <value>/software/hadoop2.2/tmp</value> </property> </configuration>
    • hdfs-site.xml

      <configuration
      >
      <!--指定hdfs副本數量, 虛擬機器環境下,單臺機器,所以指定為1--> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
    • mapred-site.xml.template

      <!--mv mapred-site.xml.template mapred-site.xml-->
      <configuration
      >
      <!--mapreduce執行在yarn上--> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
    • yarn-site.xml

      <configuration>
           <!--配置NodeManager獲取資料的方式是shuffle-->
           <property>
               <name>yarn.nodemanager.aux-services</name>
               <value>mapreduce_shuffle</value>
           </property>
           <!--配置ResourceManager的地址-->
           <property>
               <name>yarn.resourcemanager.hostname</name>
               <value>hadoop01</value>
           </property>
      </configuration>
  6. 格式化NameNode

    <!--正常情況下格式化一次就行了-->
    hdfs namenode -format

    執行完成之後,大概在倒數第十幾行的地方會提示··· has bean successfully formatted 就表示格式化成功了。
    這裡寫圖片描述

主機之間免密登入

首先檢視~/.ssh/目錄是否存在,如果存在則檢視~/.ssh/目錄下是否存在id_rsa和id_ras.pub檔案,如果都存在,直接進入2, 否則轉1。

  1. 生成主機祕鑰

    ssh-keygen -t rsa

    成功執行後,預設會在~/.ssh/目錄下生成id_rsa(私鑰)和id_rsa.pub(公鑰)兩個檔案。

  2. 將公鑰拷貝到需要遠端登入的主機上,兩種方式:
    第一種:手動複製。
    將~/.ssh/id_rsa.pub裡面的所有內容,追加到(末尾換行)需要免祕登陸的主機的~/.ssh/authorized_keys檔案裡面(沒有authorized_keys檔案則手工建立)。

    第二種:使用命令。

    ssh_copy_id hadoop01(需要免密登入的主機名,ip也行)

    當然以後有很多臺主機,這樣操作很麻煩,所以需要寫shell指令碼進行批量處理。

  3. 免密登入過程
    免密登入過程

啟動hadoop

  • 啟動命令

    // cd $HADOOP_HOME/sbin
    ./start-all.sh    // 這種方式已經過時

    或者是:

    ./start-dfs.sh && ./start-yarn.sh

    啟動之後,jps一下,如果啟動成功,則會顯示一下幾個程序:

    3489 ResourceManager
    3870 Jps
    3353 SecondaryNameNode
    3103 NameNode
    3191 DataNode
    3583 NodeManager
    
  • 在瀏覽器測試
    在瀏覽器輸入地址:

    http://hadoop01:50070

    可進入HDFS的管理介面。
    輸入:

    http://hadoop01:8088

    可進入yarn的管理介面。
    位址列主機名也可以是ip地址,要想可進行主機名方式訪問,必須要在請求訪問的當前主機上做好相關對映。

  • hdfs基礎命令測試
    可以向hdfs裡面上傳或者下載資料,刪除資料等等操作,測試一下是否能成功,例如上傳本地資料到hdfs:

    hdfs dfs -put /software/本地資料檔案 /

    然後檢視檔案是否成功上傳到hdfs:

    hdfs dfs -ls /

至此hadoop的基本配置完成