hadoop2.7.2完全分布式環境搭建


 
1、先使用groupadd hadoop 建立hadoop用戶組
2、新建用戶,useradd -d /usr/hadoop -g hadoop -m hadoop (新建用戶hadoop指定用戶主目錄/usr/hadoop 及所屬組hadoop)
3、passwd hadoop 設置hadoop密碼(這里設置密碼為hadoop)
4、安裝好jdk1.8版本 ,安裝教材地址 http://www.cnblogs.com/shihaiming/p/5809553.html(安裝在/usr/local/jdk1.8目錄)
5、拷貝hadoop2.7.3版本到Linux虛擬機上(放在目錄/usr/hadoop/hadoop 中),到此基本環境已經完成,克隆虛擬機datanode1,datanode2,namenode,備份,總共四份虛擬機,為接下來省去安裝虛擬機步驟。
6、修改主機名 vi /etc/hostname 分別改為datanode1,datanode2,namenode
 
7、配置hadoop 環境變量,修改hadoop用戶目錄下的.bash_profile文件
如圖:

 

8、修改/etc/hosts 文件引入其他服務器主機名 (datanode1,datanode2主機也相應做此操作)

 

8、修改usr/hadoop/hadoop/etc/hadoop/hadoop-env.sh 文件,修改內容如下:
a. 加入一行 export HADOOP_LOG_DIR=/usr/hadoop/log/hadoop ,如果不存在該日志路徑,創建。
b. 設置jdk 安裝路徑 export JAVA_HOME=/usr/local/jdk1.8 (把配置文件中jdk配置去掉注釋,並加上路徑即可)
9、配置hadoop的文件/etc/hadoop/core-site.xm
 
<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/hadoop/hadoop/tmp/</value>
        <description> Abase for other temporary directories</description>
        
    </property>

    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://namenode:9000</value>
    </property>
    <property>
        <name>io.file.buffer.size</name>
        <value>4096</value>
    </property>
</configuration>

hdfs-site.xml

<configuration>
    <property>
        <name>dfs.nameservices</name>
        <value>namenode</value>
    </property>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>namenode:50090</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/usr/hadoop/hadoop/dfs/data</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
    </property>
</configuration>

mapred-site.xml

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.jobtracker.http.address</name>
        <value>namenode:50030</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>namenode:10020</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>namenode:19888</value>
    </property>
    <property> 
        <!--see job-->
        <name>mapred.job.tracker</name>
        <value>namenode:9001</value>
    </property>
</configuration>

yarn-site.xml

<configuration>
<!-- Site specific YARN configuration properties -->
    <property>
        <name>yarn.nodemanager.aux.services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.resourcemanager.address</name>
        <value>namenode:8032</value>
    </property>
    <property>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>namenode:8030</value>
    </property>
    <property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>namenode:8031</value>
</property>
    <property>
        <name>yarn.resourcemanager.admin.address</name>
        <value>namenode:8033</value>
    </property>
    <property>
        <name>yarn.resourcemanager.web.address</name>
        <value>namenode:8088</value>
    </property>
</configuration>

 

在slaves文件中加入
datanode1
datanode2
把已經配置好的hadoop 拷貝到namenode ,datanode1,datanode2的/usr/hadoop/hadoop
10、配置hadoop集群中無密碼登錄
[hadoop@namenode ~]$ssh-keygen -t rsa (產生密鑰和公鑰,一直敲回車鍵,不需要輸入密碼,datanode1,datanoe2同樣做此操作,下面命令只在namenode中進行)
[hadoop@namenode .ssh]$ cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
[hadoop@namenode .ssh]$ ssh datanode1 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
[hadoop@namenode .ssh]$ ssh datanode2 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
然后把authorized_keys 分別拷貝到datanode1,datanode2 的.ssh目錄下
重啟sshd
systemctl restart sshd
 
嘗試下是否實現了無密碼切換服務器。
 
11、啟動hadoop
 
start-dfs.sh
 
start-yarn.sh
 
這就大功告成了


免責聲明!

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



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