Hadoop分布式集群搭建Hadoop2.6+Ubuntu 16.04

前段时间搭建Hadoop分布式集群,踩了不少坑,网上很多资料都写得不够详细,对于新手来说搭建起来会遇到很多问题。以下是自己根据搭建Hadoop分布式集群的经验希望给新手一些帮助。当然,建议先把HDFS和MapReduce理论原理看懂了再来搭建,会流畅很多。

准备阶段:

系统:Ubuntu Linux16.04  64位 (下载地址:https://www.ubuntu.com/download/desktop)

安装好Ubuntu之后,如果之前没有安装过jdk,需要先安装jdk。这里安装jdk的版本是:jdk1.8.0_144  (下载地址:Oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html) 这里就不展开安装说明,安装jdk很简单,可以参考以下内容。

Ubuntu 16.04安装JDK并配置环境变量 

Ubuntu 14.04安装JDK1.8.0_25与配置环境变量   

在Linux虚拟机下配置JDK的环境变量 

Ubuntu 安装 JDK 7 / JDK8 的两种方式 

Ubuntu上安装JDK 1.8 

Linux下安装配置JDK 

Ubuntu 16.04 LTS 配置JDK1.8出现问题及解决笔记

建议Ubuntu下载64位,因为Hadoop2.5.0之后的版本里面的库都是64位的,32位的Linux系统里面每次运行Hadoop都会报警告。

现在准备好了一台安装了java的Ubuntu虚拟机,别忘了搭建Hadoop集群至少需要三台Ubuntu虚拟机。

最简单的办法就是 使用VMware自带的克隆的办法,克隆出三台一模一样的虚拟机。

具体操作参见地址 (

准备好了三台Ubuntu Linux虚拟机,接下来就开始搭建集群。

先总的看一下所有的步骤:

一、配置hosts文件

二、建立hadoop运行帐号

三、配置ssh免密码连入

四、下载并解压hadoop安装包

五、配置 /etc/hadoop目录下的几个文件及 /etc/profile

六、格式化namenode并启动集群 

接下来根据步骤开始搭建:

一、配置hosts文件

以上准备了三台虚拟机,但是虚拟机的主机名也是一样的,需要现对虚拟机主机名进行修改,来进行区分一个主节点和两个从节点。

修改主机名命令:

显示的master就是主机名,我这里已经修改好了,可以把三台虚拟机分别命名 主节点:master 从节点1:node1 从节点2:node2

修改好了,保存即可。

接下来,分别查看三台虚拟机的ip地址,命令如下:

inet addr就是这台虚拟机的ip地址。

接下来打开hosts文件 进行修改:

将三台虚拟机的ip地址和主机名加在里面,其它的不用动它。

三台虚拟机都要修改hosts文件。简单的说配置hosts后三台虚拟机就可以进行通信了,可以互相ping一下试试,是可以ping通的。

二、建立hadoop运行帐号

解释一下这一步骤,就是建立一个group组,然后在三台虚拟机上重新建立新的用户,将这三个用户都加入到这个group中。

以下操作三台虚拟机都要进行相同操作

首先添加一个叫hadoop用户组进来

添加名叫hduser的用户,并添加到hadoop组中。

接着输入以下指令然后输入两次密码

然后赋予hduser用户admin权限

接下来的操作 切换到刚刚新建的用户进行

三、配置ssh免密码连入

开始配置ssh之前,先确保三台机器都装了ssh。

输入以下命令查看安装的ssh。

如果缺少了opensh-server,需要进行安装。

安装完毕之后开始配置ssh

接下来的这第三个步骤的操作请注意是在哪台主机上进行,不是在三台上同时进行

(1)下面的操作在master机上操作

首先在master机上输入以下命令,生成master机的一对公钥和私钥:

以下命令进入认证目录可以看到,  id_rsa 和 id_rsa.pub这两个文件,就是我们刚刚生成的公钥和私钥。

然后,下面的命令将公钥加入到已认证的key中:

再次进入生成目录,可以看到多出authorized_keys这个文件:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/8df7334899264a9b4db21ba28cdc5dcb.html