One or more tangible computer-readable media storing computer-executable instructions that, when executed by a processor comprised in a computing device, cause the computing device to: define a first network offering corresponding to a first set of network services and associated with a first subset of network elements of a plurality of network elements in a cloud of computing resources; define a second network offering corresponding to a second set of network services and associated with a second subset of network elements of the plurality of network elements in the cloud of computing resources; receive an end user request to create a new virtual machine within the cloud of computing resources, wherein the request identifies one of the first network offering or the second network offering; identify a first virtual machine network corresponding to the identified network offering based on a first tag associated with the identified network offering, wherein the first virtual machine network comprises a second tag indicating a physical network associated with the first virtual machine network; determine, in response to identifying the first virtual machine network, whether the first virtual machine network has been allocated within the physical network; allocate network services within the physical network to the first virtual machine network in response to determining that the first virtual machine network is not allocated in the physical network; and create, in response to the end user request, a first virtual machine on the first virtual machine network, wherein the first virtual machine is configured to use the subset of network elements corresponding to the identified network offering. define a first network offering corresponding to a first set of network services and associated with a first subset of network elements of a plurality of network elements in a cloud of computing resources; define a second network offering corresponding to a second set of network services and associated with a second subset of network elements of the plurality of network elements in the cloud of computing resources; receive an end user request to create a new virtual machine within the cloud of computing resources, wherein the request identifies one of the first network offering or the second network offering; identify a first virtual machine network corresponding to the identified network offering based on a first tag associated with the identified network offering, wherein the first virtual machine network comprises a second tag indicating a physical network associated with the first virtual machine network; determine, in response to identifying the first virtual machine network, whether the first virtual machine network has been allocated within the physical network; allocate network services within the physical network to the first virtual machine network in response to determining that the first virtual machine network is not allocated in the physical network; and create, in response to the end user request, a first virtual machine on the first virtual machine network, wherein the first virtual machine is configured to use the subset of network elements corresponding to the identified network offering.