A method for virtual machine migration, the method comprising: identifying one or more virtual drives of a virtual machine that are each mapped to a respective LUN, logical unit number, of a storage array, wherein said storage array is a storage area network, SAN, and is network-connected through a storage interface to at least two host computers (104) via a data network, wherein said data network is implemented as at least one of a fibre channel network or an Internet Small Computer System Interface, iSCSI, network; mapping the one or more virtual drives to a mapping file that is stored on a LUN of the storage array; initiating by the virtual manager that a first virtual machine on a first host computer (104) be shut down to a stopped and saved state, wherein said first virtual machine is implemented as a software component on the first host computer (104); unmasking each LUN to migrate the virtual machine from the first host computer (104) to a second host computer (104); deleting the virtual machine from the first host computer (104), wherein deleting the virtual machine accords to deleting the implemented software component of the first host computer; creating on the second host computer (104) a virtual machine by the virtual manager from a template file that defines a model of a virtual machine, said virtual machine is created according to the mapping file such that the one or more virtual drives are each mapped from the respective LUN of the storage array to the virtual machine on the second host computer (104), wherein said virtual machine created on said second host computer is implemented as a software component on the second host computer, wherein identifying the one or more virtual drives, mapping the one or more virtual drives, unmasking each LUN, and creating the virtual machine are each tasks of virtual machine migration that can be restarted, wherein tasks that can be restarted are implemented to first check if a task has been completed, and if a task of virtual machine migration fails due to a transient error or network connectivity failure, the task be restarted and virtual machine migration will continue from where it failed. identifying one or more virtual drives of a virtual machine that are each mapped to a respective LUN, logical unit number, of a storage array, wherein said storage array is a storage area network, SAN, and is network-connected through a storage interface to at least two host computers (104) via a data network, wherein said data network is implemented as at least one of a fibre channel network or an Internet Small Computer System Interface, iSCSI, network; mapping the one or more virtual drives to a mapping file that is stored on a LUN of the storage array; initiating by the virtual manager that a first virtual machine on a first host computer (104) be shut down to a stopped and saved state, wherein said first virtual machine is implemented as a software component on the first host computer (104); unmasking each LUN to migrate the virtual machine from the first host computer (104) to a second host computer (104); deleting the virtual machine from the first host computer (104), wherein deleting the virtual machine accords to deleting the implemented software component of the first host computer; creating on the second host computer (104) a virtual machine by the virtual manager from a template file that defines a model of a virtual machine, said virtual machine is created according to the mapping file such that the one or more virtual drives are each mapped from the respective LUN of the storage array to the virtual machine on the second host computer (104), wherein said virtual machine created on said second host computer is implemented as a software component on the second host computer, wherein identifying the one or more virtual drives, mapping the one or more virtual drives, unmasking each LUN, and creating the virtual machine are each tasks of virtual machine migration that can be restarted, wherein tasks that can be restarted are implemented to first check if a task has been completed, and if a task of virtual machine migration fails due to a transient error or network connectivity failure, the task be restarted and virtual machine migration will continue from where it failed.