如何在没有DNS的情况下运行HDFS集群

 Happy的紫璐 发布于 2023-01-18 08:21

我正在构建一个本地HDFS开发环境(实际上是hadoop + mesos + zk + kafka),以简化Spark作业的开发并促进本地集成测试.所有其他组件都运行正常,但我遇到了HDFS问题.当数据节点尝试连接到名称节点时,我得到一个DisallowedDataNodeException:

org.apache.hadoop.hdfs.server.protocol.DisallowedDatanodeException: Datanode denied communication with namenode

与同一问题相关的大多数问题归结为名称节点上的数据节点的名称解析,无论是通过etc/hosts文件静态还是使用dns.静态解析不是docker的选项,因为我不知道创建名称节点容器时的数据节点.我想避免创建和维护其他DNS服务.理想情况下,我想使用--linkdocker 的功能连接所有内容.

有没有办法以这样的方式配置HDFS,它只使用IP地址工作?

我发现这个属性并设置为false,但它没有做到这一点:

dfs.namenode.datanode.registration.ip-hostname-check (默认值:true)

有没有办法让多节点本地HDFS集群只使用IP地址而不使用DNS?

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有