1. A processor-implemented method comprising: obtaining a cloud agnostic image representation from a first Virtual Machine Image (VMI) associated with a first Virtual Machine (VM) on a first cloud, the cloud agnostic image representation being obtained, in part, by removing a cloud specific layer in the first VMI; and obtaining a second VMI for a second cloud different from the first cloud by launching, on the second cloud, a second VM obtained from the cloud agnostic image representation; downloading volume data to a volume associated with the second cloud in a format compatible with the second cloud, the volume data being obtained from a cloud agnostic representation of volume data associated with cloud agnostic image representation; creating and attaching the volume comprising the downloaded volume data to the second VM; augmenting the volume comprising the downloaded volume data with cloud specific configuration settings for the second cloud to obtain augmented volume data; detaching the volume comprising the augmented volume data from the second cloud; and creating the second VMI based on the volume comprising the augmented volume data.