使用argo事件触发argo工作流中的步骤



我们使用了不同的wf工具,argo在提供广泛功能的情况下脱颖而出,而且它是k8s原生的,但我们有长时间运行步骤的用例,我们希望基于事件的系统根据事件(例如远程作业的状态(触发下一步或重试上一步,有可能通过argo事件实现这一点吗?

为了澄清您的用例,您有一个长时间运行的(如保持运行服务(步骤,该步骤将生成事件来触发需要基于事件运行的步骤/工作流。这是正确的吗?

对于上述用例,您可以使用Argo事件从外部事件触发Argo工作流,如(Github、S3、流、SNS、日历事件等(。

您可以将步骤分解为不同的argo工作流。然后利用argo事件将这些工作流连接在一起。例如:使用argo事件配置事件源的方法很少。您可以将gcp-pubsub或kafka主题配置为每个工作流的事件源。然后,您可以创建一个管道或一系列工作流,这些工作流通过上面创建的事件源链接。

kafka topic1===>WF1—发送消息-->kafka topic2====>WF2。。。等等

通过这样做,您可以通过向相应主题发送消息来重试任何工作流。

是的,您可以定义"when"情况,并根据一些输出执行上一步。

例如,这个例子展示了如何不断地翻转硬币,直到硬币正面。注意,当它是尾部时,它会再次调用"coinflicp"模板——有点像递归的概念。

相关内容

  • 没有找到相关文章

最新更新