In an approach for pod scheduling and recursion, a processor schedules a master pod and one or more worker pods for applications to be deployed on a cluster. A processor builds a topology between the master pod and the one or more worker pods. A processor monitors a workload in the one or more worker pods. A processor determines whether any of the one or more worker pods needs to scale out. In response to determining that one of the one or more worker pods needs to scale out, a processor schedules a next layer of the one or more worker pods according to the workload.