Centos7 搭建 hadoop3.1.1 集群教程


 

  • 配置環境要求:

  1. Centos7
  2. jdk 8
  3. Vmware 14 pro
  4. hadoop 3.1.1
  • Hadoop下載

  • 安裝4台虛擬機,如圖所示

  1. 克隆之后需要更改網卡選項,ip,mac地址,uuid

  2.  

  3. 重啟網卡:

     

  4. 為了方便使用,操作時使用的root賬戶

  •  設置機器名稱

  1. 再使用hostname命令,觀察是否更改

    類似的,更改其他三台機器hdp-02、hdp-03、hdp-04。

  • 在任意一台機器Centos7上修改域名映射

    1. vi /etc/hosts
    2. 修改如下
    3. 使用scp命令發送其他克隆機上    scp /etc/hosts 192.168.126.124:/etc/

  • 給四台機器生成密鑰文件

  1.  確認生成
  2. 把每一台機器的密鑰都發送到hdp-01上(包括自己
  3. 將所有密鑰都復制到每一台機器上
  • 在每一台機器上測試

  1. 無需密碼則成功,保證四台機器之間可以免密登錄
  • 安裝Hadoop

  1. 在usr目錄下創建Hadoop目錄,以保證Hadoop生態圈在該目錄下。
  2. 使用xsell+xFTP傳輸文
  3. 解壓縮Hadoop

  • 配置java與hadoop環境變量

1 export JAVA_HOME=/usr/jdk/jdk1.8.0_131
2 export JRE_HOME=${JAVA_HOME}/jre
3 export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
4 export PATH=${JAVA_HOME}/bin:$PATH
5 
6 export HADOOP_HOME=/usr/hadoop/hadoop-3.1.1/
7 export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

注意:以上四台機器都需要配置環境變量

  • 修改etc/hadoop中的配置文件

    注:除了個別提示,其余文件只用修改hdp-01中的即可

  1. 修改core-site.xml 
     1 <configuration>
     2 <property>
     3 <name>fs.defaultFS</name>
    <!-- 注意別的slave機需要識別master主機名,否則將不能與主機hdp-01溝通 -->
    4 <value>hdfs://hdp-01:9000</value> 5 </property> 6 <property> 7 <name>hadoop.tmp.dir</name> 8 <!-- 以下為存放臨時文件的路徑 --> 9 <value>/opt/hadoop/hadoop-3.1.1/data/tmp</value> 10 </property> 11 </configuration>

     

  2. 修改hadoop-env.sh

    1 export JAVA_HOME=/usr/jdk/jdk1.8.0_131

     

    注:該步驟需要四台都配置

  3. 修改hdfs-site.xml

     1 <configuration>
     2 <property>
     3   <name>dfs.namenode.http-address</name>
     4  <!-- hserver1 修改為你的機器名或者ip -->
     5   <value>hdp-01:50070</value>
     6  </property>
     7  <property>
     8   <name>dfs.namenode.name.dir</name>
     9   <value>/hadoop/name</value>
    10  </property>
    11  <property>
    12   <name>dfs.replication</name>
    13    <!-- 備份次數 -->
    14   <value>1</value>
    15  </property>
    16  <property>
    17   <name>dfs.datanode.data.dir</name>
    18   <value>/hadoop/data</value>
    19  </property>
    20 
    21 
    22 </configuration>

     

  4.  修改mapred-site.xml

    1 <configuration>
    2 <property>
    3 <name>mapreduce.framework.name</name>
    4 <value>yarn</value>
    5 </property>
    6 </configuration>
  5. 修改 workers

    1 hdp-01
    2 hdp-02
    3 hdp-03
    4 hdp-04
  6.  修改yarn-site.xml文件

     1 <configuration>
     2 
     3 <!-- Site specific YARN configuration properties -->
     4 <property>
     5 <name>yarn.resourcemanager.hostname</name>
     6  <value>hdp-01</value>
     7 </property>
     8 <property>
     9  <name>yarn.nodemanager.aux-services</name>
    10   <value>mapreduce_shuffle</value>
    11 </property>
    12  <property>
    13   <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
    14 <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    15 </property>
    16 <property>
    17  <name>yarn.nodemanager.resource.cpu-vcores</name>
    18  <value>1</value>
    19 </property>
    20 
    21 </configuration>

    注:可以把整個/usr/hadoop目錄所有文件復制到其余三個機器上 還是通過scp 嫌麻煩的可以先整一台機器,然后再克隆

  • 啟動Hadoop

  1. 在namenode上初始化

    因為hdp-01是namenode,hdp-02、hdp=03和hdp-04都是datanode,所以只需要對hdp-01進行初始化操作,也就是對hdfs進行格式化。

     執行初始化腳本,也就是執行命令:hdfs namenode  -format

    等待一會后,不報錯返回 “Exiting with status 0” 為成功,“Exiting with status 1”為失敗

     

  2. 在namenode上執行啟動命令

    直接執行start-all.sh 觀察是否報錯,如報錯執行一下內容

    $ vim sbin/start-dfs.sh
    $ vim sbin/stop-dfs.sh

    在空白位置加入

    1 HDFS_DATANODE_USER=root
    2 
    3 HADOOP_SECURE_DN_USER=hdfs
    4 
    5 HDFS_NAMENODE_USER=root
    6 
    7 HDFS_SECONDARYNAMENODE_USER=root

     

     

    $ vim sbin/start-yarn.sh 
    $ vim sbin/stop-yarn.sh 

    在空白位置加入

    1 YARN_RESOURCEMANAGER_USER=root
    2 
    3 HADOOP_SECURE_DN_USER=yarn
    4 
    5 YARN_NODEMANAGER_USER=root

     

     

    $ vim start-all.sh

    $ vim stop-all.sh

    1 TANODE_USER=root
    2 HDFS_DATANODE_SECURE_USER=hdfs
    3 HDFS_NAMENODE_USER=root
    4 HDFS_SECONDARYNAMENODE_USER=root
    5 YARN_RESOURCEMANAGER_USER=root
    6 HADOOP_SECURE_DN_USER=yarn
    7 YARN_NODEMANAGER_USER=root

     

    配置完畢后執行start-all.sh

    運行jps

    顯示6個進程說明配置成功

  3. 去瀏覽器檢測一下  http://hdp-01:50070
  4. 創建目錄 上傳不成功需要授權

    hdfs dfs -chmod -R a+wr hdfs://hdp-01:9000/

     

  5. //查看容量
    hadoop fs -df -h /

     

  6. 查看各個機器狀態報告
    hadoop dfsadmin -report

     


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM