《十小時入門大數據》學習筆記之Hadoop分佈式集羣環境搭建

  • Hadoop分佈式集羣環境
    hadoop000:192.168.111.185
    hadoop001:192.168.111.186
    hadoop002:192.168.111.187

1、機器準備

1)安裝虛擬機: 使用的是CentOS7,用戶名爲hadoop
2)設置靜態IP:參考centos7設置靜態IP地址

  • 以上只需要安裝一個虛擬機,然後克隆出兩個即可

3)Linux hostname設置:sudo vi /etc/sysconfig/network

#三臺機器的HOSTNAME分別爲hadoop000、hadoop001和hadoop002
NETWORKING=yes
HOSTNAME=hadoop001

4)hostname和ip地址的映射設置:sudo vi /etc/hosts
192.168.111.185 hadoop000
192.168.111.186 hadoop001
192.168.111.187 hadoop002

5)各節點角色分配

  • hadoop000:主節點,NameNode、 ResourceManager、DataNode、NodeManager
  • hadoop001:從節點,DataNode、NodeManager
  • hadoop002:從節點,DataNode、NodeManager

2、前置配置

1)ssh免密碼登錄
在每臺機器的終端上都單獨運行下面的命令

ssh-keygen -t rsa   #一直回車即可

以hadoop000機器爲主,在hadoop000機器終端上運行下面的代碼

ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop000  #輸入yes和用戶密碼
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop001
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop002

驗證:
在hadoop000機器終端上運行下面命令

ssh hadoop000   #能夠登錄成功之後,執行exit退出,在執行下一條命令
ssh hadoop0001 #執行exit退出
ssh hadoop0002

2)JDK安裝
(下面所有的都是在hadoop000上進行,之後再複製到hadoop001和hadoop002即可)
在hadoop000上解壓jdk安裝包並設置JAVA_HOME到系統變量即可

3、集羣安裝

1)Hadoop安裝(在hadoop000機器上)
解壓hadoop安裝包,並設置HADOOP_HOME系統環境變量
配置文件

  • hadoop-env.sh
export JAVA_HOME=/home/hadoop/app/jdk1.7.0_79
  • core-site.xml
<property>
  <name>fs.default.name</name>
   <value>hdfs:///hadoop000:8020</value>
</property>
  • hdfs-site.xml
<property>
  <name>dfs.namenode.name.dir</name>
   <value>/home/hadoop/app/tmp/dfs/name</value>
</property>

<property>
  <name>dfs.datanode.data.dir</name>
   <value>/home/hadoop/app/tmp/dfs/data</value>
</property>
  • yarn-site.xml
<property>
  <name>yarn.nodemanager.aux-services</name>
   <value>mapreduce_shuffle</value>
</property>

<property>
  <name>yarn.resourcemanager.hostname</name>
   <value>hadoop000</value>
</property>
  • mapred-site.xml
<property>
  <name>mapreduce.framework.name</name>
   <value>yarn</value>
</property>
  • slaves
hadoop000
hadoop001
hadoop002

2)分發安裝包到hadoop001和hadoop002節點上
注意:三臺機器的用戶名都是一樣的,只是機器名不一樣哦)

#分發hadoop和jdk,因文件比較大、分發過程可能有點慢
scp -r ~/app hadoop@hadoop001:~/
scp -r ~/app hadoop@hadoop002:~/
#分發配置文件
scp ~/.bash_profile hadoop@hadoop001:~/
scp ~/.bash_profile hadoop@hadoop002:~/

在學習過程中強烈推薦使用僞分佈式
在hadoop001和hadoop002機器上讓.bash_profile生效

#分別在hadoop001和hadoop002中執行
source ~/.bash_profile

3)對NameNode做格式化:只要在hadoop000機器上執行即可

hdfs namenode -format

4)啓動集羣:只要在hadoop000上執行即可

sbin/start-all.sh

5)驗證:jps


  • webui:hadoop000:50070

    6)停止機器:在hadoop000上執行即可

sbin/stop-all.sh

至此,hadoop集羣搭建完畢!

4、集羣使用

集羣使用與分佈式集羣的使用方式一模一樣。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章