以下是本文所用到的檔案包
1、jdk-8u65-linux-x64安裝包
https://incstallation-package.oss-cn-beijing.aliyuncs.com/jdk-8u65-linux-x64.tar.gz
2、hadoop-2.7.3安裝包
https://incstallation-package.oss-cn-beijing.aliyuncs.com/hadoop-2.7.3.tar.gz
一 、 設定SSH免密登入
1、修改主機名
(1)開啟 /etc/hostname 修改為:master
(2) 重啟
在終端輸入reboot
2、配置網路卡
(1)改寫網路卡配置檔案 /etc/sysconfig/network-scripts/ifcfg-ens33
#BOOTPROTO="dhcp" #註釋
BOOTPROTO="static" #新增
#ONBOOT="no"
ONBOOT="yes"
#新增以下IP地址
IPADDR=192.168.10.10
NETMASK=255.255.255.0
GATEWAY=192.168.10.254
DNS1=114.114.114.114
重啟網路卡 systemctl restart network
(2)編輯網路編輯器
(3)重啟 reboot
查詢ip ip addr
(4)網路連線
啟動VMware Network Adapter VMnet8
(5)在Windows的命令列視窗驗證是否能夠ping通
Ping 192.168.10.10
3、設定SSH免密登入
(1)驗證虛擬機器是否已經安裝了SSH.
驗證命令為 rpm -qa | grep ssh
命令輸⼊後回⻋,如果出現下圖的畫⾯則說明SSH未安裝,
(2)⽣成SSH金鑰
① 設定SSH免密登入前,需要⽣成金鑰,⽣成SSH金鑰的命令為:
ssh-keygen -t rsa
② 檢視⽣成的金鑰
cd ~/.ssh
ll
③ 然後將公玥(id_rsa.pub)拷⻉到當前⽬錄的 /authorized_keys列表中,並修改authorized_keys的許可權為600。
cat id_rsa.pub >> authorized_keys
chmod 600 authorized_keys
④ 驗證是否真的可以免密登入虛擬機器。
ssh master
二、 安裝JDK。
1、將“jdk-8u65-linux-x64.tar.gz”上傳⾄當前⽤戶的路徑下。
① 修改許可權
在/home路徑下,給jdk-8u65-linux-x64.tar.gz⽂件修改許可權。
chmod 777 jdk-8u231-linux-x64.tar.gz
② 解壓並重新命名為jdk
tar -zxvf jdk-8u65-linux-x64.tar.gz -C /usr/local
mv /usr/local/jdk1.8.0_65 /usr/local/jdk
③ 配置環境變數
vi /etc/profile
配置內容:
export JAVA_HOME=/usr/local/jdk
export PATH=.:$JAVA_HOME/bin:$PATH
④ 執⾏source /etc/profile後⽣效
source /etc/profile
⑤ 測試
java -version
(看到java的版本說明成功了)
三、 Hadoop安裝與配置。
1、Hadoop安裝
(1)上傳
上傳安裝包到虛擬機器/home路徑下
(2)修改許可權
在/home執⾏
chmod 777 hadoop-2.7.3.tar.gz
(3)解壓並重新命名為hadoop
tar -zxvf hadoop-2.7.3.tar.gz -C /usr/local
mv /usr/local/hadoop-2.7.3 /usr/local/Hadoop
(4)配置環境變數
vi /etc/profile
配置內容:
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
(5)執⾏source /etc/profile後⽣效
source /etc/profile
2、Hadoop配置
Hadoop的配置⽂件有多個,包括
hadoop-env.sh
yarn-env.sh
core-site.xml
hdfs-site.xml
mapred-site.xml
yarn-site.xml
所有的配置⽂件均處於同⼀個⽬錄(/usr/local/hadoop/etc/hadoop)下,下⾯依次介紹每個配置⽂件如何修改。
(1)修改hadoop-env.sh⽂件
在此配置⽂件中修改JDK的路徑資訊,將原來的值改為JDK的具體安裝路徑
vi /usr/local/hadoop/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/local/jdk
(2)修改core-site.xml⽂件
在此⽂件是Hadoop的核⼼配置⽂件,需要指定HDFS的NameNode的地址以及Hadoop運⾏時產⽣臨時⽂件的儲存⽬錄
vi /usr/local/hadoop/etc/hadoop/core-site.xml
配置如下:
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/usr/local/hadoop/tmp</value> </property> </configuration>
(3)修改hdfs-site.xml⽂件
此⽂件是HDFS相關的配置⽂件,
其中屬性dfs.replication配置了HDFS儲存資料的副本數量,預設值是3,偽分散式設定為1。屬性dfs.namenode.name.dir和dfs.datanode.data.dir分別配置了NameNode後設資料和DataNode後設資料的儲存位置。
vi /usr/local/hadoop/etc/hadoop/hdfs-site.xml
配置如下:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
(4)修改mapred-site.xml
這是MapReduce的相關配置⽂件,因為Hadoop2.x版本引進了YARN資源管理器,故需指定Mapreduce運⾏是在YARN上。此⽂件在Hadoop的解壓⽬錄“/usr/local/hadoop/etc/Hadoop”下是不存在的,
但是存在⼀個⽂件名為mapred-site.xml.template的⽂件,可以透過此template⽂件複製⼀份。執⾏命令:
cp/usr/local/hadoop/etc/hadoop/mapred-site.xml.template/usr/local/hadoop/etc/hadoop/mapred-site.xml
再透過下⾯命令修改此⽂件內容
vi /usr/local/hadoop/etc/hadoop/mapred-site.xml
新增的內容, 配置如下:
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
(5)修改yarn-env.sh⽂件
該⽂件是YARN框架運⾏環境的配置,同樣需要修改JDK的路徑資訊,修改⽅式同hadoop-env.sh⽂件。
vi /usr/local/hadoop/etc/hadoop/yarn-env.sh
配置如下:
export JAVA_HOME=/usr/local/jdk
(6)修改yarn-site.xml⽂件
此⽂件是YARN框架的配置⽂件,需配置YARN程序及YARN相關屬性。
⾸先要指明ResourceManager守護程序的主機和監聽的端⼝,其主機為master,預設端⼝為8032,其次需要指定ResourceManager使⽤的scheduler以及NodeManager的輔助服務等資訊。
vi /usr/local/hadoop/etc/hadoop/yarn-site.xml
配置如下:
<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.address</name> <value>master:18040</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>master:18030</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>master:18025</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>master:18141</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>master:18088</value> </property> </configuration>
完成以上六個配置⽂件的配置後,Hadoop的環境基本配置完畢
(7)啟動Hadoop進⾏驗證
start-all.sh
jps