kubernetes 在示例群集中定期调用函数?

k4ymrczo  于 2022-12-03  发布在  Kubernetes
关注(0)|答案(1)|浏览(92)

在我的.NET 6 Kubernetes应用程序(C#,Linux)中,它需要每10分钟调用一个方法。有N个pod。我有以下选项,
1.设置一个分布式锁,比如Redis锁,每个示例每分钟都要尝试获取锁,一旦获取锁,就调用函数,10分钟后释放锁。
1.创建一个API来调用函数。在计划程序中设置一个作业,例如Cron、Windows任务计划程序或公司中可用的任何商业计划程序。让计划程序定期调用API。

1使代码库变得复杂。#2依赖于外部服务。还有其他好的选择吗?

gudnpqoy

gudnpqoy1#

正如@Guru Stron AFAIK kubernetes所提到的允许调度Cron jobs,您可以尝试一下。根据具体情况,您可以创建一个特殊版本的上述pod,它只会调用该方法。或者您可以创建一个特殊版本的pod,它将启用“调用方法”设置,并跨越它的一个示例。
您可以使用CronJob按基于时间的计划运行作业。这些自动作业的运行方式与Linux或UNIX系统上的Cron任务类似。
Cron工作对于建立定期和周期性工作非常有用,例如执行备份或传送电子邮件。Cron工作也可以将个别工作排程在特定时间,例如您想要将工作排程在活动量较少的期间。
Cron作业具有局限性和特性。例如,在某些情况下,单个Cron作业可以创建多个作业。因此,作业应该是幂等的。

相关问题