Not happening unless your instances on Amazon are Centos or some other "standard" Linux distribution, not standard Amazon Linux. Amazon Linux is its own thing and won't run outside the Amazon ecosphere, and Windows instances on AWS don't react well at all to having their hypervisor yanked out from under them and a new hypervisor slid under them.
When I did this recently, I instead set up a Puppet server with a clone of the puppetry that set up my AWS instances (my full puppet configuration tree was in a git repository so that was not a big deal), modified it to set up the same software on Centos rather than Amazon Linux (took some slight mods because the standard OS packages are slightly different between the two), then set up some fresh instances using a template that had puppet pre-installed on it and the userdata scripts from my CloudFormation templates minus the AWS-specific bits (the userdata scripts are responsible for configuring the instances to connect to the puppet server with the proper instance type in order to do the final configuration). If you are not using a configuration management system like Puppet, Chef, or Ansible, you're doing things wrong. You've *been* doing things wrong. Managing a fleet of virtual machines by hand is not the way to do things in the 21st Century. > On Sep 7, 2017, at 05:08, Imran Ahmed <im...@eaxiom.net> wrote: > > Hi All, > I have got a task to migrate VMs from AWS to CloudStack (private cloud) . > Any ideas to get this done efficiently? > > Regards, > Imran >