我在kuberenetes上使用spark应用程序时遇到问题。 Spark驱动程序尝试创建执行程序容器,执行程序容器无法启动。问题是,一旦吊舱发生故障,Spark驱动程序将其删除并创建一个新的吊舱。新的由于相同的原因而失败。因此,我如何从已经删除的Pod中恢复日志,这似乎是kubernetes上的默认火花行为。另外,由于移除是瞬时的,所以我无法抓住豆荚。我想知道如果我无法恢复错误,我应该如何解决失败的pod问题。
答案 0 :(得分:0)
对于您而言,实现群集日志记录将很有帮助。即使pod重新启动或删除,其日志也将保留在日志聚合器存储中。
cluster logging的解决方案不止一种,但最受欢迎的是EFK(Elasticsearch,Fluentd,Kibana)。
实际上,即使没有Elasticsearch和Kibana,您也可以使用。
查阅出色的文章Application Logging in Kubernetes with fluentd by Rosemary Wang,其中介绍了如何配置swal("Write something here:", {
content: "input",
})
.then((value) => {
if (value === 'xyz') {
swal(`Username: ${value}`);
}
});
将汇总的日志放入fluentd
窗格fluentd
中,并在以后使用以下命令对其进行访问:
stdout