没有通往主机的路线意思就是你访问的目标地址路由不可达,这个no route to host的报错是由于收到icmp路由不可达报文而导致的。有网友遇到过同样的问题,如果是linux,是iptables阻挡造成的,你可以用service iptables stop关闭iptables试试,或者重新配置local的DNS。在hadoop集群中跑程序 出现NO Route to Host的错误,原因其实很简单,就是因为系统防火墙没有关。 出现No route to host 的时候,有如下几种可能:
1、对方的域名确实不通
2、本机自己开了防火墙
3、本机的etc/hosts 里面没有配置本机的机器名和ip(可能性最大)
其中第三点是最猫腻的,在不配置的时候是间断性的。
下面先讲讲hadoop的工作原理 :
Hadoop起源于Google的集群系统, Google的数据中心使用廉价Linux PC机组成集群,在上面运行各种应用。即使是分布式开发的新手也可以迅速使用Google的基础设施。
其核心组件有3个:
第一个就是,GFS(Google File System),一个分布式文件系统,隐藏下层负载均衡,冗余复制等细节,对上层程序提供一个统一的文件系统API接口;
第二个是MapReduce,Google发现大多数分布式运算可以抽象为MapReduce操作。Map是把输入Input分解成中间的Key/Value 对,Reduce把Key/Value合成最终输出Output。这两个函数由程序员提供给系统,下层设施把Map和Reduce操作分布在集群上运行, 并把结果存储在GFS上;
第三个,BigTable,一个大型的分布式数据库,这个数据库不是关系式的数据库,而是一个巨大的表格,用来存储结构化的数据。