调整 yarn.nodemanager.vmem-pmem-ratio 参数的步骤如下:
1. 打开 YARN 配置文件
找到 yarn-site.xml 文件,该文件通常位于 Hadoop 配置目录中,例如 /etc/hadoop/conf 或 /opt/module/hadoop-3.1.3/etc/hadoop。
2. 找到并修改 yarn.nodemanager.vmem-pmem-ratio 参数
在 yarn-site.xml 文件中,找到 <name>yarn.nodemanager.vmem-pmem-ratio</name> 配置项。如果该配置项不存在,可以手动添加。
默认值:2.1,表示每使用 1MB 的物理内存,最多可以使用 2.1MB 的虚拟内存。
修改建议:根据集群的实际情况调整该值。如果集群的虚拟内存压力较大,可以适当增加该值(例如设置为 2.5 或更高),但需确保不会导致系统不稳定。
修改后的配置示例:
xml
<property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>2.5</value>
</property>
3. 重启 YARN 服务
修改配置文件后,需要重启 YARN 服务以使配置生效。
在集群环境中,可以通过以下命令重启 YARN:
bash
yarn-daemon.sh stop resourcemanager
yarn-daemon.sh start resourcemanager
或者使用集群管理工具(如 Ambari 或 Cloudera Manager)进行重启操作。
注意事项
监控内存使用:调整参数后,建议通过 YARN 的资源管理器界面(如 http://<ResourceManager-IP>:8088)监控作业的内存使用情况,确保调整后的配置能够满足需求。
节点差异化配置:如果集群中的节点硬件配置差异较大,可以根据不同节点的实际情况分别调整 yarn-site.xml 文件。
禁用虚拟内存检查:如果虚拟内存限制导致作业频繁失败,也可以考虑将 yarn.nodemanager.vmem-check-enabled 设置为 false,但不推荐此操作,因为它会关闭虚拟内存的监控。
通过以上步骤,您可以根据集群的实际情况调整 yarn.nodemanager.vmem-pmem-ratio 参数,以优化作业的内存使用。