1. Spark 线程问题
实时服务器部署着多个Spark和Flink实时任务,Spark任务运行一段时间后发现几个任务异常结束,将失败的任务重启。运行几分钟,发现本来运行正常的任务也异常结束,重启多次依旧如此。开始怀疑是集群资源不足造成了,查看CM中 Yarn的资源池发现资源充足,接着查看运行失败任务的日志,发现共同异常:unable to create new native thread
出现问题找根本原因,于是就问了度娘,解决方法如下:
1、查看系统线程数 ulimit -u
这是修改后的,修改前线程数是4096
2修改系统配置文件
配置文件路径及配置文件可能不一样,修改 /etc/security/limits.d 目录下 20-nproc.conf 配置文件,将部署任务机器用户名对应的线程数修改为 unlimited,默认线程配置:40