Bigdata-hadoop新增节点集群启动请求异常:Last contact:200

Posted by Yancy on 2017-05-08

前言闲谈:

之前做CDN云计算公司来到美年大健康现在在一家医疗大数据公司负责运维部门大大小小的活,既然是医疗大数据当然离不开大数据存储的维护,现在也同时维护大数据运维相关工作 hadoop,spark,sqoop,hue,hive,Hbase,zookeeper等等 测试开发生产使用起来,从集群环境维护 提升数据稳定性 高可用维护。

前面说了一堆自己闲聊,真正解决这次问题是hadoop新增节点需要注意哪几点:

新增节点如何新增我会在另外一篇详细说的这里我讲一些需要注意掉的问题。

需要修改几个配置:

(1)hadoop data 数据目录 VERSION 里面的搭建集群时,直接克隆会出现这个问题。解决方法同上两种,最好修改${/hadoop/tmp/dir}/dfs/data/current/VERSION中的storageID,使其不同。第一种会导致hdfs数据丢失。

解决方法:

1
2
(1) datanode启动是会加载DataStorage,如果不存在则会format
(2)初次启动DataStorage的storageID是空的,所以会生成一个storageID

参考我解决的:这里我拷贝过来 直接删除。等集群namenode启动 会自动生成。

这个解决以后 新增的机器必须关闭防火墙。因为这个原因会导致我 hadoop新增节点集群启动请求异常:Last contact:200

(2) 集群重启时防火墙自动开启导致:

这里贴张图片给大家看看:

问题:

1
2
3
4
5
6
2017-07-04 18:43:30,475 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: /192.168.18.218:9000. Already tried 8 time(s).
2017-07-04 18:43:31,475 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: /192.168.18.218:9000. Already tried 9 time(s).
2017-07-04 18:43:31,479 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Call to /192.168.18.218:9000 failed on local exception: java.net.NoRouteToHostException: 没有到主机的路由
at org.apache.hadoop.ipc.Client.wrapException(Client.java:775)
at org.apache.hadoop.ipc.Client.call(Client.java:743)
解决方法:在root权限下关闭防火墙:service iptables stop

最好配置成机器重启默认防火墙关闭:

1
2
[root@junlings ~]# chkconfig iptables off #开机不启动防火墙服务
[root@junlings ~]# chkconfig iptables on #开机启动防火墙服务

解决以后服务重新跑一遍已经搞定。