Kubernetes吊舱娱乐

时间:2018-09-10 07:25:00

标签: docker kubernetes google-cloud-platform

是否可以告诉Kubernetes丢弃我当前的Pod,然后每48小时重新创建一次? Google Cloud Kubernetes上是否有某种类型的调度程序?还是可以这样配置我的部署? 我有一个使用Docker容器化的Node.js应用程序,该应用程序在Google Cloud Platform的Kubernetes集群内部运行。 预先谢谢你!

3 个答案:

答案 0 :(得分:1)

解决此问题的真正“ Kubernetes方式”是针对应用的部署/状态集/吊舱设计ReadinessProbe / LivenessProbe。一旦您的Pod跌落,正确的探测将对其进行处理,并且您的Pod将被完全重新创建

P.S:您是比其他人更了解您的应用的人。尝试解决“每隔48小时的问题”,然后进行正确的调查。祝你好运!

链接:https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/

答案 1 :(得分:0)

您尝试过CronJobs吗?

apiVersion: batch/v1beta1
kind: CronJob
metadata:
  name: hello
spec:
  schedule: "*/1 * * * *"
  jobTemplate:
    spec:
      template:
        spec:
          containers:
          - name: your_app_name
            image: your_image
            args:
            - your
            - args
          restartPolicy: OnFailure

它是cron jobs下的Kubernetes官方文档。

此外,这是一个cron时间表表达式编辑器,可能会很有用:crontab.guru

答案 2 :(得分:0)

据我了解,有两种方法可以实现这一目标。我假设您的应用程序正在kubernetes中作为部署运行,因此删除pod应该会创建一个新的。

  1. 48小时后退出节点应用程序,即从代码内退出,这是一种肮脏的方式,但这是最简单的。
  2. 创建一个在48小时后运行的cronjob,并删除在您的部署下创建的任何pod。