欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Hadoop学习(三)Hadoop环境搭建

程序员文章站 2022-03-22 20:24:29
...

想要在你的电脑中运行Hadoop有三种方式:Hadoop本地模式,Hadoop伪分布模式,Hadoop完全分布模式。下面是对这三种模式的介绍:

  1. 独立(本地)运行模式:无需任何守护进程,所有的程序都运行在同一个JVM上执行。在独立模式下调试MR程序非常高效方便。所以一般该模式主要是在学习或者开发阶段调试使用 。
  2. 伪分布式模式:  Hadoop守护进程运行在本地机器上,模拟一个小规模的集群,换句话说,可以配置一台机器的Hadoop集群,伪分布式是完全分布式的一个特例。
  3. 完全分布式模式:Hadoop守护进程运行在一个集群上。

注意:所谓分布式要启动守护进程,即:使用分布式hadoop时,要先启动一些准备程序进程,然后才能使用比如start-dfs.sh  start-yarn.sh。而本地模式不需要启动这些守护进程。

因为我只是为了学习和开发,这里就只介绍本地模式和伪分布式的配置方法

一.Hadoop本地模式

1.安装前的准备

1.配置安装linux虚拟环境

2.下载hadoop安装包

 

我下载的是2.7.7版本的,可以点击这个链接直接下载:http://mirrors.shu.edu.cn/apache/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz

3.下载java jdk

推荐java 7或java 8的版本,因为我之前下载HBase的时候就不兼容java 10,然后只能重新下载jdk8的

下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

选择linux 64位系统,压缩后缀是tar.gz

4.下载好之后解压

熟悉liunx的读者应该知道,解压命令:

tar -zxvf 要解压的文件名(tar.gz结尾)-C 解压后的路径
//如果不是超级用户还要在前面加一个sudo,否则会报错 permission denied

我一般解压后的文件放在/usr/local/中,读者可以自己选择

2.配置JAVA环境变量

我使用的是vim命令修改配置文件,所以要先安装vim编辑工具。代码如下:

sudo apt-get install vim-gtk

修改bashrc文件,添加环境变量

vim ~/.bashrc

在文件末尾加入如下内容:

export JAVA_HOME=java jdk 所在的路径
export JRE_HOME=${JAVA_HOME}/jre

export CLASS_PATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:${JRE_HOME)/bin:$PATH

有些文件是只读文件,用户无法修改,对于这些文件,可以用下面这个指令来保存修改

w !sudo tee %

再用soure命令,使其生效:

source ~/.bashrc

输入:java -version
能显示版本号,就表示JDK配置成功。

3.配置Hadoop环境

配置前,最好先切换到超级用户,修改一下hadoop文件夹的读写权限,如

sudo chmod -R 777 hadoop所在的地址

配置hadoop的环境变量:vim /etc/profile

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

source /etc/profile使其生效

3.测试

证配置是否成功,在/usr/local/hadoop文件夹下输入bin/Hadoop version 可以查看hadoop版本

二.伪分布式配置

1.配置core-site.xml和hdfs-site.xml文件

配置hadoop目录下的etc/hadoop/core-site.xml文件:vim /usr/local/hadoop/etc/hadoop/core-site.xml

添加如下内容:

Hadoop学习(三)Hadoop环境搭建

配置hdfs-site.xml文件,和core-sit.xml在同一文件夹下,添加如下内容

Hadoop学习(三)Hadoop环境搭建

2.安装SSH并设置免密

SSH (Secure Shell)为建立在应用层和传输层基础上的安全协议。专为远程登录会话和其他网络服务提供安全性的协议。Ssh在hadoop中用来实现节点的登入和节点间传输文件。

输入指令

sudo apt-get install ssh

安装rsync:一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。可以通过ssh方式来传输文件。

sudo apt-get install rsync

输入指令

ssh-****** -t dsa -P ” -f ~/.ssh/id_dsa

可以看到这个命令生成了一个id_dsa(私钥)文件,和一个id_dsa.pub(公钥)文件。

用cat命令追加公钥

输入指令:

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

完成后可以输入指令 ssh localhost进行验证

3.启动Hadoop

首先需要进入hadoop文件夹下,对hadoop文件系统进行格式化,格式化的指令为

bin/hdfs namenode -format 

输入如下代码:

sbin/start-dfs.sh


运行成功后再用jps查看进程,可以看到在进程中跑的namenode,datanode,secondarynamenode。

也可以在网页上查看,输入:localhost:50070
可以看到有一个节点活着。说明hdfs配置成功。
Hadoop学习(三)Hadoop环境搭建

 

以上内容就是配置完了hdfs

官网还提供了修改mapred-site.xml和yarn-site.xml文件来运行yarn。

4. 配置mapred-site.xml文件

编辑mapred-site.xml文件,和刚才那两个文件在同一个文件夹下
添加如下内容:
Hadoop学习(三)Hadoop环境搭建
测试中发现,配置了mapreduce.framework.name的值,运行程序报错。原因是ubuntu开启了防火墙,使得nodemanager处于安全模式。所以要先关闭ubuntu防火墙。命令如下:

sudo ufw disable

 

5. 配置yarn-site.xml文件

编辑yarn-site.xml文件,同样在一个文件夹下
添加如下内容:
Hadoop学习(三)Hadoop环境搭建

6.运行yarn资源管理器

可用jps查看
Hadoop学习(三)Hadoop环境搭建
可以在页面localhost:8088中看到资源管理器。
Hadoop学习(三)Hadoop环境搭建
到此yarn配置完成。

 

相关标签: hadoop