You can move virtual machines from one host or storage location to another location using hot or cold migration. For example, with vSphere vMotion you can move powered on virtual machines away from a host to perform maintenance, to balance loads, to collocate virtual machines that communicate with each other, to move virtual machines apart to minimize fault domain, to migrate to new server hardware, and so on.

You can use cold or hot migration to move virtual machines to different hosts or datastores.
Cold Migration
You can move a powered off or suspended virtual machine to a new host. Optionally, you can relocate configuration and disk files for powered off or suspended virtual machines to new storage locations. You can also use cold migration to move virtual machines from one data center to another. To perform a cold migration, you can move virtual machines manually or set up a scheduled task.
Hot Migration
You can use vMotion or Storage vMotion to move a powered on virtual machine to a different host and move its disks or folder to a different datastore. You can move the virtual machine without any interruption in availability. You can also move a virtual machine to a different host and to a different storage location at the same time. vMotion is also called live migration or hot migration.
Note: Copying a virtual machine creates a new virtual machine. It is not a form of migration. Cloning a virtual machine or copying its disks and configuration file creates a new virtual machine. Cloning is not a form of migration.

You can perform several types of migration according to the virtual machine resource type.

Change compute resource only
Moving a virtual machine but not its storage to another compute resource, such as a host, cluster, resource pool, or vApp. You use vMotion to move a powered on virtual machine to another compute resource. You can move the virtual machine to another host by using cold migration or hot migration.
Change storage only
Moving a virtual machine and its storage, including virtual disks, configuration files, or a combination of these, to a new datastore on the same host. You can change the datastore using cold or hot migration. You use Storage vMotion to move a powered on virtual machine and its storage to a new datastore .
Change both compute resource and storage
Moving a virtual machine to another host and moving its disk or virtual machine folder to another datastore. You can change the host and datastore using cold or hot migration. When you move a virtual machine network between distributed switches, the network configuration and policies that are associated with the network adapters of the virtual machine are transferred to the target switch.

In vSphere 6.0 and later, you can move virtual machines between vSphere sites by using migration between these types of objects.

Migrate to another virtual switch
Moving the network of a virtual machine to a virtual switch of a different type. You can migrate virtual machines without reconfiguring the physical and virtual network. While performing cold or hot migration, you can move the virtual machine from a standard to a standard or distributed switch and from a distributed switch to another distributed switch.
Migrate to another data center
Moving virtual machines between data centers. While performing cold or hot migration, you can change the data center of a virtual machine. For networking in the target data center, you can select a dedicated port group on a distributed switch.
Migrate to another vCenter Server system

Moving virtual machines between two vCenter Server instances that are connected in Enhanced Linked Mode.

You can also move virtual machines between vCenter Server instances that are located across a long distance from each other.

For information about the requirements about vMotion across vCenter Server instances, see Requirements for Migration Between vCenter Server Instances.

To migrate virtual machines with disks larger than 2 TB, the source and destination ESXi hosts must be version 5.5 and later.