关于防火墙,hadoop本身配置都确定没任何问题,集群启动不报错,但打开50070页面,始终live nodes数目不对,于是我尝试/etc/hosts文件配置是否存在逻辑的错误:
127.0.0.1       localhost
192.168.1.233   localhost
# Hadoop 
192.168.1.233   ubuntu-233
192.168.1.234   ubuntu-234
192.168.1.235   ubuntu-235
192.168.1.236   ubuntu-236
上面是Master节点的hosts文件配置,233为master,234、235、236为slave节点。
三个slave节点的hosts文件和上面一样,但都没有【192.168.1.23X  localhost】那条记录。

当我在master节点hosts文件中删除【192.168.1.233 localhost】这条记录时,集群启动一切正常,并且能正确识别三个节点,正常上传下载文件。

仔细分析上面的hosts文件,有个逻辑的问题:
【192.168.1.233 localhost】
【192.168.1.233 ubuntu-233】
这两条记录同时配置在master节点的hosts文件中存在逻辑的冲突,
为了做实验,我交换了上面两条记录,于是此时master节点的hosts文件为:
127.0.0.1       localhost
#192.168.1.233   localhost
# Hadoop 
192.168.1.233   ubuntu-233
192.168.1.234   ubuntu-234
192.168.1.235   ubuntu-235
192.168.1.236   ubuntu-236
192.168.1.233   localhost
发现启动hadoop集群一切正常。
问题确定是这两条记录引起的:
【192.168.1.233 localhost】
【192.168.1.233 ubuntu-233】
一个ip对应两个名字,Linux系统应该只采纳排序靠头的记录,当之后有同ip的记录时,估计会抛弃。
于是hadoop集群的master节点只知道:【192.168.1.233 localhost】
我这推测,当hadoop的内部机制会把【192.168.1.233 localhost】的映射发送到各个slave节点,最后造成一个回环,每个节点获得namenode的信息都是localhost名字,而具体到各个机器,localhost
反向映射到自己,最后造成集群中一个死路回环。

具体hadoop的内部机制是否如上推测,有待于进一步跟源码。但这或许是一个hadoop的小bug。

最后建议:/etc/hosts文件,一个ip只对应一个有效的机器名字,避免逻辑冗余与回环

来自:http://blog.csdn.net/u013281331/article/details/17963363

Hadoop-2.2.0集群部署时live nodes数目不对的问题的更多相关文章

  1. hadoop 2.2.0 集群部署 坑

    注意fs.defaultFS为2..0新的变量,代替旧的:fs.default.name hadoop 2.2.0 集群启动命令:bin/hdfs namenode -formatsbin/start ...

  2. Hadoop 2.6.0 集群部署

    Hadoop的集群部署和单节点部署类似,配置文件不同,另外需要修改网络方面的配置 首先,准备3台虚拟机,系统为CentOS 6.6,其中一台为namenode 剩余两台为 datanode: 修改主机 ...

  3. redis3.0集群部署和测试

    redis3.0集群部署和测试 环境介绍 两台Centos7的虚拟机模拟6个节点,A台3个master节点,B台3个slave节点A地址:172.16.81.140B地址:172.16.81.141r ...

  4. Nginx+Tomcat+Memcached 实现集群部署时Session共享

    Nginx+Tomcat+Memcached 实现集群部署时Session共享 一.简介 我们系统经常要保存用户登录信息,有Cookie和Session机制,Cookie客户端保存用户信息,Sessi ...

  5. Ubuntu 12.04下Hadoop 2.2.0 集群搭建(原创)

    现在大家可以跟我一起来实现Ubuntu 12.04下Hadoop 2.2.0 集群搭建,在这里我使用了两台服务器,一台作为master即namenode主机,另一台作为slave即datanode主机 ...

  6. hadoop 2.2.0集群安装详细步骤(简单配置,无HA)

    安装环境操作系统:CentOS 6.5 i586(32位)java环境:JDK 1.7.0.51hadoop版本:社区版本2.2.0,hadoop-2.2.0.tar.gz 安装准备设置集群的host ...

  7. hadoop 2.2.0集群安装

    相关阅读: hbase 0.98.1集群安装 本文将基于hadoop 2.2.0解说其在linux集群上的安装方法,并对一些重要的设置项进行解释,本文原文链接:http://blog.csdn.net ...

  8. Redis 3.0.0 集群部署

    简述: 1.0.1:redis cluster的现状 目前redis支持的cluster特性 1):节点自动发现 2):slave->master 选举,集群容错 3):Hot reshardi ...

  9. weblogic 集群部署时上传jsp不更新问题

    在进行集群部署的时候,进行“源可访问性”设置的时候,要注意选择“我要使部署能够通过下列位置进行访问”: 前提是必须有共享存储:

随机推荐

  1. 利用Date类计算生活时间

    今天学习到了Date类还有其他一些常用类! 这里就简单使用Date及其一些方法计算生活时间. import java.text.ParseException; import java.text.Sim ...

  2. 飘逸的python - 实现glob style pattern

    一说起通配符,大家非常快就会想起*和? 号,有了通配符,使得表达能力大大增强,非常多linux命令都支持这个东西,事实上就是glob style pattern. 就连redis的keys命令都支持g ...

  3. CodeForces 653 A. Bear and Three Balls——(IndiaHacks 2016 - Online Edition (Div. 1 + Div. 2))

    传送门 A. Bear and Three Balls time limit per test 2 seconds memory limit per test 256 megabytes input ...

  4. OC基础回想(十一)类别

         在编写面向对象的程序时,常常要为现有的类加入一些新的行为,通常採用创建子类的方法. 只是有时候子类不方便.比方,想为NSString类加入一个新的行为,可是NSString实际上仅仅是一个类 ...

  5. React Native布局实践:开发京东client首页(三)——轮播图的实现

    上篇文章中,我们一起构建了京东client的TabBar.在本文中.将继续向大家介绍京东client首页轮播图及其下发功能button的开发方法,如今就让我们開始吧! 1.相关控件调研 眼下在Gith ...

  6. Flume 读取JMS 消息队列消息,并将消息写入HDFS

    利用Apache Flume 读取JMS 消息队列消息.并将消息写入HDFS,flume agent配置例如以下: flume-agent.conf #name the  components on ...

  7. python nltk 入门demo

    sudo pip install -U pyyaml nltk import nltk nltk.download() 搞不定,必须代理: Installing via a proxy web ser ...

  8. 【NOI 2015】 荷马史诗

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=4198 [算法] 不难发现,题目中所说的编码方式就是哈夫曼编码 注意合并时优先合并深度 ...

  9. E20170828-mk

    utils  工具类; 效用; 实用工具; 实用菜单; Documentation  n. 记录; 证明某事属实的证据; 参考资料; 文献的编集,文件分类; receive   vt. 收到; 接待; ...

  10. [Apple开发者帐户帮助]三、创建证书(2)创建开发者ID证书

    您可以使用开发人员帐户或Xcode 创建最多五个开发者ID应用程序证书和最多五个开发人员ID安装程序证书.(要在Xcode中创建开发者ID证书,请转到Xcode帮助中的管理签名证书.) 所需角色:帐户 ...