【发布时间】:2021-09-26 03:10:59
【问题描述】:
我正在运行一个 K8S 作业,带有以下标志:
apiVersion: batch/v1
kind: Job
metadata:
name: my-EP
spec:
template:
metadata:
labels:
app: EP
spec:
restartPolicy: "Never"
containers:
- name: EP
image: myImage
作业开始,运行我的脚本,该脚本运行一些向我发送电子邮件的应用程序,然后终止。应用程序将退出代码返回给 bash 脚本。 当我运行命令时: kubectl get pods,我得到以下信息:
NAME READY STATUS RESTARTS AGE
my-EP-94rh8 0/1 Completed 0 2m2s
有时会出现问题,网络未连接或没有可用的许可证。 我希望 pod 用户可以看到它。 我的问题是,当我运行上面的 get pods 命令时,我可以传播脚本退出代码吗? I.E 而不是“已完成”状态,我想查看我的应用程序退出代码 - 0、1、2、3.... 或者也许有一种方法可以在描述命令中的 Pod 状态中看到它? 目前我看到:
Pods Statuses: 0 Running / 1 Succeeded / 0 Failed
这可能吗?
【问题讨论】:
-
使用容器运行时钩子比如 prestop 怎么样?
-
我正在使用 prestop 挂钩来排空队列,然后再关闭。这不会帮助我显示上一个应用程序的退出代码
标签: kubernetes containers kubernetes-pod kubernetes-jobs