Kubernetes pod娱乐

问题描述 投票:1回答:3

有可能告诉Kubernetes只丢掉我目前的吊舱并每48小时重新创建一次吗? Google Cloud Kubernetes上是否有某种类型的调度程序?或者我可以这样配置我的部署吗?我有一个Node.js应用程序与Docker一起在Google Cloud Platform上的Kubernetes集群内运行。先感谢您!

docker kubernetes google-cloud-platform
3个回答
1
投票

真正的“Kubernetes方式”来解决这个问题 - 是为您的应用程序的部署/ statefulset / pod设计ReadinessProbe / LivenessProbe。一旦你的Pod跌落,正确的探针将处理它,你的Pod将完全自动重建

P.S:你是比任何人都更了解你的应用程序的人。尝试解决“每48小时问题”,然后进行正确的探测。祝好运!

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


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


0
投票

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

  1. 48小时后退出节点应用程序,即从代码中退出,这是一种肮脏的方式,但这是最简单的。
  2. 创建一个在48小时后运行的cronjob,并删除在部署下创建的任何pod。
© www.soinside.com 2019 - 2024. All rights reserved.