搭建伪分布模式将采用finalshell连接Linux虚拟机,如果不觉得麻烦,也可以直接在Linux虚拟机上进行搭建。

工具:finalshell、Vmware-Linux-centos虚拟机

伪分布模式环境必备:jdk1.8.0-8u311、hadoop2.6.5

进行伪分布搭建之前需要配置jdk环境和下载Hadoop相关文件,具体步骤可参考以下文章配置:

Hadoop单例模式搭建(配置jdk和hadoop)

第一步,配置Hadoop相关文件。

        进入Hadoop文件夹。参考代码如下:

cd /usr/local/hadoop/etc/hadoop

             ① 配置core-site.xml文件。

                     首先进入文件,代码如下:

vi core-site.xml

                     进入文件后,将以下代码添加到如图红框部分:(进入文件后,按【i】进入编辑模式)(注意:<value>/usr/local/hadoop/data</value>,若hadoop文件在其他位置,则进行需要修改)

<configuration>
<!-- 指定HDFS中NameNode的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<!-- 指定hadoop运行时产生文件的存储目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/data</value>
</property>
</configuration>

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_Hadoop

                      添加成功后,按【Esc】退出编辑模式,输入【:】,再输入【wq】保存并退出

             ②配置hdfs-site.xml文件

                     首先进入文件,代码如下:

vi core-site.xml

                        进入文件后,将以下代码添加到如图红框部分:(进入文件后,按【i】进入编辑模式)

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<!--secondary的地址-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>localhost:50090</value>
</property>
<!--关闭权限-->
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_linux_02

                       添加成功后,按【Esc】退出编辑模式,输入【:】,再输入【wq】保存并退出

mapred-site.xml.template文件

                     进入文件,代码如下:

vi mapred-site.xml.template

                      进入文件后,将以下代码添加到如图红框部分:(进入文件后,按【i】进入编辑模式)                        

<configuration>
<!-- 指定mr运行在yarn上-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_linux_03

                     添加成功后,按【Esc】退出编辑模式,输入【:】,再输入【wq】保存并退出

             ④配置yarn-site.xml文件

进入文件,代码如下:

vi yarn-site.xml

                      进入文件后,将以下代码添加到如图红框部分:(进入文件后,按【i】进入编辑模式)(注意,添加内容中<value>localhost</value>最好将localhost改成自己虚拟机的IP,否则在最后一步web访问时8088端口无法在外网访问)

<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- 指定YARN的ResourceManager的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
</configuration>

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_centos_04

                     添加成功后,按【Esc】退出编辑模式,输入【:】,再输入【wq】保存并退出

第二步,Hadoop环境相关变量。

        进入系统文件,输入代码:

vi /etc/profile

        进入文件后,按【i】,进入编辑模式,添加以下内容:

export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_centos_05

                添加变量成功后,按【Esc】退出编辑模式,输入【:】,再输入【wq】保存并退出

第三步,刷新系统文件,使变量环境生效。

        刷新代码:

source /etc/profile

第四步,刷新成功后,格式化namenode。

        格式化代码如下:

hdfs namenode -format

        如图所示即为格式化成功:

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_Hadoop_06

第五步,验证Hadoop伪分布搭建是否成功。

启动HDFS服务节点。代码如下:

start-dfs.sh

namenode、secondarynamenode、datanode

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_linux_07

          启动完成后,输入代码:(查看开启的进程)

jps

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_centos_08

如图所示即为成功。

         ②启动YARN服务节点。代码如下:

start-yarn.sh

resourcemanager、nodemanager

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_Hadoop_09

        启动完成后,输入代码:(查看开启的进程)

jps

 

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_linux_10

 如图所示即为成功。

第六步,web端访问HDFS和YARN节点。

        在访问之前,需要开通HDFS的50070端口和YARN的8088端口,也可以直接关闭LInux虚拟机的防火墙进行访问。

        方法一:(开放端口)

                输入一下代码:

firewall-cmd --add-port=50070/tcp --permanent
firewall-cmd --add-port=8088/tcp --permanent

                重新载入添加的端口,以生效刚刚添加的端口,输入以下代码:

firewall-cmd --reload

                查看端口是否开启成功,代码如下:

firewall-cmd --query-port=50070/tcp
firewall-cmd --query-port=8088/tcp

                开启浏览器,输入虚拟机的ip加端口进行访问。如图所示:(例:192.168.***.***:50070)

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_hadoop_11

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_Hadoop_12

         方法二:(关闭防火墙)

                关闭防火墙,输入以下代码:

systemctl stop firewalld

                浏览器访问,输入虚拟机的IP加端口进行访问。如图所示:(例:192.168.***.***:50070)

 

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_虚拟机伪分布式怎么创建数据仓库_13

虚拟机伪分布式怎么创建数据仓库 虚拟机hadoop伪分布式搭建_hadoop_14