关于spark:Spark-Standalone部署模式下Application执行完了怎么办

56次阅读

共计 733 个字符,预计需要花费 2 分钟才能阅读完成。

在后面的文章中曾经晓得,Application 既占用了 Master 的资源,也占用 Worker 里的 Executor 资源。当 Application 运行完后这些资源是都要开释的。

进行 Executor

Application 首先会从内存中,拿出调配给以后 Application 的 Executors 信息,通过 Executor 的 RpcEndpointRef,给每个 Executor 发送 RPC 申请,让他们进行 Executor,Executor 收到申请后,就会进行以后的 Executor(字体红色标识)。

开释 Driver

Executor 进行后,Driver 就没用了,所以这里进行 DriverEndpoint。

勾销注册 Application

Application 向 Master 发送申请,要求勾销以后的 Application。Master 收到申请后,就把内存中对于 Application 的局部进行变更,而后给相应的 Worker 发送音讯,音讯包含 Executor 的 ID,要求杀死 Executor 相干内容。

而后再从长久化中移除 Application。

Worker 收到杀死 Executor 的申请,依据 Master 提供的 Executor 的 ID,找到对应的 Executor,把过程杀死。

开释 ClientEndpoint

Application 注册勾销后,ClientEndpoint 就没用了,所以这里进行 ClientEndpoint。

异样退出

如果是异样退出,Master 会监听客户端与以后节点的连贯断开,而后会被动的执行下面勾销注册 Application 的操作,并且会告诉 Application,告知你曾经被 Master 移除了,而后 Application 收到音讯就会进行 ClientEndpoint。

正文完
 0