其他分享
首页 > 其他分享> > hadoop完全搭建——跟着代码步骤走一步到位

hadoop完全搭建——跟着代码步骤走一步到位

作者:互联网

hadoop完全搭建—跟着代码步骤走一步到位

这篇文章是搭建hadoop完全分布式的一步到位过程,并没有对于内容的太多的介绍。直接按步骤代码走一步到位。
这篇文章是用以下两篇文章结合起来的。
hadoop伪分布式搭建及其介绍
hadoop完全分布式详细步骤

话不多说现在开始

首先要创建一个虚拟机然后将虚拟机打开

1.修改虚拟机IP地址和配置NAT模式,根据下面的命令和图片中黑色框内容进行设置

IPADDR是本台虚拟机的IP地址

vi /etc/sysconfig/network-scripts/ifcfg-ens33

在这里插入图片描述

IPADDR=192.173.10.100
NETMASK=255.255.255.0
PREFIX=24
GATEWAY=192.173.10.2
DNS1=192.193.10.2
HWADDR=00:0C:29:7E:A1:2A

2.设置修改HWADDR为正确的mac地址

点击你的虚拟机右键打开设置
在这里插入图片描述
点击网络适配器点击高级
在这里插入图片描述
将vi /etc/sysconfig/network-scripts/ifcfg-ens33 中的HWADDR改为下面的mac地址
在这里插入图片描述

3 修改本机的IPV4

打开网络右键打开属性
在这里插入图片描述
点击更改适配器设置
在这里插入图片描述
双击打开IPv4进行设置
在这里插入图片描述
按照下图进行设置,设置完毕确认即可
在这里插入图片描述

4.关闭防火墙和安全

setenforce 0
systemctl stop firewalld

5.重启网络

systemctl restart network.service

用ifconfig查看一下刚才配置的ip地址是否正确

6. 连接Xshell(过程就不详解,csdn一下就可以了)

7. 传递安装包

然后进入root目录,创建software文件夹。再用xftp连接自己的电脑传递jdk和hadoop的安装包到/root/software文件夹里。

cd /root
mkdir software

在这里插入图片描述
命令 ll 查看一下有没有
在这里插入图片描述

8.查看已安装的jdk,如果有卸载掉

rpm -qa | grep jdk

在这里插入图片描述
将已安装的jdk卸载了

rpm -e --nodeps jdk版本号

可以再使用上上条命令看看jdk是否卸载干净

9. 安装jdk

在刚才存放jdk软件包的路径下(/root/software)操作

解压压缩包

tar -zxvf jdk-8u281-linux-x64.tar.gz 

ll命令查看是否解压完毕
在这里插入图片描述
配置环境变量

vim /etc/profile

再最后面插入以下内容

export JAVA_HOME=/root/software/jdk1.8.0_281  # 配置Java的安装目录
export PATH=$PATH:$JAVA_HOME/bin  # 在原PATH的基础上加入JDK的bin目录

让环境变量生效

source /etc/profile

查看安装版本,查得到就是安装成功

java -version

10.安装hadoop

在刚才存放jdk软件包的路径下(/root/software)操作

解压压缩包

tar -zxvf hadoop-2.8.2.tar.gz

ll命令查看是否解压完毕
在这里插入图片描述
配置环境变量

vim /etc/profile

再最后面插入以下内容

# 配置Hadoop的安装目录
export HADOOP_HOME=/root/software/hadoop-2.8.2
# 在原PATH的基础上加入Hadoop的bin和sbin目录
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

让环境变量生效

source /etc/profile

查看安装版本,查得到就是安装成功

hadoop version

11.接下来需要修改hadoop的配置文件,需要进入hadoop配置文件的存放地址

cd /root/software/hadoop-2.8.2/etc/hadoop

修改hadoop-env.sh

先使用下列方式得到JDK 的安装目录

echo $JAVA_HOME
vi hadoop-env.sh

在这里插入图片描述

配置配置core-site.xml

vi core-site.xml

将下面的内容插入到文件里的 <configuration 和 /configuration>之间

<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:8020</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/soft/tmp</value>
</property>

配置hdfs-site.xml

vi hdfs-site.xml

将下面的内容插入到文件里的<configuration 和 /configuration>之间

<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.block.size</name>
<value>134217728</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///home/soft/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///home/soft/data</value>
</property>
<property>
        <name>fs.checkpoint.dir</name>
        <value>file:///home/soft/cname</value>
</property>
<property>
        <name>fs.checkpoint.edits.dir</name>
        <value>file:///home/soft/cname</value>
</property>
<property>
   <name>dfs.http.address</name>
   <value>hadoop1:50070</value>
</property>
<property>
   <name>dfs.secondary.http.address</name>
   <value>hadoop2:50090</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>

配置yarn-site.xml

vi yarn-site.xml

将下面的内容插入到文件里的<configuration 和 /configuration>之间

<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop1</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>hadoop1:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hadoop1:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hadoop1:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hadoop1:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hadoop1:8088</value>
</property>

配置slaves

vim slaves

写入以下的内容

hadoop1
hadoop2
hadoop3

配置mapred-site.xml

创建一个名为mapred-site.xml的文件

touch mapred-site.xml

将mapred-site.xml.template的内容写入mapred-site.xml文件内

cat mapred-site.xml.template >> mapred-site.xml

然后再配置mapred-site.xml

vi mapred-site.xml

将下面的内容插入到文件里的<configuration 和 /configuration>之间

<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<final>true</final>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop1:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop1:19888</value>
</property>

12. 克隆两台虚拟机

先将虚拟机关闭,右键虚拟机管理里面的克隆虚拟机
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
修改ip地址和HWADDR

 vi /etc/sysconfig/network-scripts/ifcfg-ens33

在这里插入图片描述
修改主机名\ 修改完后需要重启虚拟机

vi /etc/sysconfig/network
HOSTNAME=hadoop2

在这里插入图片描述
重启虚拟机

reboot

然后打开第三台hadoop3虚拟机进行以上和hadoop2一样的操作

13.接下来对三台主机都进行主机映射配置

vi /etc/hosts
192.173.10.100 hadoop1
192.173.10.101 hadoop2
192.173.10.102 hadoop3

在这里插入图片描述

14.设置免密登陆

连接上三台虚拟机的XShell,下面的1.2.3.三台虚拟机都得一一完成。剩下按文字提示完成。
1.首先创建root底下的.ssh目录

cd /root
mkdir .ssh

进入.ssh目录

cd /root/.ssh cd /root/.ssh

2.然后生成一个密钥(需要在三台虚拟机中都执行此命令,生成密钥)
(三次回车)

ssh-keygen -t rsa

3.然后创建authorized_keys文件

touch authorized_keys

4.将id_rsa.pub的内容写入authorized_keys文件

cat id_rsa.pub >> authorized_keys

5.将authorized_keys传到hadoop2的/root/.ssh下

scp authorized_keys hadoop2:/root/.ssh/

6.然后在hadoop2下将将id_rsa.pub的内容写入authorized_keys文件

cat id_rsa.pub >> authorized_keys

7.再将authorized_keys文件传到hadoop3的/root/.ssh下

scp authorized_keys hadoop3:/root/.ssh/

8.然后在hadoop3下将将id_rsa.pub的内容写入authorized_keys文件

cat id_rsa.pub >> authorized_keys

9.再将authorized_keys文件传到hadoop1和hadoop2的/root/.ssh下覆盖之前的authorized_keys文件

scp authorized_keys hadoop1:/root/.ssh/
scp authorized_keys hadoop2:/root/.ssh/

10.在虚拟机上用ssh hadoop1或者ssh hadoop2或者ssh hadoop3进行测试,如果不需要输入密码则免密设置成功

15接下来就可以进行格式化然后启动集群

格式化(只有第一次启动才会格式化)

hdfs namenode -format 

启动

start-all.sh

网页验证:
http:192.168.80.100:50070
http:192.168.80.100:8088

在虚拟机上分别运行一下jps,完全分布式搭建成功按下图所示。

在这里插入图片描述

标签:keys,虚拟机,authorized,hadoop,一步到位,ssh,root,搭建
来源: https://blog.csdn.net/weixin_51633501/article/details/120111449