在两个不同的网络中使用hadoopnamenode和datanode是好的吗?

kgsdhlau  于 2021-05-27  发布在  Hadoop
关注(0)|答案(2)|浏览(327)

我们正在使用cloudera发行版安装支持ha的10节点hadoop集群。
namenode和datanode位于两个不同的子网上,通过硬件防火墙进行保护,这样好吗?

avwztpqn

avwztpqn1#

只要网络请求在活动namenode(假设您设置了ha)和每个datanode的两个方向上工作,那么应该可以正常工作,尽管额外的网络跃点会增加一些延迟

bjp0bcyl

bjp0bcyl2#

在大数据网络的情况下,为了完成预期的操作或得到预期的结果(比如客户端读取的数据超过一个数据块),单个客户端的交互会产生大量的节点到节点的交互。这种大数据网络将面临性能影响,因为额外的跳数会增加客户端、名称节点和作业跟踪器以及数据节点和任务跟踪器之间的延迟,当数据在机架式交换机之间传输时。
hadoop基本上提供了跨计算机集群的大型数据集的分布式处理,这直接意味着网络在部署体系结构中起着关键作用,也与其性能和可伸缩性直接相关。hdfs和mapreduce具有较高的东西交通模式。
在hdfs中,如果为ha启用了机架感知配置,则复制是基于复制因子在网络上发生的连续活动。hadoop中涉及从mapper到reducer的数据传输的shuffle阶段是最消耗网络带宽的活动之一,因为所有涉及的服务器都应同时向彼此传输数据,这直接突出了网络拓扑。
另外,当客户端请求远程服务执行某个函数时,诸如hdfs、hbase、hive等平台服务也使用rpc机制。每个rpc都需要尽快将响应发送回客户端,如果响应到达客户端有延迟,那么执行命令可能需要更长的时间。
为了获得hadoop的最佳性能,网络必须具有高带宽、低延迟和跨不同节点的可靠节点连接,这归结为具有尽可能少的跳数作为标准之一。
在典型的网络部署中,防火墙放置在集群节点之间会影响集群性能,因为它们必须检查网络中的数据包。因此,最好避免集群中节点之间的防火墙。

相关问题