Spark集群执行任务失败如何处理


本篇内容介绍了“Spark集群执行任务失败如何处理”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!大量执行失败的 Task,最终任务也是失败的
在 Spark Master 管理界面上看到任务的 Driver 地址不是真实 IP 地址,而是一个叫做“host.containers.internal”的主机名;Spark 的 worker 节点上能观察到在不停的创建 Java 进程,然后进程瞬间就结束了;进入 worker 节点的日志目录查看日志内容,发现异常信息为连接 “host.containers.internal” 这个地址失败。所以显然当前出现的问题跟“host.containers.internal”有关系。背景说明:我们的 Spark 集群是运行在 podman 容器里的,而且是在非 root 用户下运行。经过在互联网搜索,发现这个主机名是容器分配给内部进程用来连接容器所在主机自身的。再进一步查看podman 参考文档,按照里面的说法,仅当容器运行网络模式为 slirp4netns,即带上参数"--network=slirp4netns"时,才会有 host.containers.internal 这个主机名。但我运行容器时带的参数是"--network=host"啊。再仔细看文档才知道,slirp4netns 模式是非 root 运行容器的默认模式。按照我遇到的实际情况,难道我给的"--network=host"参数并没有起作用?但是用podman inspect免费云主机域名 xxx | grep NetworkMode命令查看容器得到的结果是:不懂,先把这个放到一边,那么如何访问 host.containers.internal 这个主机呢,有两种方式:参数改为"--network=slirp4netns:allow_host_loopback=true"修改/usr/share/containers/containers.conf,修改或添加配置network_cmd_options的值为["allow_host_loopback=true"]在不修改--network参数的前提下,我用第二种方法试试。修改配置文件然后重启各个 worker 容器,故障消失,Spark 任务能够顺利执行完成。但还需要观察一段时间。“Spark集群执行任务失败如何处理”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注百云主机网站,小编将为大家输出更多高质量的实用文章!

相关推荐: jquery如何隐藏tr一行

本篇内容介绍了“jquery如何隐藏tr一行”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 隐藏方法:1、用“$(“tr:nth-child(n)”)”选取指定…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 05/12 22:58
下一篇 05/12 22:59

相关推荐