Hadoop集群搭建

本文详细介绍了Linux系统配置,包括时钟同步、主机名设置、网络配置和hosts列表的编辑。接着,文章讲述了JDK的安装与环境变量配置,以及通过SSH实现免密登录。最后,重点讨论了Hadoop集群的安装,包括Hadoop环境变量、核心组件、文件系统和YARN资源系统的配置,以及启动和验证集群的步骤。
摘要由CSDN通过智能技术生成

一、Linux系统配置

  1. 切换到管理员用户的命令:su root
    切换到管理员用户的命令

  2. 配置时钟同步
    配置时钟的命令: crontab -e
    输完命令后跳转的页面
    注: 当出现的是空的,则从键盘上按 i 进入insert模式下
    在这里插入图片描述
    进入insert模式左下角有如下显示
    在这里插入图片描述

输入内容如下

0 1 * * * /usr/sbin/ntpdate cn.pool.ntp.org

然后按 Esc 在 :wq 保存并退出编译 回到命令页面

—————————注意事项分割线——————-———

配置时钟完成截图如下
在这里插入图片描述
3. 配置主机名

可以通过ping主机名和ip地址建立连接,三台主机的主机名都是localhost,所以我们需要配置主机名

1.编译网络配置文件:
	vim /etc/sysconfig/network

输入指定回车进入编辑
在这里插入图片描述

在这里插入图片描述

2. 确认修改命令生效
		hostname master(在master里面)
测试:重新打开一个终端:输入
		hostname
	命令,检查结果是否为master/slave/slave1(都是在root权限下操作)

在这里插入图片描述
其他两个类似
在这里插入图片描述
在这里插入图片描述

4.使用setup命令配置网络环境

	ifconfig 查询ip地址及网络环境 

在这里插入图片描述

	在终端中使用setup命令可进入网络配置

在这里插入图片描述

  1. 关闭防火墙

     setup
    

在这里插入图片描述

在这里插入图片描述

			启动状态是带*号 
			禁止状态是在*位置按 空格

在这里插入图片描述
下一步 是
在这里插入图片描述

  1. 配置hosts列表

     在root权限下操作
     输入命令:
     			vim /etc/hosts
     添加如下内容:
     	192.168.110.128 master  #Master服务器的ip地址
     	192.168.110.129 slave  #Slave服务器的ip地址
     	192.168.110.130 slave1  #Slave1服务器的ip地址
    

在这里插入图片描述
注意: 在slave和slave1上进行同样操作

验证:hosts是否配置成功的命令。

例如:在master服务器中
			ping slave
			ping slave1

在这里插入图片描述

在slave服务器中:
	ping master
	ping slave1

在这里插入图片描述

在slave1服务器中:
	ping master
	ping slave

在这里插入图片描述

  1. 安装jdk
    通过ssh方式将jdk安装包上传到自己用户目录下面
    不能上传到根目录,因为没有权限

    一些查询工作,弄清文件夹之间的关系
    在这里插入图片描述

     以root用户身份登录HadoopMaster节点:
     1. 进入/usr命令:cd /usr;
     2. 创建java文件夹命令:mkdir java
     (删除java文件操作命令: rm -rf java )
     3. 将jdk从home/xiongying目录下复制到新建的/usr/java目录下,进行解压安装:
     复制:
     	cp /home/xiongying/jdk-8u161-linux-x64.tar.gz /usr/java
     解压命令:
     	先进入到当前目录
     	cd /usr/java
     	执行解压命令:
     	tar -zxvf jdk-8u161-linux-x64.tar.gz
    

在这里插入图片描述

  1. 在Linux中配置Java的环境变量

     在root权限范围下
     
     输入命令:
      vim /home/xiongying/.bash_profile
    

在这里插入图片描述
回车后的结果
在这里插入图片描述
然后

source /home/xiongying/.bash_profile  使命令生效

在这里插入图片描述
通过javac命令检验环境环境是否搭建完毕:

命令:javac回车

在这里插入图片描述
同时登录 Hadoopslave 和 Hadoopslave1 进行同样的操作。

  1. 免密钥登录配置(免密登录)
    能够ping上说明能够数据传输,不能相互访问

     1. 在主节点master操作,先从root切换到当前用户下面(su xiongying  /)
     2. 输入当前命令生成密钥:
     				ssh -keygen -t rsa
     				ssh-keygen 是生成密钥的命令
     				-t rsa 表示使用rsa算法进行加密
    

在这里插入图片描述

	3. 复制公钥文件到authorized_keys文件中命令:
	cat /home/xiongying/.ssh/id_rsa.pub >> /home/xiongying/.ssh/authorized_keys

authorize_keys里有了id_rsa和id_rsa.pub

	4. 修改文件权限
	chmod 600 /home/xiongying/.ssh/authorized_keys

从上图-rw-rw-r变成-rw

	5.将主节点master生成的公钥文件authorized_keys复制到slave和slave1从节点上
		scp /home/xiongying/.ssh/authorized_keys xiongying@slave:/home/xiongying/.ssh/

将主节点master生成的公钥文件authorized_keys复制到slave从节点上

	scp /home/xiongying/.ssh/authorized_keys xiongying@slave1:/home/xiongying/.ssh/

将主节点master生成的公钥文件authorized_keys复制到slave1从节点上
对于Hadoopslave节点
1.以用户身份登录Hadoopslave节点,进入到/home/ydh/.ssh目录,输入以下命令:

cd /home/xiongying/.ssh/
ll /home/xiongying/.ssh

在这里插入图片描述
2.修改文件权限

chmod 600 /home/xiongying/.ssh/authorized_keys

在这里插入图片描述
此时,在Hadoopslave节点上就存放了Hadoopmaster节点的公钥,那么Hadoopmaster节点就可以以SSH的方式直接登录Hadoopslave节点。

对于Hadoopslave1节点同上
在这里插入图片描述

如何验证免密登录:
	在主节点访问从节点就可以了
	在master中 ssh slave 

在这里插入图片描述

	在master中 ssh slave1

在这里插入图片描述

	可以直接访问不需要输入密码即成功
  1. 解压Hadoop安装文件

     将Hadoop安装文件通过SSH工具上传到HadoopMaster节点用户的主目录下。
     进入用户主目录,输入以下命令进行解压:
     		tar –zxvf hadoop-2.7.1.tar.gz
    

    在这里插入图片描述

     解压后查看的命令:
     	cd hadoop-2.7.1
     	ls -l
    

在这里插入图片描述
一些文件的路径:
在这里插入图片描述

  1. 配置环境变量
    1. 配置环境变量hadoop-env.sh
      输入以下命令,打开Hadoop的环境变量文件

       vim /home/xiongying/hadoop-2.7.1/etc/hadoop/hadoop-env.sh
      

在这里插入图片描述
然后加入这个
在这里插入图片描述
保存文件,Hadoop的环境变量hadoop-env.sh配置成功,此时Hadoop具备了运行时的环境。

  1. 配置环境变量yarn-env.sh
    输入以下命令,打开Hadoop的环境变量文件

     vim /home/xiongying/hadoop-2.7.1/etc/hadoop/yarn-env.sh
    

在这里插入图片描述
然后加入这个
在这里插入图片描述
保存文件,Hadoop的YARN的环境变量yarn-env.sh配置成功。此时,Hadoop的YARN模块具备了运行时的环境。

  1. 配置核心组件core-site.xml
    输入以下命令,打开Hadoop的环境变量文件

    vim /home/xiongying/hadoop-2.7.1/etc/hadoop/core-site.xml
    

在这里插入图片描述
然后添加这些
在这里插入图片描述至此,Hadoop集群的核心配置完成

  1. 配置文件系统hdfs-site.xml

    输入以下命令,打开hdfs-site.xml配置文件:

     vim /home/xiongying/hadoop-2.7.1/etc/hadoop/hdfs-site.xml
    

在这里插入图片描述
然后加入这些
在这里插入图片描述
至此,Hadoop集群HDFS分布式文件系统的数据块副本配置完成。

  1. 配置yarn资源系统yarn-site.xml
    使用以下命令打开yarn-site.xml配置文件

     vim /home/xiongying/hadoop-2.7.1/etc/hadoop/yarn-site.xml
    

在这里插入图片描述
然后 用下面的代码替换yarn-site.xml中的内容。

<?xml version="1.0"?> 
<configuration> 
<!-- yarn.nodemanager.aux-services是NodeManager上运行的附属服务,其值需要配置成mapreduce_shuffle,才可以运行MapReduce程序-->
 <property> 
    <name>yarn.nodemanager.aux-services</name> 
    <value>mapreduce_shuffle</value> 
 </property> 

<!-- yarn.resourcemanager.address 是ResourceManager对客户端暴露的访问地址,客户端通过该地址向ResourceManager提交或结束MapReduce应用程序-->
 <property> 
     <name>yarn.resourcemanager.address</name> 
     <value>master:18040</value> 
 </property> 

<!-- yarn.resourcemanager.scheduler.address是ResourceManager对ApplicationMaster(客户端将MapReduce应用程序提交到集群中,ResourceManager接受客户端应用程序的提交后,将该应用程序分配给某一个NodeManager,对该MapReduce应用程序进行初始化,进而产生一个应用程序初始化Java对象,将这个Java对象称为ApplicationMaster)暴露的访问地址,ApplicationMaster通过该地址向ResourceManager申请MapReduce应用程序在运行过程中所需要的资源,以及程序运行结束后对使用资源的释放等-->
 <property> 
     <name>yarn.resourcemanager.scheduler.address</name> 
     <value>master:18030</value> 
 </property> 

 <!-- yarn.resourcemanager.resource-tracker.address 是ResourceManager对NodeManager暴露的访问地址,NodeManager通过该地址向ResourceManager发送心跳数据,汇报资源使用情况以及领取ResourceManager将要分配给自己的任务等-->
<property> 
    <name>yarn.resourcemanager.resource-tracker.address</name> 
    <value>master:18025</value> 
</property> 

<!-- yarn.resourcemanager.admin.address 是ResourceManager对管理员admin暴露的访问地址,管理员可通过该地址向ResourceManager发送管理命令等-->
<property> 
    <name>yarn.resourcemanager.admin.address</name> 
    <value>master:18141</value> 
</property> 

<!-- yarn.resourcemanager.webapp.address 是ResourceManager YARN平台提供用户查看正在运行的MapReduce程序的进度和状态的WEB UI系统的访问地址,可通过该地址在浏览器中查看应用程序的运行状态信息 -->
<property> 
    <name>yarn.resourcemanager.webapp.address</name> 
    <value>master:18088</value> 
</property>
</configuration>

如图:
在这里插入图片描述

  1. 配置计算框架mapred-site.xml
    通过以下命令打开mapred-site.xml配置文件。

     vim /home/xiongying/hadoop-2.7.1/etc/hadoop/mapred-site.xml
    

在这里插入图片描述
然后用下面的代码替换mapred-site.xml中的内容

<?xml version="1.0"?> 
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?> 
<configuration> 
<!--MapReduce计算框架的资源交给YARN来管理-->
<property> 
    <name>mapreduce.framework.name</name> 
    <value>yarn</value> 
</property> 
</configuration>

如图
在这里插入图片描述

  1. 在HadoopMaster节点配置slaves

    1.使用以下命令打开slaves配置文件

     vim /home/xiongying/hadoop-2.7.1/etc/hadoop/slaves![在这里插入图片描述](https://img-blog.csdnimg.cn/dd37fb1fae6647719262134a7928c310.png)
    

然后将文件改为如下:
在这里插入图片描述
2.复制到从节点
使用下面的命令将已经配置完成的Hadoop复制到从节点HadoopSlave和HadoopSlave1上

scp -r /home/xiongying/hadoop-2.7.1 xiongying@slave:~/
scp -r /home/xiongying/hadoop-2.7.1 xiongying@slave1:~/

在这里插入图片描述

  1. 配置Hadoop启动的系统环境变量
    此配置需要同时在HadoopMaster、HadoopSlave和HadoopSlave1上进行操作,操作命令如下:

     vim /home/xiongying/.bash_profile
    

在这里插入图片描述
然后添加所框的内容
在这里插入图片描述

使命令生效以及基本查询操作
在这里插入图片描述
Hadoopslave和Hadoopslave1同上
在这里插入图片描述
在这里插入图片描述

  1. 从主节点启动集群

    启动集群时,首先要做的就是在HadoopMaster节点上格式化分布式文件系统HDFS:

     hdfs namenode –format
    

在这里插入图片描述
已格式化完的界面
在这里插入图片描述
然后输入以下命令启动:

start-all.sh

在这里插入图片描述
启动后的界面
在这里插入图片描述

检验启动:
1.查看进程是否启动

在HadoopMaster的Terminal终端执行jps命令,在打印结果中会看到4个进程,分别是ResourceManager、Jps、NameNode和SecondaryNameNode,如下图。如果出现了这4个进程,就表示主节点进程启动成功。

在这里插入图片描述

在HadoopSlave的终端执行jps命令,在打印结果中会看到3个进程,分别是NodeManager、DataNode和Jps,如下图。如果出现了这3个进程,就表示从节点进程启动成功。

在这里插入图片描述

在HadoopSlave1的终端执行jps命令,在打印结果中会看到3个进程,分别是NodeManager、DataNode和Jps,如下图。如果出现了这3个进程,就表示从节点进程启动成功。
在这里插入图片描述

  1. 运行PI实例检查集群是否启动成功
    在HadoopMaster节点上,进入hadoop安装主目录,执行下面的命令:

     cd ~
     cd /home/xiongying/hadoop-2.7.1/share/hadoop/mapreduce/ 
     hadoop jar hadoop-mapreduce-examples-2.7.1.jar pi 10 10
    

    在这里插入图片描述
    在这里插入图片描述
    最后输出为:
    Estimated value of Pi is 3.20000000000000000000
    如果以上验证步骤都没有问题,说明Hadoop集群已正常启动。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值