Spark Streaming on Kubernetes Executor Pod无法重启/重调度问题咨询
问题现象
- 部署环境:基于Spark Operator(对应Spark版本为2.4.7)在Kubernetes集群上运行DStream应用
- 偶发异常表现:运行期间受OOM、Kubernetes节点重启等各类因素影响,偶尔会出现Executor Pod丢失的情况,多数场景下Spark可感知该异常并重调度新的Executor
- 长期运行故障:应用持续运行一周及以上后,大部分应用会进入Executor无法被重调度的状态,仅以低于申请配置数量的Executor持续运行
- 故障特征:Spark UI中这些永久丢失的Executor仍显示为健康状态,但实际已无法从Kafka拉取任何数据
- 现有临时处置方案:目前唯一可保障应用符合预期运行的方案是重建SparkApplication CRD,本质为对应用执行硬重启
当前SparkApplication CRD重启策略配置
restartPolicy: onFailureRetries: 100 onFailureRetryInterval: 20 onSubmissionFailureRetries: 5 onSubmissionFailureRetryInterval: 30 type: Always
内容的提问来源于stack exchange,提问作者eugen-fried
相关产品推荐
相关产品推荐

