1. A method comprising: storing a master software image for a type of computing function to be deployed within a distributed computing system; generating K software image instances from the master software image prior to selecting any application nodes of the distributed computing system upon which to deploy any of the K software image instances, wherein the distributed computing system is configured to deploy a maximum of K of the software image instances for the type of computing function, and wherein the K software image instances are generated such that, when all or a subset of the K software image instances are deployed on a set of application nodes, the set of applications nodes combine to provide a computing application for the type of computing function; when generating the K software image instances, pre-assigning a unique network address to each of the K software image instances prior to selecting any of the application nodes upon which to deploy any of the K software image instances; after generating the K software image instances and after pre-assigning the unique network address to each of the K software image instances, selecting M application nodes upon which to deploy a first subset of the K software image instances, where M is less than K; deploying the first subset of the K software image instances on the M application nodes within the distributed computing system; after deploying the first subset of the K software image instances, detecting a need to add one or more additional application nodes to the distributed computing system for the type of computing function; selecting a second subset of the K software image instances that are not currently deployed; and deploying the second subset of the K software image instances on the one or more additional application nodes.