- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在研究 AWS EMR。
我想尽快得到死亡任务节点的信息。但根据 hadoop 中的默认设置,心跳每 10 分钟共享一次。
这是 mapred-default 中的默认键值对 - mapreduce.jobtracker.expire.trackers.interval : 600000ms
我尝试使用 - this link 将默认值修改为 6000 毫秒
在那之后,每当我从 EMR 集群终止任何 ec2 机器时,我都无法看到状态变化那么快。(在 6 秒内)
资源管理器 REST API - http://MASTER_DNS_NAME:8088/ws/v1/cluster/nodes
问题-
更新
我尝试了很多次,但它表现出模棱两可的行为。有时进入DECOMMISSIONING/DECOMMISIONED状态,有时10分钟后直接进入LOST状态。
我需要一个快速的状态变化,这样我就可以触发一些事件。
这是我的示例代码-
List<Configuration> configurations = new ArrayList<Configuration>();
Configuration mapredSiteConfiguration = new Configuration();
mapredSiteConfiguration.setClassification("mapred-site");
Map<String, String> mapredSiteConfigurationMapper = new HashMap<String, String>();
mapredSiteConfigurationMapper.put("mapreduce.jobtracker.expire.trackers.interval", "7000");
mapredSiteConfiguration.setProperties(mapredSiteConfigurationMapper);
Configuration hdfsSiteConfiguration = new Configuration();
hdfsSiteConfiguration.setClassification("hdfs-site");
Map<String, String> hdfsSiteConfigurationMapper = new HashMap<String, String>();
hdfsSiteConfigurationMapper.put("dfs.namenode.decommission.interval", "10");
hdfsSiteConfiguration.setProperties(hdfsSiteConfigurationMapper);
Configuration yarnSiteConfiguration = new Configuration();
yarnSiteConfiguration.setClassification("yarn-site");
Map<String, String> yarnSiteConfigurationMapper = new HashMap<String, String>();
yarnSiteConfigurationMapper.put("yarn.resourcemanager.nodemanagers.heartbeat-interval-ms", "5000");
yarnSiteConfiguration.setProperties(yarnSiteConfigurationMapper);
configurations.add(mapredSiteConfiguration);
configurations.add(hdfsSiteConfiguration);
configurations.add(yarnSiteConfiguration);
这是我更改为 AWS EMR(内部 Hadoop)的设置,以减少状态从 RUNNING 更改为其他状态(DECOMMISSIONING/DECOMMISIONED/LOST)之间的时间。
最佳答案
您可以使用“hdfs getconf”。请引用此贴Get a yarn configuration from commandline
这些链接提供了有关节点管理器健康检查和您必须检查的属性的信息:
https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/ClusterSetup.html
https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/NodeManager.html
请引用以下链接中的“yarn.resourcemanager.nodemanagers.heartbeat-interval-ms”:
https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-common/yarn-default.xml
您的查询已在此链接中得到解答:
请参阅“附件”和“子任务”区域。 简而言之,如果当前正在运行的应用程序主容器和任务容器被正确关闭(和/或在不同的其他节点中重新启动),那么节点管理器被认为是 DECOMMISSIONED(优雅地),否则它就会丢失。
更新:
“dfs.namenode.decommission.interval”用于HDFS数据节点退役,如果您只关心节点管理器,则无所谓。在特殊情况下,数据节点不需要是计算节点。
尝试 yarn.nm.liveness-monitor.expiry-interval-ms(默认 600000 - 这就是为什么你报告状态在 10 分钟内变为 LOST,根据需要将其设置为较小的值)而不是 mapreduce。 jobtracker.expire.trackers.interval.
您将“yarn.resourcemanager.nodemanagers.heartbeat-interval-ms”设置为 5000,这意味着心跳每 5 秒发送一次资源管理器,而默认值为 1000。请将其设置为较小的值需要。
关于java - 如何减少Hadoop中从节点的心跳时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38946415/
我正在使用血氧仪开展项目。我想对其进行平滑处理,以便可以使用它来计算心跳。我正在从麦克风收集原始数据,我将它们放在新数组中,比方说,sData[]。 信号真的很疯狂,如预期的那样在整个图上跳跃,所以我
如果您错过了 - TLS Heartbeat Extension 实现中的 OpenSSL 漏洞一直在流传。欲了解更多信息,请参阅http://heartbleed.com/ . 可能的缓解步骤之一是
随着关于 heartbleed 错误的讨论不断,很难找到关于 OpenSSL 的被利用的心跳扩展究竟用于什么的信息。 此外,是否可以针对 Apache w/mod_ssl 禁用它,而无需按照建议@ h
我是 Linux 新手,正在学习 LINUX heartbeat。我正在尝试做“yum install heartbeat”,如下所示…… # cat /etc/issueRed Hat Enterp
我在我们的服务器中使用带有kibana的heartbeat,metricbeat和elasticsearch 7.5,以检查服务器状态并检查应用程序的可用性。如果应用程序或服务器已关闭或没有响应,我想
我们有一个用 Java 编写的 RMI 客户端应用程序,它需要定期向服务器应用程序发送“保持 Activity ”消息。我们将其实现为一个单独的心跳线程,它向服务器发送保持 Activity 消息,然
我不确定如何最好地让我们的服务器知道我们的 iPhone 应用程序当前正在运行(即使在后台)。有几种不同的选择,但对于 Apple 批准程序允许的以及最可靠的选项存在一些担忧。如果考虑到 Apple
我似乎找不到关于如何在 Spring 中使用 websockets 向客户端发送心跳的好资源! 我有一个使用此配置运行的基本服务器: @Configuration @EnableWebSocketMe
我正在实现一个用于分布式 cronjob 执行的系统(所谓的 cron 计算集群)。当行动时间到来时,Cronjobs 应该排队进入消息队列(RabbitMQ)。在另一侧(集群的节点/ worker
使用 python kafka api 从主题中读取只有少量消息的消息。 Kafka 不断重复播放队列中的消息。 它从我的主题接收到一条消息(返回每条消息内容),然后抛出.更多日志: kafka.co
我目前有一个异步 TCP/IP 套接字 C# WinForms 应用程序,它是“服务器”应用程序。该应用程序持有客户端的持久套接字。我想实现一个心跳包来检测半开连接。 最初我只想创建一个循环并每隔 x
socket.io documentation提到可以像这样禁用心跳: io.disable('heartbeats'); 不幸的是,虽然这似乎阻止了心跳的发送,但客户端在不发送心跳时仍会断开连接。
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 10 年前。 Improve thi
我是一名优秀的程序员,十分优秀!