MAPREDUCE服务 MRS-NameNode节点长时间满负载导致客户端无响应:回答

时间:2024-11-28 01:44:22

回答

目前出现上述问题时使用的是默认配置,如表1所示,HDFS客户端到NameNode的RPC连接存在keep alive机制,保持连接不会超时,尽力等待服务器的响应,因此导致已经连接的HDFS客户端的操作会长时间无响应。

对于已经长时间无响应的HDFS客户端,可以进行如下操作:

  • 等待NameNode响应,一旦NameNode所在节点的CPU利用率回落,NameNode可以重新获得CPU资源时,HDFS客户端即可得到响应。
  • 如果无法等待更长时间,需要重启HDFS客户端所在的应用程序进程,使得HDFS客户端重新连接空闲的NameNode。

解决措施:

为了避免该问题出现,可以在“客户端安装路径/HDFS/hadoop/etc/hadoop/core-site.xml”中做如下配置。

表1 参数说明

参数

描述

默认值

ipc.client.ping

当配置为true时,客户端会尽力等待服务端响应,定期发送ping消息,使得连接不会因为tcp timeout而断开。

当配置为false时,客户端会使用配置项“ipc.ping.interval”对应的值,作为timeout时间,在该时间内没有得到响应,即会超时。

在上述问题场景下,建议配置为false。

true

ipc.ping.interval

“ipc.client.ping”配置为true时,表示发送ping消息的周期。

“ipc.client.ping”设置为false时,表示连接的超时时间。

在上述问题场景下,建议配置一个较大的超时时间,避免服务繁忙时的超时,建议配置为900000,单位为ms。

60000

support.huaweicloud.com/cmpntguide-lts-mrs/mrs_01_1702.html