下、Hadoop环境搭建——通过Xshell6连接VMware正式配置Hadoop
二、通過Xshell6連接虛擬機(jī)正式配置Hadoop
上篇我們說到在Vmware中搭建Hadoop時(shí)首先配置Hadoop的網(wǎng)絡(luò)環(huán)境;
下篇我們將通過Xshell6連接VMware正式配置Hadoop:
注:本文中出現(xiàn)的IP地址:192.168.127.103均是在上篇配置網(wǎng)絡(luò)環(huán)境時(shí)在以下圖中"IPADDR"位置處配的IP地址;
這里大家根據(jù)自己分配的IP地址配置后面在Hadoop中需要的IP;
博主是后面重新分配了一個(gè)IP地址:192.168.127.100搭建的,文章中出現(xiàn)兩個(gè)不同的IP地址,請(qǐng)各位小伙伴注意!一定要寫自己分配的IP地址!
1、連接Xshell和Vmware
打開Xshell6,點(diǎn)擊文件,點(diǎn)擊新建;名稱欄為"master",主機(jī)欄為配置前篇配置的IP地址:
沒有反應(yīng)時(shí),重進(jìn)Xshell,如遇到一次性保存這樣的彈窗,點(diǎn)中間接受并保存,然后進(jìn)行以下步驟,點(diǎn)擊確定:
2、如此,我們成功連接了虛擬機(jī),下面進(jìn)行配置:
2.1、不是root用戶的切換至root和用戶:
輸入命令:
su root2.2、配置時(shí)鐘同步:
在線安裝ntpdate,使用阿里云ntp服務(wù)器同步時(shí)間,date命令查看當(dāng)前時(shí)間
輸入命令:
yum install ntpdate ntpdate ntp.aliyun.com查看時(shí)間:
輸入命令:
date2.3配置主機(jī)名
主機(jī)名的作用是可以在網(wǎng)絡(luò)中能夠唯一標(biāo)識(shí)主機(jī),和IP地址一樣,可通過IP地址和網(wǎng)絡(luò)主機(jī)名訪問這臺(tái)主機(jī),作用:簡(jiǎn)化、方便。
修改主機(jī)名:
輸入命令:
hostnamectl set-hostname master查看修改后的主機(jī)名:
輸入命令:
hostname2.4、配置hosts列表
hosts列表作用是讓集群中的每臺(tái)服務(wù)器彼此都知道對(duì)方的主機(jī)名和IP地址
輸入命令:
vi /etc/hosts添加主機(jī)IP和主機(jī)名:
192.168.253.5 masterESC :wq保存并退出
驗(yàn)證,ping IP地址和主機(jī)名,結(jié)果相同無區(qū)別,ping通即成功
輸入命令:
ping 192.168.127.103 ping master2.5、安裝Java環(huán)境
創(chuàng)建個(gè)人用戶目錄,java目錄,Hadoop目錄:
輸入命令:
mkdir /usr/zpf mkdir /usr/java mkdir /usr/hadoop
使用Xftp復(fù)制java安裝包至zpf目錄下,解壓后移動(dòng)至java目錄下(注:Xftp的使用和Xshell基本一致,連接成功即可):
然后在Xshell進(jìn)入"zpf"目錄里輸入命令:
解壓:
tar -zxvf jdk-8u161-linux-x64.tar.gz移動(dòng):
mv jdk1.8.0_161 /usr/java/jdk1.8.0_161
然后我們?nèi)ava目錄里查看一下是否成功:
輸入命令:
cd .. cd java ls成功!
進(jìn)入系統(tǒng)配置文件:
輸入命令:
vi /etc/profile文件最后添加以下兩行代碼:
export JAVA_HOME=/usr/java/jdk1.8.0_161 export PATH=$JAVA_HOME/bin:$PATH
查看Java環(huán)境是否配置成功:
輸入命令:
source /etc/profile java -version成功!
2.6、安裝Hadoop環(huán)境
使用Xftp上傳Hadoop安裝包至zpf文件夾下,解壓Hadoop安裝包,并移動(dòng)至Hadoop文件夾中:
然后在Xshell進(jìn)入"zpf"目錄里輸入命令:
解壓:
tar -zxvf hadoop-2.10.0.tar.gz移動(dòng):
mv hadoop-2.10.0 /usr/hadoop/hadoop-2.10.0
配置Hadoop環(huán)境變量:
輸入命令:
vi /etc/profile在配置文件最后添加以下兩行代碼:
export HADOOP_HOME=/usr/hadoop/hadoop-2.10.0 export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
查看Hadoop環(huán)境是否配置成功:
輸入命令:
source /etc/profile hadoop version whereis hdfs成功!
2.7、將Hadoop與java綁定
設(shè)置Hadoop配置文件:
輸入命令:
cd /usr/hadoop/hadoop-2.10.0/etc/hadoop vi hadoop-env.sh找到下面這行代碼:
export JAVA_HOME=${JAVA_HOME}
修改為:
3、配置Hadoop
3.1、配置Hadoop核心文件
進(jìn)入Hadoop的etc文件夾,配置core-site.xml文件
輸入命令:
vi core-site.xml新增以下內(nèi)容:
<configuration><!--指定文件系統(tǒng)的入口地址,可以為主機(jī)名或ip --><!--端口號(hào)默認(rèn)為8020 --><property><name>fs.defaultFS</name><value>hdfs://master:8020</value></property><!--指定hadoop的臨時(shí)工作存目錄--><property><name>hadoop.tmp.dir</name><value>/usr/hadoop/tmp</value></property> </configuration>
配置yarn-env.sh文件
輸入命令:
vi yarn-env.sh找到該行:export JAVA_HOME=/home/y/libexec/jdk1.6.0/
修改為:
export JAVA_HOME=/usr/java/jdk1.8.0_161
配置hdfs-site.xml文件
輸入命令:
vi hdfs-site.xml新增以下內(nèi)容:
<configuration><!--指定hdfs備份數(shù)量,小于等于從節(jié)點(diǎn)數(shù)目--><property><name>dfs.replication</name><value>3</value></property><!-- 自定義hdfs中namenode的存儲(chǔ)位置--><!-- <property>--><!-- <name>dfs.namenode.name.dir</name>--><!-- <value>file:/usr/hadoop/dfs/name</value>--><!-- </property>--><!-- 自定義hdfs中datanode的存儲(chǔ)位置--><!-- <property>--><!-- <name>dfs.datanode.data.dir</name>--><!-- <value>file:/usr/hadoop/dfs/data</value>--><!--</property>--> </configuration>
配置mapred-site.xml文件,通過cp命令生成不帶后綴 template 的文件
輸入命令:`
cp mapred-site.xml.template mapred-site.xml輸入命令:
vi mapred-site.xml新增以下內(nèi)容:
<configuration><!--hadoop的MapReduce程序運(yùn)行在YARN上--><!--默認(rèn)值為local--><property><name>mapreduce.framework.name</name><value>yarn</value></property> </configuration>
配置yarn-site.xml文件
輸入命令:
vi yarn-site.xml新增內(nèi)容:
<configuration><property><name>yarn.resourcemanager.hostname</name><value>master</value></property> <!--nomenodeManager獲取數(shù)據(jù)的方式是shuffle--><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property> </configuration>
修改slaves文件,刪除原有內(nèi)容,新增即將要建立的三個(gè)虛擬機(jī)的hostname
輸入命令:
vi slaves3.2、克隆多臺(tái)slave機(jī)
使用master鏡像克隆3臺(tái)虛擬機(jī)(創(chuàng)建完整克隆),名稱分別為slave1、slave2、slave3,根據(jù)電腦配置情況可以自由設(shè)置數(shù)量
虛擬機(jī)處在關(guān)機(jī)狀態(tài)下:右擊—>管理—>克隆
創(chuàng)建三個(gè)克隆機(jī)
- 進(jìn)入根目錄下etc/sysconfig/network-scripts中,修改每臺(tái)slave機(jī)的ip地址 ,方法同1.3
- 修改每個(gè)slave的主機(jī)名,方法同2.3
- 修改master和每個(gè)slave機(jī)的hosts文件,方法同2.4,將以下代碼更新到etc/hosts文件中
3.3 同步Hadoop配置(僅當(dāng)master與slave配置不同時(shí)使用)
將master機(jī)上的Hadoop文件夾發(fā)送給三臺(tái)slave機(jī)
輸入命令:
scp -r /usr/hadoop slave1:/usr/hadoop scp -r /usr/hadoop slave2:/usr/hadoop scp -r /usr/hadoop slave3:/usr/hadoop4、配置SSH登錄
4.1 生成公鑰私鑰
在master和每臺(tái)slave上,使用rsa算法產(chǎn)生公鑰和私鑰(一路按"回車"即可)
輸入命令:
ssh-keygen -t rsa(一路按回車)
查看生成的私鑰id_rsa和公鑰id_rsa.pub
輸入命令:
cd /root/.ssh/ ls4.2 發(fā)送公鑰
在master上創(chuàng)建一個(gè)大家通用的公鑰authorized_keys,修改authorized_keys權(quán)限,并將這個(gè)公鑰發(fā)送給每個(gè)slave機(jī)
依次輸入命令:
cat id_rsa.pub >> authorized_keys chmod 644 authorized_keys systemctl restart sshd.service scp /root/.ssh/authorized_keys slave1:/root/.ssh scp /root/.ssh/authorized_keys slave2:/root/.ssh scp /root/.ssh/authorized_keys slave3:/root/.ssh4.4 、驗(yàn)證SSH
依次輸入命令:
ssh master exit ssh slave1 exit ssh slave2 exit ssh slave3 exit5.、準(zhǔn)備運(yùn)行hadoop
5.1、 格式化HDFS
在master機(jī)上,進(jìn)入Hadoop下的bin文件夾
輸入命令:
hdfs namenode -format(注意:只需格式化一次!多次格式化會(huì)導(dǎo)致NameNode和DataNode的集群ID值不匹配,需要在格式化前刪除NameNode,DataNode、日志等文件夾。所以此步驟只能執(zhí)行一次!)
5.2 、啟動(dòng)Hadoop
進(jìn)入Hadoop中的sbin文件夾下
輸入命令:
start-dfs.sh start-yarn.sh5.3、 查看hadoop進(jìn)程
輸入命令:
jps5.4 通過web端訪問hadoop
-
查看NameNode、DataNode:http://192.168.127.103:50070
-
查看SecondaryNameNode信息:http://192.168.127.103:50090
-
查看YARN界面:http://192.168.127.103:8088
至此,Hadoop環(huán)境已經(jīng)搭建完成!
注:本文中出現(xiàn)的IP地址:192.168.127.103均是在上篇配置網(wǎng)絡(luò)環(huán)境時(shí)在以下圖中"IPADDR"位置處配的IP地址;
這里大家根據(jù)自己分配的IP地址配置后面在Hadoop中需要的IP;
博主后面也是重新分配了一個(gè)IP地址:192.168.127.100搭建的,文章中出現(xiàn)兩個(gè)不同的IP地址,請(qǐng)各位小伙伴注意!一定要寫自己分配的IP地址!
感謝!如遇疑問,請(qǐng)?jiān)谙路皆u(píng)論或者私信博主,博主會(huì)盡自己最大能力幫你解決問題!
總結(jié)
以上是生活随笔為你收集整理的下、Hadoop环境搭建——通过Xshell6连接VMware正式配置Hadoop的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 跟一个大佬前辈交流了一下
- 下一篇: Mtk camera driver