• flink部署yarn错误:Couldn't deploy Yarn session cluster


    Couldn't deploy Yarn session cluster

    错误信息

    flink on yarn启动yarn-session时, 出现yarn-session无法部署错误

    并且提示2.1G的虚拟内存使用了2.2GB内存.

    ...
    org.apache.flink.client.deployment.ClusterDeploymentException: `Couldn't deploy Yarn session cluster`
            at org.apache.flink.yarn.YarnClusterDescriptor.deploySessionCluster(YarnClusterDescriptor.java:381)
            at org.apache.flink.yarn.cli.FlinkYarnSessionCli.run(FlinkYarnSessionCli.java:548)
            at org.apache.flink.yarn.cli.FlinkYarnSessionCli.lambda$main$5(FlinkYarnSessionCli.java:785)
            at java.security.AccessController.doPrivileged(Native Method)
            at javax.security.auth.Subject.doAs(Subject.java:422)
            at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1657)
            at org.apache.flink.runtime.security.HadoopSecurityContext.runSecured(HadoopSecurityContext.java:41)
            at org.apache.flink.yarn.cli.FlinkYarnSessionCli.main(FlinkYarnSessionCli.java:785)
    Caused by: `org.apache.flink.yarn.YarnClusterDescriptor$YarnDeploymentException: The YARN application unexpectedly switched to state FAILED during deployment. `
    Diagnostics from YARN: Application application_1617573631507_0006 failed 1 times due to AM Container for appattempt_1617573631507_0006_000001 exited with  exitCode: -103
    For more detailed output, check application tracking page:http://node02:8088/cluster/app/application_1617573631507_0006Then, click on links to logs of each attempt.
    Diagnostics: Container [pid=72909,containerID=container_1617573631507_0006_01_000001] is running beyond virtual memory limits. `Current usage: 167.3 MB of 1 GB physical memory used; 2.2 GB of 2.1 GB virtual memory used. Killing container.`
    ...
    

    问题原因

    Yarn容器虚拟内存率不足, 因为是用的虚拟机, 资源相对不足, yarn的虚拟内存比较小.导致启动后yarn创建applicationMaster时内存不足

    解决方法

    1. 可以先尝试配置yarn, 不检测内存
    [ryxiong@node01 hadoop-2.7.2]$ vim etc/hadoop/yarn-site.xml 
    

    添加如下配置

    <!-- 关闭yarn内存检查 -->
    <property>
        <name>yarn.nodemanager.pmem-check-enabled</name>
        <value>false</value>
    </property>
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>
    
    1. 如果方式1, 还无法解决问题

    添加如下配置, 提高yarn容器虚拟内存率

    <!-- 提高内存虚拟化率 -->
    <property>
        <name>yarn.nodemanager.vmem-pmem-ratio</name>
        <value>3.0</value>
    </property>
    

    问题解决

    衣带渐宽终不悔,为伊消得人憔悴!
  • 相关阅读:
    在一个字符串中找到第一个只出现一次的字符
    查找最小的k个数
    动规:最大上升子序列
    平衡二叉树
    【笔记】php和mysql结合 搞了一个表出来
    设计模式心得(既设计模式篇终章):描述设计模式时的通用公式
    分享系列 之 linux IO原理与几种零拷贝机制的实现
    近期分享:BIO 与 NIO 的实质区别到底是什么?
    源码阅读笔记 之 ThreadLocal —— 不复杂,却有点绕的一个 per thread API
    小脑袋瓜充满了问号:为什么AMQP可以叫做 Advanced?JMS就要low一等吗?
  • 原文地址:https://www.cnblogs.com/ryxiong-blog/p/14638749.html
Copyright © 2020-2023  润新知