1. A method comprising: detecting at a host computer system, a request to launch a computing application within a virtualization service, the request received by a scheduler of the host computing system; determining, by the scheduler, an application requirement for the computing application; determining, by the scheduler, a cloud resource inventory, the cloud resource inventory indicating resources available for executing the computing application within the virtualization service; determining, by the scheduler, an optimization requirement, the optimization requirement comprising one or more parameters indicating optimization criteria associated with a cost to use the resources available for executing the computing application within the virtualization service; matching, by the scheduler, the application requirement with resources of the cloud resource inventory that satisfy the optimization requirement to provide a matching result; generating an optimized application deployment configuration based on the matching result by calling, via the scheduler, an application programming interface of the virtualization service to trigger loading of one or more machine images associated with the requested computing application using the optimized application deployment configuration; and causing launching of the computing application within the virtualization service using the loaded one or more machine images.