Kubernetes Cronjob与服务

时间:2018-07-04 05:15:25

标签: kubernetes kubectl

我正在使用以下版本的mashines运行Kubernetes集群: v1.10.3

所以我从sakuli框架开始cronjob来检查我自己的网站。如果发生任何故障,它将发送至icinga,但我无法对其进行调查。通常,sakuli框架具有一个开放端口(6901),您可以在其中进行连接。如果我在容器中使用cron作业来构建它,则此方法有效。但是,我如何在一个公共地址(kubernete中的NodePort选项)上公开一个端口,并让cronjon仅每5分钟运行一次,而不是整个时间运行?

2 个答案:

答案 0 :(得分:0)

您可以使用常规服务对象公开它。 CronJob可以创建Pod。服务与Pod上的标签匹配。只要标签匹配,它将成为该服务的终结点。使用基于CronJob的Pod,您将最终遇到以下情况:没有Pod处于活动状态,您的服务没有端点,当端点存在时,便可以正常使用它。

答案 1 :(得分:0)

您可以在Github.

的官方仓库中的kubernetes文件夹中找到用法示例。

在此示例中,您可以找到kind: Service,这是如何公开工作的示例。

如本示例中所述,用于公开您的pod服务就足够了,但是仅当存在带工作的pod时才可用。