一、創建虛擬機 1、從網上下載一個Centos6.X的鏡像(http://vault.centos.org/) 2、安裝一臺虛擬機配置如下:cpu1個、記憶體1G、磁碟分配20G(看個人配置和需求,本人配置有點低所以參數有點低) 3、虛擬機安裝建議去挑戰minidesktop,分區自己創建有/boot ...
一、創建虛擬機
1、從網上下載一個Centos6.X的鏡像(http://vault.centos.org/)
2、安裝一臺虛擬機配置如下:cpu1個、記憶體1G、磁碟分配20G(看個人配置和需求,本人配置有點低所以參數有點低)
3、虛擬機安裝建議去挑戰minidesktop,分區自己創建有/boot(300)、swap(300)、/(分配全部空間)。
二、集群環境配置
1.準備Linux環境
設置一個IP地址,先將虛擬機的網路模式選為NAT模式,對應vmnet1和vmnet8,保證能ping通VMNet8和網路 例:www.baidu.com
修改主機名
#vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME= hadoop01
修改IP
兩種方式:
第一種:通過Linux圖形界面進行修改
進入Linux圖形界面 -> 右鍵點擊右上方的兩個小電腦 -> 點擊Edit connections -> 選中當前網路System eth0 -> 點擊edit按鈕 -> 選擇IPv4 -> method選擇為manual -> 點擊add按鈕 -> 添加IP:192.168.35.100 子網掩碼:255.255.255.0 (網關:192.168.1.1) -> apply
第二種:修改配置文件方式
#vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static"
ONBOOT="yes"
TYPE="Ethernet"
IPADDR="192.168.35.100"
NETMASK="255.255.255.0"
修改主機名和IP的映射關係
#vim /etc/hosts 192.168.35.100 hadoop01 192.168.35.101 hadoop02
關閉linux的防火牆
#查看防火牆狀態 service iptables status #關閉防火牆 service iptables stop #查看防火牆開機啟動狀態 chkconfig iptables --list #關閉防火牆開機啟動 開啟防火牆 on chkconfig iptables off
關閉window的防火牆
進入到windows的控制面板-> 找到window防火牆 -> 點擊關閉windwos防火牆,全部關閉
開啟或關閉linux伺服器的圖形界面:
vi /etc/inittab
重啟Linux : reboot
2.安裝JDK
上傳JDK (上傳工具 wincp ,securecrt ,vmtools)
解壓jdk
tar -zxvf jdk-7u80-linux-x64.tar.gz -C /usr/local (一般在linux里放公共的系統使用的文件)
將java添加到環境變數中
vim /etc/profile
#在文件最後添加
export JAVA_HOME=/usr/local/jdk1.7.0_80
export PATH=$PATH:$JAVA_HOME/bin
#刷新配置
source /etc/profile
Java -sersion驗證一下
三、Hadoop環境搭建(在這裡我將HDFS和YARN的配置信息放在了一起)
1、安裝hadoop2.8.5
創建一個目錄mkdir /bigdata,先上傳hadoop的安裝包到伺服器上去/bigdata,解壓hadoop工具到/bigdata文件中,tar -zxvf hadoop-2.6.4.tar.gz -C /bigdata
註意:hadoop2.x的配置文件$HADOOP_HOME/etc/hadoop
偽分散式需要修改5個配置文件
2、配置hadoop核心文件
1 <!--第一個:hadoop-env.sh->
2 vim hadoop-env.sh
3 #第27行
4 export JAVA_HOME=/usr/local/jdk1.7.0_80
5 <!--第二個:core-site.xml->
6 <!-- 指定HADOOP所使用的文件系統schema(URI),HDFS的老大(NameNode)的地址 -->
7 <property>
8 <name>fs.defaultFS</name>
9 <value>hdfs://hadoop01:9000</value>
10 <!--必須配置了hosts,要不然就是ip-?
11 </property>
12 <!-- 指定hadoop運行時產生文件的存儲目錄 -->
13 <property>
14 <name>hadoop.tmp.dir</name>
15 <value>/bigdata/hadoop-2.6.4/data</value>
16 </property>
17 <!--第三個:hdfs-site.xml->
18 <!-- 指定HDFS副本的數量 -->
19 <property>
20 <name>dfs.replication</name>
21 <value>1</value> 3
22 </property>
23 <!--第四個:mapred-site.xml 系統沒有直接提供,需要修改模板文件 mv mapred-site.xml.template mapred-site.xml vim mapred-site.xml ->
24 <!-- 指定mr運行在yarn上 -->
25 <property>
26 <name>mapreduce.framework.name</name>
27 <value>yarn</value>
28 </property>
29 <!-- 第五個:yarn-site.xml->
30 <!-- 指定YARN的老大(ResourceManager)的地址 -->
31 <property>
32 <name>yarn.resourcemanager.hostname</name>
33 <value>hadoop01</value>
34 </property>
35 <!-- reducer獲取數據的方式 -->
36 <property>
37 <name>yarn.nodemanager.aux-services</name>
38 <value>mapreduce_shuffle</value>
39 </property>
將hadoop添加到環境變數
1 vim /etc/proflie
2 export JAVA_HOME=/usr/local/jdk1.7.0_80
3 export HADOOP_HOME=/bigdata/hadoop-2.6.4
4 export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
刷新配置文件
source /etc/profile
格式化namenode(是對namenode進行初始化) 格式化文件系統
hdfs namenode -format(歷史命令 hadoop namenode -format)
啟動hadoop
先啟動HDFS
sbin/start-dfs.sh
再啟動YARN
sbin/start-yarn.sh
驗證是否啟動成功
使用jps命令驗證
27408 NameNode
28218 Jps
27643 SecondaryNameNode
28066 NodeManager
27803 ResourceManager
27512 DataNode
通過網頁驗證
http://192.168.35.100:50070 (HDFS管理界面)
http://192.168.35.100:8088 (MR管理界面)
3、配置ssh免登陸
#生成ssh免登陸密鑰
#進入到我的home目錄
cd ~/.ssh
ssh-keygen -t rsa (四個回車)
執行完這個命令後,會生成兩個文件id_rsa(私鑰)、id_rsa.pub(公鑰)
將公鑰拷貝到要免密登陸的目標機器上
ssh-copy-id localhost
到此HDFS和MapReduce搭建完成,有任何出錯或疑問可以私信留言也可以關註微信公眾號;關於Hadoop的後續還會陸續給大家一一講解,謝謝閱讀。