hadoop2.7.3徹底分佈式集羣搭建

環境配置:java

    虛擬機:vmware workstation 12node

    系統:centos7linux

    節點:web

        192.168.1.111    yun1apache

        192.168.1.112   yun2vim

        192.168.1.113    yun3centos

jdk-7u79-Linux-x64.gz (Java )app

hadoop-2.7.3.tar.gz (Hadoop 包)ssh

1.修改虛擬機的hostname和hosts文件webapp

hostname(修改主機名):vim /etc/hostname

hosts(設置節點名與ip的映射):vim /etc/hosts

2.安裝jdk與配置環境變量

1)下載jdk安裝包(自行百度),並將安裝包拖入到虛擬機當中

2)經過cd命令進入到安裝包的當前目錄,利用以下命令進行解壓縮。

tar -zxvf jdk  *****(安裝包名稱)

3)利用以下命令將解壓後的文件夾移到/usr目錄下 

mv jdk1.7...(文件夾名稱) /opt

4)配置環境變量

vim /etc/profile

在末尾添加

  1. export JAVA_HOME=/usr/java   
  2. export JRE_HOME=/usr/java/jre    
  3. export CLASSPATH=$JAVA_HOME/lib    
  4. export PATH=:$PATH:$JAVA_HOME/bin:$JRE_HOME/bin  

 

輸入以下命令使配置生效:source /etc/profile

查看是否成功:java

3.設置ssh免密碼登陸

對主機和節點都使用ssh-keygen -t rsa生成.ssh文件夾,而後將本機.ssh中的id_rsa.pub中的內容覆蓋到節點.ssh文件夾中的authorized_keys.

ssh-keygen -t rsa

scp ~/.ssh/id_rsa.pub root@yun*:~/.ssh/authorized_keys

對每個節點都發送這個認證文件後:執行 chmod 600 ~/.ssh/authorized_keys

進行權限的修改

這樣就能夠了。

4.在主機yun1上配置hadoop而後發送到其餘節點上

1)解包移動

  1. #解壓hadoop包  
  2. tar -zxvf hadoop...  
  3. #將安裝包移到/opt目錄下  
  4. mv hadoop... /opt/hadoop  

 

2)新建文件夾

  1. #在/opt/hadoop目錄下新建以下目錄(root)  
  2. mkdir dfs  
  3. mkdir dfs/name  
  4. mkdir dfs/data  
  5. mkdir tmp/ 

 

3)配置文件:hadoop-env.sh(文件都在/opt/hadoop/etc/hadoop中)

修改JAVA_HOME值(export JAVA_HOME=/opt/jdk1.7.0_79) 

 

4)配置文件:yarn-env.sh

修改JAVA_HOME值(export JAVA_HOME=/opt/jdk1.7.0_79)

5)配置文件:slaves

將內容修改成:

yun2
yun3

6)配置文件:core-site.xml

  1. <configuration>  
  2.     <property>  
  3.         <name>fs.defaultFS</name>  
  4.         <value>hdfs://yun1:9000</value>  
  5.     </property>  
  6.     <property>  
  7.         <name>io.file.buffer.size</name>  
  8.         <value>131072</value>  
  9.     </property>  
  10.     <property>  
  11.         <name>hadoop.tmp.dir</name>  
  12.         <value>file:/opt/hadoop/tmp</value>  
  13.         <description>Abase for other temporary   directories.</description>  
  14.     </property>  
  15. </configuration>  

 

7)配置文件:hdfs-site.xml

  1. <configuration>  
  2.        <property>  
  3.                 <name>dfs.namenode.secondary.http-address</name>  
  4.                <value>yun1:9001</value>  
  5.        </property>  
  6.      <property>  
  7.              <name>dfs.namenode.name.dir</name>  
  8.              <value>file:/opt/hadoop/dfs/name</value>  
  9.        </property>  
  10.       <property>  
  11.               <name>dfs.datanode.data.dir</name>  
  12.               <value>file:/opt/hadoop/dfs/data</value>  
  13.        </property>  
  14.        <property>  
  15.                <name>dfs.replication</name>  
  16.                <value>2</value>  
  17.         </property>  
  18.         <property>  
  19.                  <name>dfs.webhdfs.enabled</name>  
  20.                   <value>true</value>  
  21.          </property>  
  22. </configuration>  

 

8)配置文件:mapred-site.xml

先建立而後編輯

 cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml

vim etc/hadoop/mapred-site.xml

  1. <configuration>  
  2.           <property>                                                                    
  3.         <name>mapreduce.framework.name</name>  
  4.                 <value>yarn</value>  
  5.            </property>  
  6.           <property>  
  7.                   <name>mapreduce.jobhistory.address</name>  
  8.                   <value>yun1:10020</value>  
  9.           </property>  
  10.           <property>  
  11.                 <name>mapreduce.jobhistory.webapp.address</name>  
  12.                 <value>yun1:19888</value>  
  13.        </property>  
  14. </configuration>  

 

9)配置文件:yarn-site.xml

  1. <configuration>  
  2.         <property>  
  3.                <name>yarn.nodemanager.aux-services</name>  
  4.                <value>mapreduce_shuffle</value>  
  5.         </property>  
  6.         <property>                                                                  
  7. <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>  
  8.                <value>org.apache.hadoop.mapred.ShuffleHandler</value>  
  9.         </property>  
  10.         <property>  
  11.                <name>yarn.resourcemanager.address</name>  
  12.                <value>yun1:8032</value>  
  13.        </property>  
  14.        <property>  
  15.                <name>yarn.resourcemanager.scheduler.address</name>  
  16.                <value>yun1:8030</value>  
  17.        </property>  
  18.        <property>  
  19.             <name>yarn.resourcemanager.resource-tracker.address</name>  
  20.              <value>yun1:8031</value>  
  21.       </property>  
  22.       <property>  
  23.               <name>yarn.resourcemanager.admin.address</name>  
  24.                <value>yun1:8033</value>  
  25.        </property>  
  26.        <property>  
  27.                <name>yarn.resourcemanager.webapp.address</name>  
  28.                <value>yun1:8088</value>  
  29.        </property>  
  30. </configuration>  

 

10)將hadoop傳輸到yun2和yun3 opt/hadoop目錄,(若是傳輸時報錯說 :權限拒絕,先把文件傳送到非/opt目錄下,而後在yun上把這個文件再移動到/opt/hadoop)

 scp -r /usr/hadoop hadoop@yun2:/usr/hadoop
七、配置環境變量,並啓動hadoop,檢查是否安裝成功
1)配置環境變量
#編輯/etc/profile
sudo vim /etc/profile
#以上已經添加過java的環境變量,在後邊添加就能夠

5.配置環境變量,並啓動hadoop,檢查是否安裝成功

  1. #hadoop  
  2. export HADOOP_HOME=/opt/hadoop/hadoop-2.7.3 
  3. export PATH=$PATH:$HADOOP_HOME/sbin  
  4. export PATH=$PATH:$HADOOP_HOME/bin  

執行 

source /etc/profile

 

使文件生效。

2)啓動hadoop,進入hadoop安裝目錄

bin/hdfs namenode -format
sbin/start-all.sh

3)啓動後分別在yun1, yun2下輸入jps查看進程

看到下面的結果,則表示成功。

 

錯誤解決:WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-Java classes where applicable

提示hadoop不能加載本地庫。

解決方法:配置環境變量

在/etc/profile中,添加下面配置:

最後記得使配置生效:source /etc/profile

並把相同配置添加到hadoop-env.sh文件末尾。

相關文章
相關標籤/搜索