<p>I have two different types of worker nodes, ones that do data preparation and nodes that do machine learning.<br />
I want to run a Cronjob that runs one process on a preparation node, then (only when finished) a second process on an ML node.<br />
How can I do this in Kubernetes?</p>

<blockquote>
<p>I want to run a Cronjob that runs one process on a preparation node, then (only when finished) a second process on an ML node.</p>
</blockquote>
<p>A CronJob is only one Pod.</p>
<p>What you want to do here is a <em>Workflow</em> or <em>Pipeline</em> consisting of two pods, executed on different nodes.</p>
<p>This can be done with e.g. <a href="https://argoproj.github.io/argo/" rel="nofollow noreferrer">Argo Workflow</a> or <a href="https://www.kubeflow.org/docs/pipelines/overview/pipelines-overview/" rel="nofollow noreferrer">Kubeflow Pipelines</a> or maybe <a href="https://github.com/tektoncd/pipeline" rel="nofollow noreferrer">Tekton Pipeline</a>.</p>
