首页 > 解决方案 > Flink 在 Kubernetes 中使用的内存比 taskmanager.memory.process.size 多

问题描述

在 Flink 1.10.0 中,我们尝试使用taskmanager.memory.process.size来限制 taskmanager 使用的资源,以确保它们不会被 Kubernetes 杀死。但是,我们仍然得到很多OOMKilled具有以下设置的任务管理器。

关于如何正确设置 Kubernetes 和 Flink 的任何建议,以便我们没有OOMKilled

resources:
  requests:
    cpu: 1000m
    memory: 4096Mi
  limits:
    cpu: 1000m
    memory: 4096Mi
jobmanager.heap.size: 820m
taskmanager.memory.jvm-metaspace.size: 128m
taskmanager.memory.process.size: 4096m
val flinkVersion = "1.10.0"

libraryDependencies += "com.squareup.okhttp3" % "okhttp" % "4.2.2"
libraryDependencies += "com.typesafe" % "config" % "1.4.0"
libraryDependencies += "joda-time" % "joda-time" % "2.10.5"
libraryDependencies += "org.apache.flink" %% "flink-connector-kafka" % flinkVersion
libraryDependencies += "org.apache.flink" % "flink-metrics-dropwizard" % flinkVersion
libraryDependencies += "org.apache.flink" %% "flink-scala" % flinkVersion % "provided"
libraryDependencies += "org.apache.flink" %% "flink-statebackend-rocksdb" % flinkVersion % "provided"
libraryDependencies += "org.apache.flink" %% "flink-streaming-scala" % flinkVersion % "provided"
libraryDependencies += "org.json4s" %% "json4s-jackson" % "3.6.7"
libraryDependencies += "org.log4s" %% "log4s" % "1.8.2"
libraryDependencies += "org.rogach" %% "scallop" % "3.3.1"
resources:
  requests:
    cpu: 1200m
    memory: 2G
  limits:
    cpu: 1500m
    memory: 2G
jobmanager.heap.size: 820m
taskmanager.heap.size: 1024m

标签: apache-flink

解决方案


推荐阅读