各位大佬好
rocksDB state 场景下 state 过大 被杀。 有啥好的解决办法? 为啥在 flink 1.10.1 中 taskmanager.memory.managed.size 限制不住 rocksDB 内存申请?改如何控制上线? java.lang.Exception: Container [pid=137231,containerID=container_e118_1611713951789_92045_01_000003] is running beyond physical memory limits. Current usage: 4.1 GB of 4 GB physical memory used; 8.3 GB of 8.4 GB virtual memory used. Killing container. Dump of the process-tree for container_e118_1611713951789_92045_01_000003 : |- PID PPID PGRPID SESSID CMD_NAME USER_MODE_TIME(MILLIS) SYSTEM_TIME( MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE |- 137259 137231 137231 137231 (java) 3935 488 8764928000 1086082 /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 -XX:MaxDirectMemorySize= 493921243 -XX:MaxMetaspaceSize=268435456 -XX:+HeapDumpOnOutOfMemoryError - Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= 134217728b -D taskmanager.memory.network.max=359703515b -D taskmanager.memory.network.min=359703515b -D taskmanager.memory.framework.heap.size=134217728b -D taskmanager.memory.managed.size=1073741824b -D taskmanager.cpu.cores=1.0 -D taskmanager.memory.task.heap.size=1895154309b -D taskmanager.memory.task.off-heap.size=0b --configDir . -Djobmanager.rpc.address=cnsz22pl377 -Dweb.port=0 -Dweb.tmpdir=/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc -Djobmanager.rpc.port=18918 -Drest.address=CNSZ22PL377 |- 137231 137229 137231 137231 (bash) 0 0 115855360 356 /bin/bash -c /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 -XX:MaxDirectMemorySize= 493921243 -XX:MaxMetaspaceSize=268435456 -XX:+HeapDumpOnOutOfMemoryError - Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= 134217728b -D taskmanager.memory.network.max=359703515b -D taskmanager.memory.network.min=359703515b -D taskmanager.memory.framework.heap.size=134217728b -D taskmanager.memory.managed.size=1073741824b -D taskmanager.cpu.cores=1.0 -D taskmanager.memory.task.heap.size=1895154309b -D taskmanager.memory.task.off-heap.size=0b --configDir . -Djobmanager .rpc.address='cnsz22pl377' -Dweb.port='0' -Dweb.tmpdir= '/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc' -Djobmanager.rpc.port= '18918' -Drest.address='CNSZ22PL377' 1> /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.out 2> /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.err *state.backend.rocksdb.memory.fixed-per-slot* 1024M *state.backend.rocksdb.memory.managed* true *taskmanager.memory.managed.size* 1024M |
Hi
可以先jvm-overhead相关配置,具体原理及参数请参考这篇文章,https://mp.weixin.qq.com/s?__biz=MzU3Mzg4OTMyNQ==&mid=2247490197&;idx=1&sn=b0893a9bf12fbcae76852a156302de95 ------------------ 原始邮件 ------------------ 发件人: "user-zh" <[hidden email]>; 发送时间: 2021年2月4日(星期四) 下午5:46 收件人: "user-zh"<[hidden email]>; 主题: fink on yarn per job container 被杀 各位大佬好 rocksDB state 场景下 state 过大 被杀。 有啥好的解决办法? 为啥在 flink 1.10.1 中 taskmanager.memory.managed.size 限制不住 rocksDB 内存申请?改如何控制上线? java.lang.Exception: Container [pid=137231,containerID=container_e118_1611713951789_92045_01_000003] is running beyond physical memory limits. Current usage: 4.1 GB of 4 GB physical memory used; 8.3 GB of 8.4 GB virtual memory used. Killing container. Dump of the process-tree for container_e118_1611713951789_92045_01_000003 : |- PID PPID PGRPID SESSID CMD_NAME USER_MODE_TIME(MILLIS) SYSTEM_TIME( MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE |- 137259 137231 137231 137231 (java) 3935 488 8764928000 1086082 /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 -XX:MaxDirectMemorySize= 493921243 -XX:MaxMetaspaceSize=268435456 -XX:+HeapDumpOnOutOfMemoryError - Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= 134217728b -D taskmanager.memory.network.max=359703515b -D taskmanager.memory.network.min=359703515b -D taskmanager.memory.framework.heap.size=134217728b -D taskmanager.memory.managed.size=1073741824b -D taskmanager.cpu.cores=1.0 -D taskmanager.memory.task.heap.size=1895154309b -D taskmanager.memory.task.off-heap.size=0b --configDir . -Djobmanager.rpc.address=cnsz22pl377 -Dweb.port=0 -Dweb.tmpdir=/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc -Djobmanager.rpc.port=18918 -Drest.address=CNSZ22PL377 |- 137231 137229 137231 137231 (bash) 0 0 115855360 356 /bin/bash -c /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 -XX:MaxDirectMemorySize= 493921243 -XX:MaxMetaspaceSize=268435456 -XX:+HeapDumpOnOutOfMemoryError - Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= 134217728b -D taskmanager.memory.network.max=359703515b -D taskmanager.memory.network.min=359703515b -D taskmanager.memory.framework.heap.size=134217728b -D taskmanager.memory.managed.size=1073741824b -D taskmanager.cpu.cores=1.0 -D taskmanager.memory.task.heap.size=1895154309b -D taskmanager.memory.task.off-heap.size=0b --configDir . -Djobmanager .rpc.address='cnsz22pl377' -Dweb.port='0' -Dweb.tmpdir= '/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc' -Djobmanager.rpc.port= '18918' -Drest.address='CNSZ22PL377' 1> /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.out 2> /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.err *state.backend.rocksdb.memory.fixed-per-slot* 1024M *state.backend.rocksdb.memory.managed* true *taskmanager.memory.managed.size* 1024M |
谢谢 回答.
是指的这个参数 taskmanager.memory.jvm-overhead 调整吗(微信连接有点问题)? 我看邮件列表很多大佬的回答基本上都是要调大堆外内存。 难道 rocksdb 就申请内存的时候就控制不住上限吗?我的state 是会一直增长,但是我希望rocksDB 内存能在我设置的范围内,不至于被 yarn kill . 这块要能实现吗? zhiyezou <[hidden email]> 于2021年2月5日周五 下午1:25写道: > Hi > 可以先jvm-overhead相关配置,具体原理及参数请参考这篇文章, > https://mp.weixin.qq.com/s?__biz=MzU3Mzg4OTMyNQ==&mid=2247490197&;idx=1&sn=b0893a9bf12fbcae76852a156302de95 > > > > > ------------------ 原始邮件 ------------------ > 发件人: > "user-zh" > < > [hidden email]>; > 发送时间: 2021年2月4日(星期四) 下午5:46 > 收件人: "user-zh"<[hidden email]>; > > 主题: fink on yarn per job container 被杀 > > > > 各位大佬好 > rocksDB state 场景下 state 过大 被杀。 有啥好的解决办法? 为啥在 flink 1.10.1 中 > taskmanager.memory.managed.size 限制不住 rocksDB 内存申请?改如何控制上线? > java.lang.Exception: Container > [pid=137231,containerID=container_e118_1611713951789_92045_01_000003] > is running beyond physical memory limits. Current usage: 4.1 GB of 4 GB > physical memory used; 8.3 GB of 8.4 GB virtual memory used. Killing > container. > Dump of the process-tree for container_e118_1611713951789_92045_01_000003 : > |- PID PPID PGRPID SESSID CMD_NAME > USER_MODE_TIME(MILLIS) SYSTEM_TIME( > MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE > |- 137259 137231 137231 137231 (java) 3935 488 > 8764928000 1086082 > /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 -XX:MaxDirectMemorySize= > 493921243 -XX:MaxMetaspaceSize=268435456 -XX:+HeapDumpOnOutOfMemoryError - > > Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log > -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. > YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= > 134217728b -D taskmanager.memory.network.max=359703515b -D > taskmanager.memory.network.min=359703515b -D > taskmanager.memory.framework.heap.size=134217728b -D > taskmanager.memory.managed.size=1073741824b -D taskmanager.cpu.cores=1.0 -D > taskmanager.memory.task.heap.size=1895154309b -D > taskmanager.memory.task.off-heap.size=0b --configDir . > -Djobmanager.rpc.address=cnsz22pl377 > -Dweb.port=0 > -Dweb.tmpdir=/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc > -Djobmanager.rpc.port=18918 -Drest.address=CNSZ22PL377 > |- 137231 137229 137231 137231 (bash) 0 0 115855360 356 > /bin/bash -c > /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 -XX:MaxDirectMemorySize= > 493921243 -XX:MaxMetaspaceSize=268435456 -XX:+HeapDumpOnOutOfMemoryError - > > Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log > -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. > YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= > 134217728b -D taskmanager.memory.network.max=359703515b -D > taskmanager.memory.network.min=359703515b -D > taskmanager.memory.framework.heap.size=134217728b -D > taskmanager.memory.managed.size=1073741824b -D taskmanager.cpu.cores=1.0 -D > taskmanager.memory.task.heap.size=1895154309b -D > taskmanager.memory.task.off-heap.size=0b --configDir . -Djobmanager > .rpc.address='cnsz22pl377' -Dweb.port='0' -Dweb.tmpdir= > '/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc' > -Djobmanager.rpc.port= > '18918' -Drest.address='CNSZ22PL377' 1> > > /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.out > 2> > /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.err > > > *state.backend.rocksdb.memory.fixed-per-slot* 1024M > *state.backend.rocksdb.memory.managed* true > *taskmanager.memory.managed.size* 1024M |
Hi
实在不好意思,没事先检查链接。https://mp.weixin.qq.com/s?__biz=MzU3Mzg4OTMyNQ==&mid=2247490197&idx=1&sn=b0893a9bf12fbcae76852a156302de95 可以先看下是否正确配置了state ttl,如果配置了还出现此类问题那应该还是managed memory这块的问题,相关配置参考链接文档 ------------------ 原始邮件 ------------------ 发件人: "user-zh" <[hidden email]>; 发送时间: 2021年2月5日(星期五) 下午2:03 收件人: "user-zh"<[hidden email]>; 主题: Re: fink on yarn per job container 被杀 谢谢 回答. 是指的这个参数 taskmanager.memory.jvm-overhead 调整吗(微信连接有点问题)? 我看邮件列表很多大佬的回答基本上都是要调大堆外内存。 难道 rocksdb 就申请内存的时候就控制不住上限吗?我的state 是会一直增长,但是我希望rocksDB 内存能在我设置的范围内,不至于被 yarn kill . 这块要能实现吗? zhiyezou <[hidden email]> 于2021年2月5日周五 下午1:25写道: > Hi > &nbsp; &nbsp;可以先jvm-overhead相关配置,具体原理及参数请参考这篇文章, > https://mp.weixin.qq.com/s?__biz=MzU3Mzg4OTMyNQ==&amp;mid=2247490197&amp;;idx=1&amp;sn=b0893a9bf12fbcae76852a156302de95 > > > > > ------------------&nbsp;原始邮件&nbsp;------------------ > 发件人: > "user-zh" > < > [hidden email]&gt;; > 发送时间:&nbsp;2021年2月4日(星期四) 下午5:46 > 收件人:&nbsp;"user-zh"<[hidden email]&gt;; > > 主题:&nbsp;fink on yarn per job container 被杀 > > > > 各位大佬好 > &nbsp;rocksDB state 场景下 state 过大 被杀。 有啥好的解决办法? 为啥在 flink 1.10.1 中 > taskmanager.memory.managed.size&nbsp; 限制不住 rocksDB 内存申请?改如何控制上线? > java.lang.Exception: Container > [pid=137231,containerID=container_e118_1611713951789_92045_01_000003] > is running beyond physical memory limits. Current usage: 4.1 GB of 4 GB > physical memory used; 8.3 GB of 8.4 GB virtual memory used. Killing > container. > Dump of the process-tree for container_e118_1611713951789_92045_01_000003 : > &nbsp;&nbsp;&nbsp; |- PID PPID PGRPID SESSID CMD_NAME > USER_MODE_TIME(MILLIS) SYSTEM_TIME( > MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE > &nbsp;&nbsp;&nbsp; |- 137259 137231 137231 137231 (java) 3935 488 > 8764928000 1086082 > /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 -XX:MaxDirectMemorySize= > 493921243 -XX:MaxMetaspaceSize=268435456 -XX:+HeapDumpOnOutOfMemoryError - > > Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log > -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. > YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= > 134217728b -D taskmanager.memory.network.max=359703515b -D > taskmanager.memory.network.min=359703515b -D > taskmanager.memory.framework.heap.size=134217728b -D > taskmanager.memory.managed.size=1073741824b -D taskmanager.cpu.cores=1.0 -D > taskmanager.memory.task.heap.size=1895154309b -D > taskmanager.memory.task.off-heap.size=0b --configDir . > -Djobmanager.rpc.address=cnsz22pl377 > -Dweb.port=0 > -Dweb.tmpdir=/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc > -Djobmanager.rpc.port=18918 -Drest.address=CNSZ22PL377 > &nbsp;&nbsp;&nbsp; |- 137231 137229 137231 137231 (bash) 0 0 115855360 356 > /bin/bash -c > /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 -XX:MaxDirectMemorySize= > 493921243 -XX:MaxMetaspaceSize=268435456 -XX:+HeapDumpOnOutOfMemoryError - > > Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log > -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. > YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= > 134217728b -D taskmanager.memory.network.max=359703515b -D > taskmanager.memory.network.min=359703515b -D > taskmanager.memory.framework.heap.size=134217728b -D > taskmanager.memory.managed.size=1073741824b -D taskmanager.cpu.cores=1.0 -D > taskmanager.memory.task.heap.size=1895154309b -D > taskmanager.memory.task.off-heap.size=0b --configDir . -Djobmanager > .rpc.address='cnsz22pl377' -Dweb.port='0' -Dweb.tmpdir= > '/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc' > -Djobmanager.rpc.port= > '18918' -Drest.address='CNSZ22PL377' 1&gt; > > /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.out > 2&gt; > /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.err > > > *state.backend.rocksdb.memory.fixed-per-slot* 1024M > *state.backend.rocksdb.memory.managed* true > *taskmanager.memory.managed.size* 1024M |
谢谢。看了相关文章 和邮件列表类似的问题,中心思路都是调大堆外内存。 还是有几个疑问
1、在 flink 1.10 中 在state 不断增长的情况下 是否没办法控制 rocksdb 内存的增长? 导致 有container 被 kill 的风险。rocksdb 没有当内存不足时就clear 内存刷磁盘的动作? 2、当使用 rocksdbStateBackend 时 如果配置的是 hdfs 路径。rocksdb 是否还会有本地文件生成。在 tm 节点上一直没有找到相关文件。 zhiyezou <[hidden email]> 于2021年2月7日周日 上午9:41写道: > Hi > 实在不好意思,没事先检查链接。 > https://mp.weixin.qq.com/s?__biz=MzU3Mzg4OTMyNQ==&mid=2247490197&idx=1&sn=b0893a9bf12fbcae76852a156302de95 > 可以先看下是否正确配置了state ttl,如果配置了还出现此类问题那应该还是managed memory这块的问题,相关配置参考链接文档 > > > > > ------------------ 原始邮件 ------------------ > 发件人: > "user-zh" > < > [hidden email]>; > 发送时间: 2021年2月5日(星期五) 下午2:03 > 收件人: "user-zh"<[hidden email]>; > > 主题: Re: fink on yarn per job container 被杀 > > > > 谢谢 回答. > 是指的这个参数 taskmanager.memory.jvm-overhead 调整吗(微信连接有点问题)? > 我看邮件列表很多大佬的回答基本上都是要调大堆外内存。 > 难道 rocksdb 就申请内存的时候就控制不住上限吗?我的state 是会一直增长,但是我希望rocksDB 内存能在我设置的范围内,不至于被 > yarn kill . 这块要能实现吗? > > zhiyezou <[hidden email]> 于2021年2月5日周五 下午1:25写道: > > > Hi > > &nbsp; &nbsp;可以先jvm-overhead相关配置,具体原理及参数请参考这篇文章, > > > https://mp.weixin.qq.com/s?__biz=MzU3Mzg4OTMyNQ==&amp;mid=2247490197&amp;;idx=1&amp;sn=b0893a9bf12fbcae76852a156302de95 > > > <https://mp.weixin.qq.com/s?__biz=MzU3Mzg4OTMyNQ==&amp;mid=2247490197&amp;;idx=1&amp;sn=b0893a9bf12fbcae76852a156302de95>> > ; > > > > > > > > ------------------&nbsp;原始邮件&nbsp;------------------ > > 发件人: > > > "user-zh" > > > < > > [hidden email]&gt;; > > 发送时间:&nbsp;2021年2月4日(星期四) 下午5:46 > > 收件人:&nbsp;"user-zh"<[hidden email]&gt;; > > > > 主题:&nbsp;fink on yarn per job container 被杀 > > > > > > > > 各位大佬好 > > &nbsp;rocksDB state 场景下 state 过大 被杀。 有啥好的解决办法? 为啥在 flink 1.10.1 中 > > taskmanager.memory.managed.size&nbsp; 限制不住 rocksDB 内存申请?改如何控制上线? > > java.lang.Exception: Container > > [pid=137231,containerID=container_e118_1611713951789_92045_01_000003] > > is running beyond physical memory limits. Current usage: 4.1 GB of 4 > GB > > physical memory used; 8.3 GB of 8.4 GB virtual memory used. Killing > > container. > > Dump of the process-tree for > container_e118_1611713951789_92045_01_000003 : > > &nbsp;&nbsp;&nbsp; |- PID PPID PGRPID SESSID CMD_NAME > > USER_MODE_TIME(MILLIS) SYSTEM_TIME( > > MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE > > &nbsp;&nbsp;&nbsp; |- 137259 137231 137231 137231 (java) > 3935 488 > > 8764928000 1086082 > > /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 > -XX:MaxDirectMemorySize= > > 493921243 -XX:MaxMetaspaceSize=268435456 > -XX:+HeapDumpOnOutOfMemoryError - > > > > > Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log > > -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. > > YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= > > 134217728b -D taskmanager.memory.network.max=359703515b -D > > taskmanager.memory.network.min=359703515b -D > > taskmanager.memory.framework.heap.size=134217728b -D > > taskmanager.memory.managed.size=1073741824b -D > taskmanager.cpu.cores=1.0 -D > > taskmanager.memory.task.heap.size=1895154309b -D > > taskmanager.memory.task.off-heap.size=0b --configDir . > > -Djobmanager.rpc.address=cnsz22pl377 > > -Dweb.port=0 > > -Dweb.tmpdir=/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc > > -Djobmanager.rpc.port=18918 -Drest.address=CNSZ22PL377 > > &nbsp;&nbsp;&nbsp; |- 137231 137229 137231 137231 (bash) > 0 0 115855360 356 > > /bin/bash -c > > /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 > -XX:MaxDirectMemorySize= > > 493921243 -XX:MaxMetaspaceSize=268435456 > -XX:+HeapDumpOnOutOfMemoryError - > > > > > Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log > > -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. > > YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= > > 134217728b -D taskmanager.memory.network.max=359703515b -D > > taskmanager.memory.network.min=359703515b -D > > taskmanager.memory.framework.heap.size=134217728b -D > > taskmanager.memory.managed.size=1073741824b -D > taskmanager.cpu.cores=1.0 -D > > taskmanager.memory.task.heap.size=1895154309b -D > > taskmanager.memory.task.off-heap.size=0b --configDir . -Djobmanager > > .rpc.address='cnsz22pl377' -Dweb.port='0' -Dweb.tmpdir= > > '/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc' > > -Djobmanager.rpc.port= > > '18918' -Drest.address='CNSZ22PL377' 1&gt; > > > > > /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.out > > 2&gt; > > > /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.err > > > > > > *state.backend.rocksdb.memory.fixed-per-slot* 1024M > > *state.backend.rocksdb.memory.managed* true > > *taskmanager.memory.managed.size* 1024M |
Hi
1. 这块应该会涉及到rocksdb自身的内存管理,不确定和状态增长是否有关,没有深入研究,可以找唐云大佬问下; 2. 如果state.backend.rocksdb.localdir(默认none)这个参数没有配置,flink会把状态数据放在NodeManager的LOCAL_DIRS目录下(对应flink的配置是io.tmp.dirs)可以看下官网对于该配置的解释。 存储路径大概长这个样子:${LOCAL_DIRS}/usercache/xx/appcache/application_xx/flink-io-860fdbc2-f321-4f08-bce6-88db85477e1e/ ------------------ 原始邮件 ------------------ 发件人: "user-zh" <[hidden email]>; 发送时间: 2021年2月9日(星期二) 中午11:23 收件人: "user-zh"<[hidden email]>; 主题: Re: fink on yarn per job container 被杀 谢谢。看了相关文章 和邮件列表类似的问题,中心思路都是调大堆外内存。 还是有几个疑问 1、在 flink 1.10 中 在state 不断增长的情况下 是否没办法控制 rocksdb 内存的增长? 导致 有container 被 kill 的风险。rocksdb 没有当内存不足时就clear 内存刷磁盘的动作? 2、当使用 rocksdbStateBackend 时 如果配置的是 hdfs 路径。rocksdb 是否还会有本地文件生成。在 tm 节点上一直没有找到相关文件。 zhiyezou <[hidden email]> 于2021年2月7日周日 上午9:41写道: > Hi > 实在不好意思,没事先检查链接。 > https://mp.weixin.qq.com/s?__biz=MzU3Mzg4OTMyNQ==&amp;mid=2247490197&amp;idx=1&amp;sn=b0893a9bf12fbcae76852a156302de95 > 可以先看下是否正确配置了state ttl,如果配置了还出现此类问题那应该还是managed memory这块的问题,相关配置参考链接文档 > > > > > ------------------&nbsp;原始邮件&nbsp;------------------ > 发件人: > "user-zh" > < > [hidden email]&gt;; > 发送时间:&nbsp;2021年2月5日(星期五) 下午2:03 > 收件人:&nbsp;"user-zh"<[hidden email]&gt;; > > 主题:&nbsp;Re: fink on yarn per job container 被杀 > > > > 谢谢 回答. > &nbsp;&nbsp;&nbsp; 是指的这个参数 taskmanager.memory.jvm-overhead 调整吗(微信连接有点问题)? > 我看邮件列表很多大佬的回答基本上都是要调大堆外内存。 > 难道 rocksdb 就申请内存的时候就控制不住上限吗?我的state 是会一直增长,但是我希望rocksDB 内存能在我设置的范围内,不至于被 > yarn&nbsp; kill . 这块要能实现吗? > > zhiyezou <[hidden email]&gt; 于2021年2月5日周五 下午1:25写道: > > &gt; Hi > &gt; &amp;nbsp; &amp;nbsp;可以先jvm-overhead相关配置,具体原理及参数请参考这篇文章, > &gt; > https://mp.weixin.qq.com/s?__biz=MzU3Mzg4OTMyNQ==&amp;amp;mid=2247490197&amp;amp;;idx=1&amp;amp;sn=b0893a9bf12fbcae76852a156302de95 > &gt > <https://mp.weixin.qq.com/s?__biz=MzU3Mzg4OTMyNQ==&amp;amp;mid=2247490197&amp;amp;;idx=1&amp;amp;sn=b0893a9bf12fbcae76852a156302de95&gt> > ; > &gt; > &gt; > &gt; > &gt; ------------------&amp;nbsp;原始邮件&amp;nbsp;------------------ > &gt; 发件人: > &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; > "user-zh" > &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; > < > &gt; [hidden email]&amp;gt;; > &gt; 发送时间:&amp;nbsp;2021年2月4日(星期四) 下午5:46 > &gt; 收件人:&amp;nbsp;"user-zh"<[hidden email]&amp;gt;; > &gt; > &gt; 主题:&amp;nbsp;fink on yarn per job container 被杀 > &gt; > &gt; > &gt; > &gt; 各位大佬好 > &gt; &amp;nbsp;rocksDB state 场景下 state 过大 被杀。 有啥好的解决办法? 为啥在 flink 1.10.1 中 > &gt; taskmanager.memory.managed.size&amp;nbsp; 限制不住 rocksDB 内存申请?改如何控制上线? > &gt; java.lang.Exception: Container > &gt; [pid=137231,containerID=container_e118_1611713951789_92045_01_000003] > &gt; is running beyond physical memory limits. Current usage: 4.1 GB of 4 > GB > &gt; physical memory used; 8.3 GB of 8.4 GB virtual memory used. Killing > &gt; container. > &gt; Dump of the process-tree for > container_e118_1611713951789_92045_01_000003 : > &gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; |- PID PPID PGRPID SESSID CMD_NAME > &gt; USER_MODE_TIME(MILLIS) SYSTEM_TIME( > &gt; MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE > &gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; |- 137259 137231 137231 137231 (java) > 3935 488 > &gt; 8764928000 1086082 > &gt; /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 > -XX:MaxDirectMemorySize= > &gt; 493921243 -XX:MaxMetaspaceSize=268435456 > -XX:+HeapDumpOnOutOfMemoryError - > &gt; > &gt; > Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log > &gt; -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. > &gt; YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= > &gt; 134217728b -D taskmanager.memory.network.max=359703515b -D > &gt; taskmanager.memory.network.min=359703515b -D > &gt; taskmanager.memory.framework.heap.size=134217728b -D > &gt; taskmanager.memory.managed.size=1073741824b -D > taskmanager.cpu.cores=1.0 -D > &gt; taskmanager.memory.task.heap.size=1895154309b -D > &gt; taskmanager.memory.task.off-heap.size=0b --configDir . > &gt; -Djobmanager.rpc.address=cnsz22pl377 > &gt; -Dweb.port=0 > &gt; -Dweb.tmpdir=/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc > &gt; -Djobmanager.rpc.port=18918 -Drest.address=CNSZ22PL377 > &gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; |- 137231 137229 137231 137231 (bash) > 0 0 115855360 356 > &gt; /bin/bash -c > &gt; /app/jdk/bin/java -Xmx2029372037 -Xms2029372037 > -XX:MaxDirectMemorySize= > &gt; 493921243 -XX:MaxMetaspaceSize=268435456 > -XX:+HeapDumpOnOutOfMemoryError - > &gt; > &gt; > Dlog.file=/HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.log > &gt; -Dlog4j.configuration=file:./log4j.properties org.apache.flink.yarn. > &gt; YarnTaskExecutorRunner -D taskmanager.memory.framework.off-heap.size= > &gt; 134217728b -D taskmanager.memory.network.max=359703515b -D > &gt; taskmanager.memory.network.min=359703515b -D > &gt; taskmanager.memory.framework.heap.size=134217728b -D > &gt; taskmanager.memory.managed.size=1073741824b -D > taskmanager.cpu.cores=1.0 -D > &gt; taskmanager.memory.task.heap.size=1895154309b -D > &gt; taskmanager.memory.task.off-heap.size=0b --configDir . -Djobmanager > &gt; .rpc.address='cnsz22pl377' -Dweb.port='0' -Dweb.tmpdir= > &gt; '/tmp/flink-web-8a1097fe-7fbc-4a8b-ad06-8701ba8262bc' > &gt; -Djobmanager.rpc.port= > &gt; '18918' -Drest.address='CNSZ22PL377' 1&amp;gt; > &gt; > &gt; > /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.out > &gt; 2&amp;gt; > &gt; > /HDATA/4/yarn/logs/application_1611713951789_92045/container_e118_1611713951789_92045_01_000003/taskmanager.err > &gt; > &gt; > &gt; *state.backend.rocksdb.memory.fixed-per-slot* 1024M > &gt; *state.backend.rocksdb.memory.managed* true > &gt; *taskmanager.memory.managed.size* 1024M |
Free forum by Nabble | Edit this page |