Cost-aware resource allocation and provisioning in cloud networks