gpt4 book ai didi

Kubernetes CronJob - 通知、RunId 和日志

转载 作者:行者123 更新时间:2023-12-02 12:02:55 26 4
gpt4 key购买 nike

我在 Kubernetes 中有一个 CronJob,它将日志写入控制台和文件。现在,我正在上面写一个 Web 应用程序。此应用程序将显示所有作业以及每次运行的运行历史和日志。

  • 每次运行 CronJob 是否可以从 kubernetes 获取日志?
  • 是否可以像普通容器一样为 CronJob 配备侧车?
  • 如何获取有关作业开始、作业完成和作业失败的 CronJob 通知?
  • Kubernetes 是否为每次运行生成唯一的 JobId?
  • 是否有可能有一个 future 开始时间的 CronJob?
  • 最佳答案

  • 是的,这些将存储在负责运行作业的物理节点上的容器日志中。此外,Pod 详细信息/状态将根据作业保留保留在 Kubernetes 中:

  • https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/#clean-up-finished-jobs-automatically
  • 是的,作业使用标准 spec.Pod规范。这意味着您可以在单个 pod 内运行多个容器(由作业运行)

  • https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.16/#jobspec-v1-batch
    https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.16/#podtemplatespec-v1-core
  • 这是什么意思? Kube API 是最好的方法,您可以检查正在触发的作业并检查该作业的状态。这通常提供作业的状态:
  •   status:
    completionTime: "2019-10-21T02:13:16Z"
    conditions:
    - lastProbeTime: "2019-10-21T02:13:16Z"
    lastTransitionTime: "2019-10-21T02:13:16Z"
    status: "True"
    type: Complete
    startTime: "2019-10-21T01:00:08Z"
    succeeded: 1
  • 是的,与 pod 被赋予唯一标识符的方式相同,当触发 cronjob 时,将创建具有唯一标识符的作业:
  • user:~$ kubectl get jobs -n elasticsearch
    NAME COMPLETIONS DURATION AGE
    elasticsearch-elastic-stack-kibana-backup-1571443200 1/1 5s 2d4h
    elasticsearch-elastic-stack-kibana-backup-1571529600 1/1 5s 28h
    elasticsearch-elastic-stack-kibana-backup-1571616000 1/1 5s 4h58m

    关于Kubernetes CronJob - 通知、RunId 和日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58479908/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com