centos与ubuntu共两台物理机安装hadoop2.7.2 分布式搭建成功

前几天把伪分布式系统搭建成功了

昨天晚上花了不到一个小时就把分布式系统给搭建好了

由于我的电脑只有两台

一台是centos7,一台是ubuntu16

所以我就用这两台电脑来搭建

所有有网友说只有两台电脑可否搭建分布式系统,那么应该是可以的

下面说说配置


首先我想请你先看这里

CentOS7安装hadoop2.7.2 实现伪分布式 测试成功(亲测教程)
因为我就是从伪分布式过来的,他们的配置基本是一样的

我们假设您已经配置好了一台伪分布式系统

并且hadoop的目录在这里

/mysoft/hadoop/

然后,配置第二台电脑的各种环境

我的第二台电脑是ubuntu

环境包括java环境、ssh免密码环境,以及IP环境和关闭防火墙


对于ubuntu关闭防火墙可以运行:ufw disable

或者可以删除防火墙: apt-get remove iptables


这里我就说以下IP环境,ip的 映射我设置为了 MyUbuntu(这是一个子节点)

而我们的第一台电脑的名字是MyCentOS(这是一个主节点)

在主机和子节点的的/etc/hosts里加入全部的映射关系

如:

192.168.0.101    MyCentOS

192.168.0.104    MyUbuntu

否则,当您用网络名ping时,ping另外一台主机就ping不通

这些配置都和这个连接里的方法是一致的

CentOS7安装hadoop2.7.2 实现伪分布式 测试成功(亲测教程)

然后把第一台电脑的hadoop复制到第二台电脑的相同目录

也就是说在ubuntu的文件系统里,我们也应该创建一个mysoft目录,然后将第一台电脑的hadoop的整个目录拷贝进来

目录一定要相同!!!

就是说目前,两台电脑的配置(系统环境)是完全一样的。

现在我们开始配置两台电脑的无密码访问

我们分别将两台电脑的公匙相互写入

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

相互写入,就是把第一台电脑的公匙拷贝到第二台,然后把这个公匙写入到第二台

把第二台电脑的公匙拷贝到第一台,然后把这个公匙写入到第一台

这样他们就可以互相无密码登录了

我们可以在第一台电脑上运行代码

ssh MyUbuntu  没有提示输入密码就表示成功

此外,我们还需要至少一个文件slaves

我们需要在所有的主机(主节点和子节点服务器)上配置上子节点的ip或网络名

比如我这里就配置的是

MyUbuntu

可能在hadoop2.X后就没有master文件了吧,我在/mysoft/hadoop/etc/hadoop 并没有找到这个文件

另外需要修改的文件是yarn-env.sh

将其中的

# export JAVA_HOME=/home/y/libexec/jdk1.6.0/

改为

export JAVA_HOME=真实的java地址  我这里是/mysoft/java/jdk1.8


自此,全部完成

然后我们就可以开始测试了

先格式化:hdfs namenode -format

然后运行:start-dfs.sh和start-yarn.sh

然后我们就可以看到在两台电脑上都创建好了tmp文件的内容,并且

主机上的tmp里是namenode  而子节点主机上的tmp里是的datanode

我们在centos里输入命令 jps 查看 

发现有namenode服务和其他服务,没有datanode服务

而我们在ubuntu里输入命令 jps 查看

发现是有datanode服务和其他服务,没有namenode服务




爆款云服务器s6 2核4G 低至0.46/天,具体规则查看活动详情Blog Img