虚拟机VMware workstation pro 中搭建 Hadoop伪分布式环境

一、免密配置(ssh配置)

1.1创建Hadoop用户

在进行免密操作的时候,我要创建一个Hadoop用户,打开终端(ctrl+alt+t)在root权限下操作,才能成功创建一个用户,为了创建一个完成的用户,我将他的权限升为root级别,并添加了密码:

 

创建hadoop用户,并使用/bin/bash作为shell,输入命令:

sudo useradd -m hadoop -s /bin/bash

 

为hadoop用户设置密码,之后需要连续输入两次密码,输入命令:

sudo passwd hadoop

 

为hadoop用户增加管理员权限,输入命令:

sudo adduser hadoop sudo   

 

切换当前用户为用户hadoop,输入命令:

su - hadoop    

 

更新hadoop用户的apt,方便后面的安装,输入命令:

 sudo apt-get update

1.2 安装ssh,设置ssh免密登陆

现在在完成上一节操作之后,我们开始下载安装ssh server

 

安装SSH server,输入命令:

sudo apt-get install openssh-server

在安装这里会有一个问题,请填yes

登陆SSH,第一次登陆输入yes,输入命令:

ssh localhost

 

退出登录的ssh localhost,输入命令:

exit

 

如果没法进入该目录,执行一次ssh localhost,输入命令:

cd ~/.ssh/  

ssh-keygen -t rsa 

其中,第一次回车是让KEY存于默认位置,以方便后续的命令输入。第二次和第三次是确定passphrase,相关性不大。两次回车输入完毕以后,如果出现类似于下图所示的输出,即成功:

 

1.3测试SSH是否免密成功

在前面进入的.ssh文件下输入命令:

cat ./id_rsa.pub >> ./authorized_keys

进行加权操作

此时再次进入ssh将不会在需要密码,输入命令:

ssh localhost

此时,我们的免密操作就算大功告成了!

二、JDK安装

首先在oracle官网:http://www.oracle.com/technetwork/java/javase/downloads/index.html 接下来进行安装与环境变量配置,根据个人电脑系统选择对应版本。我下载的是

 

首先,我们再home目录下的usr文件中的lib文件中创建jvm文件,输入命令:

 Sudo mkdir /usr/lib/jvm

再将jdk解压到/usr/lib/jvm目录下

Sudo tar zxvf 路径+文件名 -C /usr/lib

进入到该jvm所在的上一级了目录lib中,输入命令:

cd /usr/lib

 

移动jdk到jvm目录下,并且重命名其为Java,此处的Java文件夹是系统帮我们自己生成的,不需要自己创建。输入命令:

Sudo mv jdk-11.0.2 /usr/lib/jvm/java

 

接下来给jdk配置环境变量,输入命令:

vi ~/.bashrc

进入后在最下面添加如下内容:

export JAVA_HOME=/usr/lib/jvm/java

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:$PATH

这些就是jdk的配置信息。

输入保存成功后输入以下命令:

使新配置的环境变量生效

source ~/.bashrc

检测是否安装成功,查看java版本

 java -version  

 

出现java版本号就算安装成功了!!!

为了后面操作方便,我们可以安装vim编辑器,输入命令:

Sudo apt-get install vim

 

就能安装成功了

三、Hadoop安装和伪分布式搭建

3.1 hadoop安装

上面操作完成之后接下来我们进行Hadoop的安装配置

先下载自己需要的Hadoop版本,网站链接http://mirrors.hust.edu.cn/apache/hadoop/common/

我下载的是hadoop-3.2.0.tar.gz

 

下面进行安装:

解压到home目录下的usr目录中的local目录下,使用命令:

Sudo tar zxvf 路径+文件名 -C /usr/local

进入到local目录下,并将解压后的文件移动到local目录下的Hadoop文件中,这个Hadoop文件不需要自己创建,系统自己为你创建。输入命令:

Cd /usr/local

Sudo mv 解压后文件名 /usr/local/hadoop

 

下一步我们为了能够操作文件,我们需要对文件的权限进行修改,我们要先进入到local目录下才能成功,输入命令:

Cd /usr/local

sudo chown -R hadoop ./hadoop

 

配置.bashrc文件,进入文件命令:

Sudo vim ~/.bashrc

输入以下内容:

export HADOOP_HOME=/usr/local/hadoop

export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

 

运行新的配置文件,输入命令:

Source ~/.bashrc

 

检测安装是否成功能够看到Hadoop的版本号,输入命令:

Hadoop version

 

到现在hadoop安装算成功了!!!

3.2伪分布式配置

Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 中,伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。首先将jdk-11.0.2的路径添(export JAVA_HOME=/usr/lib/jvm/java )加到hadoop-env.sh文件。

首先在hadoop-env.sh文件中添加jdk路径:

你再进入前因该进入到/usr/local/hadoop/etc/hadoop/此路径下,下面的文件1、修改都将在此路径下进行修改,再使用进入命令:

 

 

最好放在自己容易找到的位置,方便出错后修改。

2、接下来修改core-site.xml文件:

进入后文件为这样,我们要在<configuration></configuration>标签中插入内容:

插入内容如下:

<configuration>

        <property>

             <name>hadoop.tmp.dir</name>

             <value>file:/usr/local/hadoop/tmp</value>

             <description>Abase for other temporary directories.</description>

        </property>

        <property>

             <name>fs.defaultFS</name>

             <value>hdfs://localhost:9000</value>

        </property>

</configuration>

 

 

3、接下来修改配置文件 hdfs-site.xml进入文件后,你会看到下图的内容,我们还是在同样的位置进行添加。

 

添加内容如下:

<configuration>

        <property>

             <name>dfs.replication</name>

             <value>1</value>

        </property>

        <property>

             <name>dfs.namenode.name.dir</name>

             <value>file:/usr/local/hadoop/tmp/dfs/name</value>

        </property>

        <property>

             <name>dfs.datanode.data.dir</name>

             <value>file:/usr/local/hadoop/tmp/dfs/data</value>

        </property>

</configuration>

Hadoop 的运行方式是由配置文件决定的(运行 Hadoop 时会读取配置文件),因此如果需要从伪分布式模式切换回非分布式模式,需要删除 core-site.xml 中的配置项。此外,伪分布式虽然只需要配置 fs.defaultFS 和 dfs.replication 就可以运行(可参考官方教程),不过若没有配置 hadoop.tmp.dir 参数,则默认使用的临时目录为 /tmp/hadoo-hadoop,而这个目录在重启时有可能被系统清理掉,导致必须重新执行 format 才行。所以我们进行了设置,同时也指定 dfs.namenode.name.dir 和 dfs.datanode.data.dir,否则在接下来的步骤中可能会出错。

配置完成后,执行 NameNode 的格式化,输入命令:

首先你要回到/usr/local/hadoop路径下去

./bin/hdfs namenode -format

 

启动namenode和datanode进程,并查看启动结果

还是和上一步的路径相同,输入下面命令:

./sbin/start-dfs.sh

 

运行结果命令:

Jps

成功启动后,可以访问 Web 界面 http://localhost:50070 查看 NameNode 和 Datanode 信息,还可以在线查看 HDFS 中的文件。 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值