Hadoop集群安装及其配置(三台虚拟机)

利安装配置前准备——安装虚拟机

首先我们要准备三台虚拟机,分别为第一台主机Cat、第二台Dog、第三台Pig。

这里接上提前我写好的虚拟机安装配置的文章:Centos7虚拟机的安装配置——这是文莉吖,点击这个链接进入。

还需准备第三方链接工具Xshell,点击这个链接进入官网下载,Xshell官网地址

利用cat查看配置文件

这里开始呢我们会着重讲主机Hadoop安装配置的过程,其他两台虚拟机有修改地方的过程也有包揽其中。

> cat 文件名   //cat查看文件的语法

找不到文件时可以利用find命令查找

命令描述
Find / -name 目标名全盘搜索,也可以指定目录搜索(有大小写区分)
Find / -iname 目标名不区分大小写
Find / -name *目标名* (区分大小写)Find / -iname *目标名* (不区分大小写)匹配包含目标文件的相关文件
Find /-用户名 目标名查找属于用户名为目标文件名的文件
Find 搜索目录 -type d查找某个目录下的所有目录

在第一台主机Cat上创建3个目录分别为:

> mkdir -p /export/data       //放置相关的数据文件    
> mkdir -p /export/servers     //软件的安装目录
> mkdir -p /export/software    //放置软件包

查看是否创建:

> cd /export/    
> ls

修改主机名称

命令:

> hostname 新的主机名  //临时修改  
> hostnamectl set-hostname 新的主机名    //永久修
> hostname //查看主机名
> vi /etc/sysconfig/network     //三台虚拟机都要修改,这里我们的主机名为Cat

提示:sudo hostname 新名称(只是临时修改主机名,重启后还会变为旧主机名)

>  sudo vim /etc/hostname     //永久修改主机名

进入这个页面后按i进行编写,每一个文件编写好后都需要按Esc,然后:wq保存且推出。(wq一定要小写)
在这里插入图片描述

配置IP映射

首先我们要配好虚拟机和Windows上的网络设置,没弄好的话虚拟机就无法ping通网络。按图片的步骤来。

我们先设置虚拟机上的网络配置,如图。
在这里插入图片描述

然后我们再设置Windows上的网络配置,如图。

在这里插入图片描述
下面接着修改虚拟机中的网络配置文件/etc/hosts

> vi /etc/hosts       //三虚拟机都要设置相同的内容

如果不知道虚拟机的IP地址就在命令行里输入ifconfig查看IP地址,图片中IP地址后面紧跟着的是三台虚拟机IP地址对应的主机名。

i进行编写,每一个文件编写好后都需要按Esc,然后:wq保存且推出。
在这里插入图片描述

配置网卡设备的mac地址

如何查看MAC地址

鼠标选中对应的想要查看虚拟机——设置——网络适配器——高级

在这里插入图片描述
配置静态IP地址:

> vi /etc/sysconfig/network-scripts/ifcfg-ens33      (每台虚拟机都要改为相同的内容)

BOOTPROTO改为static,IPADDR改为对应虚拟机的IP地址(这里我们配置的是Cat的IP地址)

i进行编写,每一个文件编写好后都需要按Esc,然后:wq保存且推出。
在这里插入图片描述
网络配置好后 检验

> reboot     //重启      
> ifconfig     //查看ip

这里我们可以看见Cat的IP地址为192.168.72.128
这里我们可以看见IP地址为192.168.72.128

> ping www.baidu.com    检查是否能连外网(Ctrl+z停止)

Ctrl+Z停止ping
在这里插入图片描述

Xshell的安装与配置

文章首页我们说了要进入Xshell官网地址下载Xshell6,连接前我们得把需要进行连接的虚拟机打开,才能能进行连接。
Xshell安装好后,进行连接,如下图操作。在这里插入图片描述

然后设置用户和密码,如图一定要记得勾上记住用户和密码。
在这里插入图片描述

在这里插入图片描述
点击确定后,我们就成功连接了。在第三方工具中来配置虚拟机会快上很多,虚拟机里不能复制粘贴,第三方工具中是可以的。扩展,当我们需要把Windows上的软件安装到虚拟机时,也可以用上第三方软件Xftp6,它是与Xshell6配套的第三方连接工具,连接方法都差不多,进入Xftp6官网安装Xftp6后,只需在Xftp6里找到要上传至虚拟机上安装包,将它拖到虚拟机里想要存放的路径里即可。

在这里插入图片描述

ssh的配置

通过配置ssh服务来实现远程登录和免密登录

> rpm -qa | grep ssh          检查是否安装ssh

在这里插入图片描述

> ps -e | grep sshd

在这里插入图片描述
若没有安装ssh 输入yum install openssh-server

配置免密登录:

  1. ssh-keygen -t rsa(三台虚拟机都要输入这个命令)
  2. 拷贝公钥到同一台虚拟机ssh-copy-id Bear(三台虚拟机都输入这个命令,不需要修改任何字母)
  3. 复制放置公钥的文件给其他虚拟机
>  scp /root/.ssh/authorized_keys Dog:/root/.ssh  
>  scp /root/.ssh/authorized_keys Pig:/root/.ssh
  1. 测试是否成功cd .ssh后输入命令 ssh+主机名(每台都要测试,都要能免密登上)

在这里插入图片描述

JDK的安装配置

JDK的安装

Hadoop集群的使用依赖于Java环境,因此需要先安装并配置JDK

以下命令是下载一个rz的插件,下载好后在命令行里输入rz便会跳出一个界面框,选择你要从Windows传入虚拟机的文件(这里指的JDK)

如果没有安装详细步骤 :

> yum install lrzszcd -y             //下载rz 
> cd /export/software 
> rz    //输入后会跳出此电脑界面

传入JDK后进行解压命名

> cd /export/software  //上传JDK到/export/software路径下,并解压 
> tar -zxvf jdk-8u162-linux-x64.tar.gz -C /export/servers/  //进行解压
> mv jdk1.8.0_162 jdk   //对jdk重命名
> cd /export/servers/    //查看jdk

在这里插入图片描述

配置JDK环境变量

vi /etc/profile

添加如下内容:

export JAVA_HOME=/export/servers/jdk   //这儿写虚拟机中jdk安装的路径,我的在/export/servers下面
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

点击进入输入模式,在最后面添加,java路径是之前安装的路径(这个路径在后面安装Hadoop集群时候会用到),可以根据安装的进行修改

编辑完成,按键盘上的"esc“退出编辑模式,然后输入”:wq" 保存并退出( : 别忘记)

编辑保存好后

> source /etc/profile               //重启使/etc/profile文件生效

在这里插入图片描述

jdk的环境验证

>  java -version

在这里插入图片描述

Hadoop安装及配置

Hadoop安装

将Hadoop安装包上传到/export/software目录

> cd /export/software

完整路径:cd /export/servers/hadoop/etc/hadoop/

详细步骤:

> rz -E           //上传Hadoop安装包 
> ls 
> tar -zxvf hadoop-2.7.7.tar.gz -C
> /export/servers/   //解压 
> cd /export/servers/ 
> ls 
> mv hadoop-2.7.7 hadoop //重命名在这里插入代码片

在这里插入图片描述

配置Hadoop系统环境变量

vi /etc/profile

添加内容如下:

export HADOOP_HOME=/export/servers/Hadoop   //同上这里写Hadoop的安装路径
export PATH=:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

在这里插入图片描述

> source /etc/profile             //重启文件
> hadoop version              //查看是否安装好

在这里插入图片描述

hadoop集群主要配置文件

在这里插入图片描述

修改Hadoop配置文件

修改Hadoop的配置文件必须进入到hadoop安装路径下etc文件夹中的hadoop下进行编写,否则会找不到这个文件,虚拟机会自动在其他路径下创建一个新的文件,写好后也无用。

修改hadoop-env.sh文件

vi hadoop-env.sh

具体操作步骤

> cd /export/servers/hadoop/etc/hadoop/  //在安装路径中找到hadoop下etc文件夹中的hadoop
> vi hadoop-env.sh

添加如下内容:

export JAVA_HOME=/export/servers/jdk  //jdk的安装路径

在这里插入图片描述

修改core-site.xml文件

vi core-site.xml

添加内容如下:

<configuration>
	<property>
				<name>fs.defaultFS</name>
                <value>hdfs://Cat:9000</value> #这里固定写主机名,我的是Cat
	</property>
	<property>
                <name>hadoop.tmp.dir</name>
				<value>/export/servers/hadoop/tmp</value> #这里的路径为虚拟机Hadoop里的tmp目录的路径,内容因自己虚拟机的路径而变
	</property>
</configuration>

在这里插入图片描述

修改hdfs-site.xml文件

vi hdfs-site.xml

添加的内容如下:

<configuration>
        <property>
                <name>dfs.replication</name>
                <value>3</value>
        </property>
        <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>Dog:50090</value> #这里改为第二台虚拟机的名字,我的是Dog
        </property>
</configuration>

在这里插入图片描述

修改mapred-site.xml文件

这里我们首先需要拷贝下mapred-site.xml.template文件,命名为mapred-site.xml

> cp mapred-site.xml.template mapred-site.xml

然后再对cp的文件进行修改

vi mapred-site.xml

添加的内容如下:

<configuration>
<!--指定MapReduce运行时的框架,这里指定在Yarn上,默认时local-->
        <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
        </property>
</configuration>

在这里插入图片描述

修改yarn-site.xml文件

vi yarn-site.xml

添加的内容如下:

<configuration>
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>Cat</value> #这里写主机名,其他内容不变
        </property>
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
</configuration>

在这里插入图片描述

修改/etc/hosts文件

vi /etc/hosts

添加的内容如下(IP地址+主机名):

192.168.72.128 Cat
192.168.72.129 Dog
192.168.72.130 Pig

在这里插入图片描述

修改slaves文件

vi slaves

打开该配置文件,先删除里面的内容(默认localhost),然后配置如下内容:

Cat
Dog
Pig             (内容为自己三台虚拟机的主机名)

步骤

>cd /export/servers/hadoop/etc/hadoop/ 
>vi slaves 

在这里插入图片描述

将集群主节点的配置文件分发到其他子节点

> scp /etc/profile Dog:/etc/profile
> scp /etc/profile Pig:/etc/profile
> scp -r /export/ Dog:/ 
> scp -r /export/ Pig:/

在Dog虚拟机和Pig虚拟机上分别执行

>  source /etc/profile      //使分发的文件生效

格式化文件系统(在主节点上执行。即Cat这台虚拟机上执行)

> hdfs namenode -format

(格式化文件系统这个操作只能在第一次启动hdfs集群时来操作,后面不能再进行格式化)

启动和关闭Hadoop集群

启动和关闭Hadoop集群:包含HDFS集群和YARN两个集群框架

启动有两种方式:

  • 单节点逐个启动
  1. 在Cat上启动namenode
> hadoop-daemon.sh start namenode
  1. 三台虚拟机上启动datanode
>  hadoop-daemon.sh start datanode
  1. 在Cat和Dog上启动resourcemanager
> yarn-daemon.sh start resourcemanager
  1. 三台虚拟机上启动nodemanager
>  yarn-daemon.sh start nodemanager
  1. 在Cat上启动namenode
> hadoop-daemon.sh start secondarynamenode
  1. 使用jps查看是否全部开启
Cat有5个,Dog有4个,Pig有3个
  1. 逐条关闭把start换为stop即可
  • 使用脚本一键启动(在主机Cat上执行)
  1. start-dfs.shstop-dfs.sh启动或关闭所有HDFS服务进程
  2. start-yarn.shstop-yarn.sh启动或关闭所有YARN服务进程
  3. start-all.shstop-all.sh指令,直接启动或关闭整个Hadoop集群服务

第一台主机Cat上显示的五个进程,jps查看
在这里插入图片描述
第二台虚拟机Dog上显示的四个进程,jps查看
在这里插入图片描述
第三台虚拟机Pig上显示的三个进程,jps查看

在这里插入图片描述

Hadoop集群测试

访问50070端口

在浏览器访问Cat:50070或者192.168.72.128:50070(格式为:主机名或IP地址+端口号)查看HDFS集群状态
在这里插入图片描述

虚拟机关闭防火墙

虚拟机关闭防火墙 (三台虚拟机都要关闭)

centos6版本的为:

> service iptables stop       //关闭防火墙
> chkconfig iptables off      //禁止开机启动

centos7版本的为:

> systemctl stop firewalld     //关闭防火墙 
> service start firewalld		//开启防火墙   
> systemctl disable firewalld   //禁止开机启动防火墙

若在关闭防火墙命令会出现如下错误:
在这里插入图片描述
若安装了iptables-service,可以使用如下命令

> yum install -y iptables-services     //安装iptables-service
> systemctl stop firewalld     //关闭防火墙
> systemctl status firewalld            //检查防火墙的状态

在这里插入图片描述

访问8088端口

去浏览器搜索Cat:8088或者192.168.72.128:8088(格式为:主机名或IP地址+端口号)可查看YARN集群管理页面
在这里插入图片描述
到这里就大功告成了,记得点个关注和赞哦!!!!!!mua

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值