最详细的hadoop伪分布式集群搭建及问题解决

事前了解

伪分布式:

这种模式也是在一台单机上运行,但用不同的Java进程模仿分布式运行中的各类结点(NameNode,DataNode,JobTracker,TaskTracker,SecondaryNameNode),请注意分布式运行中的这几个结点的区别:从分布式存储的角度来说,集群中的结点由一个NameNode和若干个DataNode组成,另有一个SecondaryNameNode作为NameNode的备份。从分布式应用的角度来说,集群中的结点由一个JobTracker和若干个TaskTracker组成,JobTracker负责任务的调度,TaskTracker负责并行执行任务。TaskTracker必须运行在DataNode上,这样便于数据的本地计算。JobTracker和NameNode则无须在同一台机器上。

一个机器上,即当namenode,又当datanode,或者说即是jobtracker,又是tasktracker。没有所谓的在多台机器上进行真正的分布式计算,故称为"伪分布式"。

完全分布式:

真正的分布式,由3个及以上的实体机或者虚拟机组件的机群。

注意:下面内容我弄的是一台虚拟机安装Hadoop(可以看作伪分布式),之后假如我用伪分布式这一台虚拟机再克隆两台虚拟机并做一些改正与配置(这个可以看作完全分布式)

1.下载虚拟机

本人是 VMware Workstation Pro16 版本的

1.直接百度下载虚拟机(VMware Workstation Pro),比如:

在这里插入图片描述

2.安装前先百度版本密钥,这个在安装结束时需要用到,安装直接跟着步骤走,具体可以百度安装步骤,比如:

在这里插入图片描述

2.创建虚拟机

== 这段内容我不做太多作述,百度有很多例子==

1.进入虚拟机后点击:文件----》新建虚拟机----》典型----》安装程序光盘映像文件(iso)(M)----

在这里插入图片描述

注意:(安装程序光盘映像文件(iso)(M))这里需要导入iso镜像,所以需要先去网上下载iso镜像

Minimal ISO
Mini版本,只有必要的软件,自带的软件最少(没有图形化界面)
CentOS-7-x86_64-Minimal-1810.iso 918M
DVD ISO
标准版本安装(服务器安装推荐使用,包含一些基本的软件和图形化界面)
CentOS-7-x86_64-DVD-1708.iso 4个多G
Everything ISO
对完整版安装盘的软件进行补充,集成所有软件(图形化界面版)
很大,没下过,好像有十几个G,似乎在官方的安装指南看到的。

网上下载地址: https://www.centos.org/download/

----》下一步----(设置虚拟机名称及位置)----》下一步—》下一步—》完成----》(耐心等待系统加载后需要进行相应设置)----》(设置中文)----》(设置磁盘位置,开启网络)—》(设置root密码,不需要设置用户)----》等待安装…

3.配置静态网络及关闭防火墙

3.1.配置静态网络

1.登录虚拟机: 用户:root 密码:自己设置的密码
2.输入: ping www.baidu.com 查看网络是否开启(ctrl+c停止运行),如果如以下情况则是开启

[

注意: 如果网络没有开启,就输入以下命令开启网络

[root@192 ~]# service network restart			//开启网络

3.进入网络配置文件中配置静态网络及关闭防火强

  • 这里需要是root用户如果不是就输入 su 会要你输入密码后进入root用户

    [root@192 ~]#su					//切换root用户
    

我这里是root用户,名字上有root

在这里插入图片描述

cd /etc—>cd sysconf ig—>cd network-scripts/—>ll—>(用编辑器打开)vi ifcfg-ens33—》进入

在这里插入图片描述

进入以下页面按A键进入编辑模式需要将BOOTPROTO="dhcp"的值改成static,ONBOOT的值改成yes(开机自动打开),之后设置其它属性

注意:下面文中进入虚拟网络编辑器的更改设置后,在设置期间先不要关闭

  • P地址:IPADDR=""

点击菜单栏上的:编辑—》虚拟网络编辑器—》(选中vmnet8 , 下面的子网IP中 192.168.175不变,后面数字自己随便设置,我自己设置为 192.168.175.10

在这里插入图片描述

  • 子网掩码:NETMASK="“

子网掩码默认不变

  • 默认网关:GATEWAY="",

点击 更改设置-—》选中vmnet8---->(将 使用本地DHCP 的选项勾去掉—》NAT设置

在这里插入图片描述

  • DNS:

    • DNS1=" "

      查看本机DNS,进入控制台输入 ipconfig /all

    在这里插入图片描述

    也可以使用谷歌公用dns

在这里插入图片描述

  • DNS2=" "

    可以使用百度DNS

在这里插入图片描述

最终成样:

在这里插入图片描述

最后点击确定保存设置:

在这里插入图片描述

最后按Esc键退出编辑模式,再输入:wq保存再退出(不保存退出输入:q(前提你没更改过设置);:q!强制退出)

再输入命令service network restart------>ping www.baidu.com,查看网络是否连接成功

3.1.关闭防火墙

命令:systemctl stop firewalld------>systemctl disable firewalld------>systemctl status firewalld
在这里插入图片描述

重启:reboot

查看防火墙状态:systemctl status firewalld

3.2.可能遇到的问题

  • 比如iso下载错误需要卸载和删除

    参考网站:http://www.xitongcheng.com/jiaocheng/win10_article_57913.html

  • win10下的VMware还原网络设置,无法创建VMware网络适配器解决办法

    参考网站:https://blog.csdn.net/qq_36651243/article/details/88709363

4.设置主机名及编辑hosts文件

设置主机名

设置主机名命令:hostnamectl set-hostname 名字

在这里插入图片描述

重新启动虚拟机查看设置成功没命令:reboot

在这里插入图片描述

配置hosts文件:

查看设置的ip:ifconfig 或者:hostname -i

进入hosts文件命令:vi /etc/hosts

进入后按A键进入编辑模式,设置完后按 ESC 再按 :输入 wq 回车保存并退出

配置:虚拟机自己设置IP 自己设置的主机名

5.使用Xshell操作虚拟机

  • 由于使用 VMware Workstation Pro 这款软件操作虚拟机有一些弊端,比如:不能粘贴复制,所以我们就使用xshell这款软件来连接 VMware Workstation Pro 上创建的虚拟机从而可以在xshell上操作虚拟机(即之后我没说再哪里操作即默认再xshell上操作

5.1.事前准备

  • 下载jdk安装包:

    • 华为提供的下载服务:https://repo.huaweicloud.com/java/jdk/(推荐使用)
    • 清华大学提供的下载服务:https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/
  • 下载hadoopLinux安装包:

    • 官方地址:https://archive.apache.org/dist/hadoop/common/
    • 北京信息学院镜像下载:http://mirror.bit.edu.cn/apache/hadoop/common/

在这里插入图片描述

  • 下载xhell软件:

    本人用的是xshell7 版本的

这个可以直接百度 xshell 下载

本人下载地址:http://www.j9p.com/down/531725.html

安装教程可参考百度:https://blog.csdn.net/weixin_40928253/article/details/80621724

5.2.xshell连接虚拟机

1.进入xshell后点击:文件—》新建,会出现以下页面

在这里插入图片描述

然后输入名称和ip地址进行连接:

在这里插入图片描述

之后会弹出要你输入用户名密码:是你自己虚拟机登录的一样

5.2.1可能遇见的问题

  • 连接时出现以下报错

    在这里插入图片描述

解决:

下文有关于centos7开启ssh服务的,如果下面不明白可以看这位博主:https://blog.csdn.net/baibaigao/article/details/80956417

首先虚拟机输入命令:cd /etc/sysconfig/ 再输入 ls 查看目录中有没有 iptables (注意:不是iptables-***)文件,没有的话,进行如下操作:

​ 1.跳回最开始目录,即别在其它目录中

​ 2.如果前面没关闭防火的则需要关闭防火墙

​ systemctl stop firewalld
​ systemctl mask firewalld

​ 3.安装iptables-services:

​ yum install iptables-services

​ 4.设置开机启动:

​ systemctl enable iptables

​ 5.保存设置:

​ service iptables save

​ 6.然后再次输入命令:cd /etc/sysconfig/—>ls ,可以看见有 iptables 文件了

在这里插入图片描述

​ 7.然后在输入以下命令进入iptables 文件

​ vi iptables

在这里插入图片描述

​ 8.按 A 键进入编辑模式向里面添加以下命令:

​ -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT

注意:我上面的图中显示有这个命令。

如果里面有这个命令,则不需要添加了,直接按 Esc 再再底部输入 :wq 回车保存并退出。然后再次去连接xshell ,如果还是那个错,就输入:

​ 重启防火墙:service iptables restart

然后再去连接xshell 如果还不行就:

​ 9.先关闭防火墙:/etc/init.d/iptables stop

​ 10.查看防火墙状态:systemctl status firewalld

在这里插入图片描述

​ 11.开启ssh-server服务器(需要root用户)

​ service sshd start

​ 然后再去尝试连接,还是报错

​ 12.查看22端口是否开启

​ 命令: ss -lnt(l 是L小写)

​ 结果发现是开启的

在这里插入图片描述

​ 如果没有就输入:

​ 开启ssh-server服务:service sshd start

​ 再次查看:ss –lnt ,就有了

13.然后连接发现还是不行就查看了一些博主

​ 1.https://blog.csdn.net/baidu_18696283/article/details/89061923

​ 2.https://blog.csdn.net/u013067756/article/details/76086835

​ 发现依然不行,我估计是虚拟机软件本身问题,于是就多次还原默认设置后

在这里插入图片描述

先把虚拟机设置的静态ip改下,然后再参考这位博主

https://blog.csdn.net/trackle400/article/details/52755571

终于把问题解决了(感谢这位博主!!!)

在这里插入图片描述

6.文件传输

  • 将上面的事前准备中下载的jdk与hadoop包传入到 cd /opt/package 目录中

    • 当然package目录是不可能有的,这是自己随便起的名字,所以我们要再 cd /opt 目录下新建package目录:

      1.cd /    					// 进入目录入口
      2.ls       					//产看目录
      3.cd /opt   				//进入 opt 目录中
      4.opt下新建目录:sudo mkdir package   	//这是再其它目录下创建新目录 
      

    在这里插入图片描述

    其它可能使用到的命令:

    1. mkdir /package     //直接在cd下创建package目录
    2.rm -fr package		//删除package目录,这个只能删你的当前目录下的下一级目录,加入你要删除opt目录下的package目录则需要在opt目录上输入这个命令
    3. 先 cd / 再 ls            //查看目录,下一级直接 cd /目录名
    4.cd ..                 //返回上一级目录
    
    
    • 输入 rz 传输文件,如果显示未找到命令则输入 yum install lrzsz -y 安装工具,.检查是否安装成功:rpm -qa |grep lrzsz

    在这里插入图片描述

    我这显示安装成功,所以不需要检查:

在这里插入图片描述

开始传输文件:

1.先进入package 目录中:

cd /opt/package

在这里插入图片描述

2.传输文件,输入命令后回车会弹出本机文件夹,你可以去选则要上传的文件,传输过程需要时间:

rz

在这里插入图片描述

传输完成后输入命令会发现package中有了两个文件,这就是刚才传输的文件:

ls

在这里插入图片描述

7.解压jdk

1.在opt目录下再新建个module(自己随便起名) 目录,用于存放解压后的文件:

1.//先进入opt 目录
2.[root@mycomputer opt]# sudo mkdir module
3.[root@mycomputer opt]# ls    //查看

2… 解压 JDK 到/opt/module 目录下:

1.[root@mycomputer opt]# cd package
2.[root@mycomputer package]# ls      //查看文件
hadoop-2.7.7.tar.gz  jdk-8u171-linux-x64.tar.gz
3.[root@mycomputer package]# tar -zxvf jdk-8u171-linux-x64.tar.gz -C /opt/module/   			 //解压

3.成功后进入 module 目录下查看:

1.[root@mycomputer package]# cd ..
2.[root@mycomputer opt]# ls
3.[root@mycomputer opt]# cd module
4.[root@mycomputer module]# ls

在这里插入图片描述

4.为了方便后面配置环境变量,将文件改名为 jdk8 ,使用mv命令可以实现改名效果:

1.[root@mycomputer module]# mv jdk1.8.0_171/ jdk8(所改名)
2.ls

在这里插入图片描述

8.配置JDK环境变量

1.先安装vim编辑器:

1.//先退到开始目录
2.[root@mycomputer /]# yum install vim -y

在这里插入图片描述

2.进入jdk8目录:

1.[root@mycomputer /]# cd /opt/module/jdk8

3.查看获取 JDK 路径:

[root@mycomputer jdk8]# pwd

在这里插入图片描述

4.用vim打开 etc/profile 文件添加jdk路径:

1.[root@mycomputer jdk8]# cd 		//到最开始目录
2.[root@mycomputer module]# sudo vim /etc/profile

在 profile 文件末尾添加 JDK 路径:

#JAVA_HOME
export JAVA_HOME=/opt/module/jdk8    
export PATH=$PATH:$JAVA_HOME/bin

在这里插入图片描述

按A 推出编辑模式,再按Esc后输入 :wq 保存退出

5.让修改后的文件生效:

1.[root@mycomputer ~]# cd /opt/module
2.[root@mycomputer module]# ls3.
3.[root@mycomputer module]# cd jdk8
4.[root@mycomputer jdk8]#  source /etc/profile

6.测试 JDK 是否安装成功:

[root@mycomputer jdk8]# java -version

在这里插入图片描述

[root@mycomputer jdk8]# javac

在这里插入图片描述

9.安装Hadoop

1.进入到 Hadoop 安装包路径下:

[root@mycomputer ~]# cd /opt/package
[root@mycomputer package]# ls

2.解压Hadoop安装文件到/opt/module 目录下面:

[root@mycomputer package]# tar -zxvf hadoop-2.7.7.tar.gz -C /opt/module/

3.查看是否解压成功:

[root@mycomputer package]# ls /opt/module/

在这里插入图片描述

4.为Hadoop改名为 Hadoop2,为了以后配置是简便些:

1.[root@mycomputer package]# cd
2.[root@mycomputer ~]# cd /opt/module
3.[root@mycomputer module]# ls
4.[root@mycomputer module]# mv hadoop-2.7.7/ hadoop2
5.[root@mycomputer module]# ls

在这里插入图片描述

10.将 Hadoop 添加到环境变量

1.获取Hadoop 安装路径:

1.[root@mycomputer module]# cd hadoop2    //进入Hadoop目录中
2.[root@mycomputer hadoop2]# pwd

在这里插入图片描述

2.用vim打开 etc/profile 文件添加jdk路径:

 [root@mycomputer hadoop2]# sudo vi /etc/profile

在 profile 文件末尾添加 JDK 路径:

##HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop2
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

在这里插入图片描述

按A 推出编辑模式,再按 Esc 后输入 :wq 保存退出

3.让修改后的文件立即生效:

[root@mycomputer hadoop2]#  source /etc/profile

4.测试是否安装成功:

[root@mycomputer hadoop2]#  hadoop version

在这里插入图片描述

11.设置ssh免密登录

1.ssh-keygen -b 1024 -t rsa 一路回车啥都别管 X 3

1.[root@mycomputer hadoop2]# cd
2.[root@mycomputer ~]# ssh-keygen -b 1024 -t rsa 
3.[root@mycomputer ~]# ls -all
4.[root@mycomputer ~]# cd .ssh
5.[root@mycomputer .ssh]# ls
6.[root@mycomputer .ssh]# ssh-copy-id mycomputer   //设置免密登录

在这里插入图片描述

2.查看是否成功:

1.[root@mycomputer .ssh]# cd
2.[root@mycomputer ~]# ssh mycomputer

在这里插入图片描述

3.其它方法:

1.[root@mycomputer ~]# ssh-keygen -b 1024 -t rsa    //一路回车
2.cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keys

12.修改Hadoop配置文件

伪分布式运行模式

  • 由于接下来要配置许多东西所以一些基本命令我写在下面,后面不会再说了
    • 配置文件时, 按 A 键进入编辑模式
    • 文件配好后, 按 Esc 键,然后再再最下面输入 :wq 保存并退出

1. 查看Hadoop 目录结构

1.[root@mycomputer ~]# cd /opt/module
2.[root@mycomputer module]# ls
3.[root@mycomputer module]# cd hadoop2
4.[root@mycomputer hadoop2]# ll

在这里插入图片描述

其中重要目录:

(1)bin 目录:存放对 Hadoop 相关服务(HDFS,YARN)进行操作的脚本

(2)etc 目录:Hadoop 的配置文件目录,存放 Hadoop 的配置文件

(3)lib 目录:存放 Hadoop 的本地库(对数据进行压缩解压缩功能)

(4)sbin 目录:存放启动或停止 Hadoop 相关服务的脚本

(5)share 目录:存放 Hadoop 的依赖 jar 包、文档、和官方案例

2.配置:hadoop-env.sh

1.进入hadoop-env.sh文件中

1.[root@mycomputer hadoop2]# cd
2.[root@mycomputer ~]# vim /opt/module/hadoop2/etc/hadoop/hadoop-env.sh

2.修改 JAVA_HOME 路径,路径为自己先前安装的路径:

可以查看上面文档:配置JDK环境变量 ,里面有如何去查看获取 JDK 路径方法

在这里插入图片描述

3.配置:core-site.xml(核心组件)

1.进入core-site.xml文件:

[root@mycomputer ~]# vim /opt/module/hadoop2/etc/hadoop/core-site.xml

2.需要在和之间加入的代码:

<!-- 指定 HDFS 中 NameNode 的地址 -->
<!-- 默认节点(写自己主机的ip)端口,端口默认为9000 -->
<property>
  <name>fs.defaultFS</name>
  <value>hdfs://192.168.30.10:9000</value>
</property>
<!-- 指定 Hadoop 运行时产生文件的存储目录 -->
<!-- hdfs的临时文件的目录***这个要记好,后面初始化错误可能会用到***  -->
<property>
   <name>hadoop.tmp.dir</name>
   <value>/opt/module/hadoop2/tmp</value>
</property>

在这里插入图片描述

4.配置:hdfs-site.xml(文件系统)

1.进入 hdfs-site.xml 文件

[root@mycomputer ~]# vim /opt/module/hadoop2/etc/hadoop/hdfs-site.xml

2.需要在和之间加入的代码(我只加了前一个,建议都加):

<!-- 设置数据块应该被复制的份数(和集群机器数量相等,目前只有一个填1,以后有几台就填几台) -->
<property>
  <name>dfs.replication</name>
  <value>1</value>
</property>
<!--指定NameNode运行产生的文件存储目录-->
<property>
  <name>dfs.namenode.name.dir</name>
  <value>/opt/module/hadoop2/tmp/dfs/name</value>
</property>
<!--指定DataNode运行产生的文件存储目录-->
<property>
  <name>dfs.datanode.data.dir</name>
  <value>/opt/module/hadoop2/tmp/dfs/data</value>
</property>

在这里插入图片描述

5.配置mapred-site.xml.template(计算框架文件)

1.首先将 mapred-site.xml.template 文件改名为 mapred-site.xml,执行以下命令将会改名:

1.[root@mycomputer ~]# cd /opt/module/hadoop2/etc/hadoop
2.[root@mycomputer hadoop]# ls 
3.[root@mycomputer hadoop]# mv mapred-site.xml.template mapred-site.xml
4.[root@mycomputer hadoop]# ls

在这里插入图片描述

2.进入mapred-site.xml文件:

[root@mycomputer hadoop]# vim mapred-site.xml

3.需要在和之间加入的代码:

<!-- mapreduce的工作模式:yarn -->
<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
</property>

在这里插入图片描述

6.配置 yarn-site.xml 文件

1.进入 yarn-site.xml 文件:

[root@mycomputer hadoop]# vim yarn-site.xml

2.需要在和之间加入的代码:

<!-- reducer获取数据方式 -->
<property>
	<name>yarn.nodemanager.aux-services</name>
	<value>mapreduce_shuffle</value>
</property>
<!--客户端通过该地址向RM提交应用程序,杀死应用程序等。-->
<property>
	<name>yarn.resourcemanager.hostname</name>
	<value>mycomputer</value>
</property>
<!--ApplicationMaster通过该地址向RM申请资源、释放资源等。-->
<property>
	<name>yarn.resourcemanager.scheduler.hostname</name>
	<value>mycomputer</value>
</property>
<!--NodeManager通过该地址向RM汇报心跳,领取任务等。-->
<property>
	<name>yarn.resourcemanager.resource-tracker.hostname</name>
	<value>mycomputer</value>
</property>
<!--管理员通过该地址向RM发送管理命令等。-->
<property>
	<name>yarn.resourcemanager.admin.hostname</name>
	<value>mycomputer</value>
</property>
<!--用户可通过该地址在浏览器中查看集群各类信息-->
<property>
	<name>yarn.resourcemanager.webapp.hostname</name>
	<value>mycomputer</value>
</property>
<!-- 日志聚集功能使用 -->
<property>
    <name>yarn.log-aggregation-enable</name>
    <value>true</value>
</property>
<!-- 日志保留时间设置7天 -->
<property>
    <name>yarn.log-aggregation.retain-seconds</name>
    <value>604800</value>
</property>

在这里插入图片描述

7.配置master的slaves文件

1.进入 slaves 文件:

[root@mycomputer hadoop]# vim slaves

配置如下图:

在这里插入图片描述

13.启动与关闭集群

1.格式化 NameNode(第一次启动时格式化,以后就不要总格式化):

1.[root@mycomputer hadoop]# cd
2.[root@mycomputer ~]# hdfs namenode -format

注意: 这里如果安装的时候多次初始化,会导致错误,解决方法是删除/opt/hadoop目录下的tmp文件(就是上面配置文件core-site.xml中需要注意的地方)

13.1方式一

13.1.1.启动hadoop

[root@mycomputer ~]# start-all.sh				//启动

可能遇到的问题:

如果报:localhost: Host key verification failed. 错时按以操作解决:

1.[root@mycomputer ~]# stop-all.sh				//关闭
2.[root@mycomputer ~]# ssh-keygen -R 192.168.30.10    //-R 后面是自己的主机名

在这里插入图片描述

再启动Hadoop如果报:The authenticity of host ‘mycomputer (192.168.30.10)’ can’t be established. 异常。按以下命令解决:

[root@mycomputer ~]# ssh  -o StrictHostKeyChecking=no  192.168.30.10
hadoop2/logs/hadoop-root-namenode-mycomputer.log

再次启动如果还出现:root@mycomputer’s password: mycomputer: Permission denied, please try again. 错误的解决办法:

1.[root@mycomputer ~]# passwd root  					//修改root密码
2.[root@mycomputer ~]# sudo vi /etc/ssh/sshd_config		//.辑配置文件,允许以 root 用户通过 ssh 登录
 2.1找到:PermitRootLogin prohibit-password禁用
 2.2添加:PermitRootLogin yes
3.[root@mycomputer ~]# systemctl restart sshd   		//启动ssh
4.[root@mycomputer ~]# cd /etc/ssh/						//进入ssh目录
5.root@mycomputer ssh]# vim sshd_config 				//进入查看,(里面 port 22 的 # 号是否去掉,如果没就去掉)
6.[root@mycomputer ssh]#  ps -e | grep sshd 			//检查一下ssh服务是否开启
7.[root@mycomputer ssh]#  ss -lnt						//查看22端口是否开启

之后启动,中间可能会有其它错,别管它,即使没加载也一路回车,如果发现还报:mycomputer: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). 异常,以下解决办法:

//原因:由于更换root密码,导致当前账号可能没有配置免密登录,所以要创建公钥和私钥
1[root@mycomputer ~]# ssh-keygen -t rsa
2.[root@mycomputer ~]# cd .ssh
3.[root@mycomputer .ssh]# ls
4.[root@mycomputer .ssh]# touch authorized_keys		//创建authorized_keys文件
5.[root@mycomputer .ssh]# chmod 600 authorized_keys	//修改权限为600
6.[root@mycomputer .ssh]# ls
7.[root@mycomputer .ssh]# cat id_rsa.pub >> authorized_keys		//将公钥追加到authorized_keys文件中去
8.[root@mycomputer .ssh]# cd						//返回到mycomputer
9.[root@mycomputer ~]# ssh mycomputer				//试试看能否成功免密登录
(//[root@mycomputer ~]# ssh mycomputer
//Last failed login: Sat Jan 23 17:20:24 CST 2021 from localhost on ssh:notty
//There were 26 failed login attempts since the last successful login.
//Last login: Sat Jan 23 14:23:33 2021 from 192.168.30.4
//[root@mycomputer ~]#)
 10.[root@mycomputer ~]# start-all.sh					//启动hadoop

在这里插入图片描述

输入:jps

在这里插入图片描述

不过里面没有 DataNode,解决办法如下:

参考博客:https://blog.csdn.net/islotus/article/details/78357857

//在dfs/name目录下找到一个current/VERSION文件,记录clusterID并复制。然后dfs/data目录下找到一个current/VERSION文件,将其中clustreID的值替换成刚刚复制的clusterID的值即可;(注意:dfs目录在core-site.xml文件中自己设置的用于 Hadoop 运行时产生文件的存储目录,我的叫 tem)
//先关闭Hadoop
1.[root@mycomputer ~]# cd /opt/module/hadoop2/tem/df/sname/current/
2.[root@mycomputer current]# vi VERSION  //进入后复制的clusterID的值
3.[root@mycomputer current]# cd ..
4.[root@mycomputer name]# cd ..
5.[root@mycomputer dfs]# ls
6.[root@mycomputer dfs]# cd data
7.[root@mycomputer data]# cd current
8.[root@mycomputer current]# vi VERSION    //将其中clustreID的值替换成刚刚复制的clusterID的值
//再次启动Hadoop

在这里插入图片描述

13.1.2关闭hadoopp

[root@mycomputer ~]# stop-all.sh				//关闭

13.2.方式二

1.Hadoop的启动:

  • 进入Hadoop安装目录
[root@mycomputer ~]# cd /opt/module/hadoop2
  • 然后启动 NameNode
[root@mycomputer hadoop2]# sbin/hadoop-daemon.sh start namenode
  • 然后启动 DataNode
[root@mycomputer hadoop2]# sbin/hadoop-daemon.sh start datanode
  • 查看是否启动成功
[root@mycomputer hadoop2]# jps

在这里插入图片描述

2.关闭hadoop:

[root@mycomputer ~]# stop-all.sh

13.3.利用案例检查Hadoop是否能工作

步骤如下:

1.[root@mycomputer ~]# cd /opt/module/hadoop2/share/hadoop/mapreduce
	//进入Hadoop目录下的mapreduce 目录
2.[root@mycomputer mapreduce]# hadoop jar hadoop-mapreduce-examples-2.7.7.jar pi 10 10			//测试运行圆周率(pi代表圆周率)

在这里插入图片描述

13.4.用浏览器web 端查看 HDFS 文件系统

特别注意:HaDoop3.0之前web访问端口是50070 hadoop3.0之后web访问端口为9870

http://mycomputer:50070/

注意:如果不能查看,看如下帖子处理:

http://www.cnblogs.com/zlslch/p/6604189.html

在这里插入图片描述

改为:
在这里插入图片描述

以上博客如果还是不行就安装 Firefux 浏览器,再从浏览器进入:

步骤:

1.[root@mycomputer ~]# stop-all.sh		//先关闭Hadoop
2.[root@mycomputer ~]# cd /opt/module/hadoop2 /etc/hadoop
3.[root@mycomputer hadoop]# yum -y install firefox	 //安装firefux 浏览器

在这里插入图片描述

5.[root@mycomputer hadoop]# firefox		//打开firefox (会提示打不开,因为没配置环境)
6.[root@mycomputer hadoop]# cd
//(如果你重新启动连接须虚拟机会发现会报:The remote SSH server rejected X11 forwarding request.)
7.[root@mycomputer ~]# vim /etc/ssh/sshd_config       //修改文件

文件修改为如图:(注意还有 UseLogin no 的# 号也要去掉,下图中我截图显示)

在这里插入图片描述

8.[root@mycomputer ~]# yum install xorg-x11-xauth -y	//安装xorg-x11-xauth的rpm包

在这里插入图片描述

9.[root@mycomputer ~]# yum install xclock -y	//安装xclock

在这里插入图片描述

10.[root@mycomputer ~]# systemctl restart sshd		//重启ssh服务
11.[root@mycomputer ~]# xclock

这时会提示你要下载 Xmanager ,所以接下来需要电脑上下载Xmanager(我下载的是Xmanager7):

下载地址:https://www.xshellcn.com/

在这里插入图片描述

安装完成后可以别管它,直接到Xshell上重新连接虚拟机,然后执行以下操作:

1.[root@mycomputer ~]# xclock
2.[root@mycomputer ~]# start-all.sh
3.[root@mycomputer ~]# jps
4.[root@mycomputer ~]# firefox		//打开Firefux 浏览器

接下来会弹出浏览器,可能是乱码,自己可以再上面输入:主机名:50070 或者 主机IP:50070

加载页面如下:

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值