1. A processor-implemented method comprising: obtaining a cloud agnostic image representation from a first Virtual Machine Image (VMI) 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, wherein the second VMI is obtained based, at least in part, on the cloud agnostic image representation.