带服务的Kubernetes Cronjob

带服务的Kubernetes Cronjob,kubernetes,kubectl,Kubernetes,Kubectl,我在我的mashines上运行Kubernetes群集,版本为: v1.10.3 所以我开始用sakuli框架来检查我自己的网站。当任何事情失败时,它会发送给icinga,但我无法调查。通常,sakuli框架有一个开放端口(6901),您可以在其中进行连接。如果我在容器中使用cron作业构建它,这是可行的。但是,如何使用仅每5分钟运行一次而不是全部时间的cronjon在公共地址(我指的是kubernete中的NodePort选项)上公开端口?您可以使用常规服务对象公开它。CronJob导致Pod

我在我的mashines上运行Kubernetes群集,版本为: v1.10.3


所以我开始用sakuli框架来检查我自己的网站。当任何事情失败时,它会发送给icinga,但我无法调查。通常,sakuli框架有一个开放端口(6901),您可以在其中进行连接。如果我在容器中使用cron作业构建它,这是可行的。但是,如何使用仅每5分钟运行一次而不是全部时间的cronjon在公共地址(我指的是kubernete中的NodePort选项)上公开端口?

您可以使用常规服务对象公开它。CronJob导致Pod创建。服务匹配吊舱上的标签。只要标签匹配,它就会成为该服务的端点。使用基于CronJob的pod,您将遇到这样的情况:当没有活动的pod时,您的服务没有端点,当它在那里时,您就可以正常使用它。

您可以在上一页的官方报告中的kubernetes文件夹中找到使用示例

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


如本例所述,公开pod服务就足够了,但只有当pod具有作业时,它才可用

好的。我再试了一次,但试了几次都没有成功。我的一些工作已经有了一个服务,所以我知道语法,让我再检查一下。可能我什么都没看到。。。我很快会给出反馈。感谢我的工作,但没有成功。即使是官方回购协议中的例子也不起作用。你能提供一些日志吗?你得到了什么结果?你找到了公开cronjob的解决方案吗?