vmware_vmotion – Move a virtual machine using vMotion, and/or its vmdks using storage vMotion¶
New in version 2.2.
Synopsis¶
Using VMware vCenter, move a virtual machine using vMotion to a different host, and/or its vmdks to another datastore using storage vMotion.
Requirements¶
The below requirements are needed on the host that executes this module.
python >= 2.6
pyVmomi
Parameters¶
Parameter | Choices/Defaults | Comments |
---|---|---|
destination_datastore
-
added in 2.7 |
Name of the destination datastore the virtual machine's vmdk should be moved on.
aliases: datastore |
|
destination_host
-
|
Name of the destination host the virtual machine should be running on.
Version 2.6 onwards, this parameter is not a required parameter, unlike the previous versions.
aliases: destination |
|
hostname
string
|
The hostname or IP address of the vSphere vCenter or ESXi server.
If the value is not specified in the task, the value of environment variable
VMWARE_HOST will be used instead.Environment variable support added in Ansible 2.6.
|
|
password
string
|
The password of the vSphere vCenter or ESXi server.
If the value is not specified in the task, the value of environment variable
VMWARE_PASSWORD will be used instead.Environment variable support added in Ansible 2.6.
aliases: pass, pwd |
|
port
integer
added in 2.5 |
Default: 443
|
The port number of the vSphere vCenter or ESXi server.
If the value is not specified in the task, the value of environment variable
VMWARE_PORT will be used instead.Environment variable support added in Ansible 2.6.
|
use_instance_uuid
boolean
added in 2.8 |
|
Whether to use the VMWare instance UUID rather than the BIOS UUID.
|
username
string
|
The username of the vSphere vCenter or ESXi server.
If the value is not specified in the task, the value of environment variable
VMWARE_USER will be used instead.Environment variable support added in Ansible 2.6.
aliases: admin, user |
|
validate_certs
boolean
|
|
Allows connection when SSL certificates are not valid. Set to
false when certificates are not trusted.If the value is not specified in the task, the value of environment variable
VMWARE_VALIDATE_CERTS will be used instead.Environment variable support added in Ansible 2.6.
If set to
yes , please make sure Python >= 2.7.9 is installed on the given machine. |
vm_name
-
|
Name of the VM to perform a vMotion on.
This is required parameter, if
vm_uuid is not set.Version 2.6 onwards, this parameter is not a required parameter, unlike the previous versions.
aliases: vm |
|
vm_uuid
-
added in 2.7 |
UUID of the virtual machine to perform a vMotion operation on.
This is a required parameter, if
vm_name is not set.aliases: uuid |
Notes¶
Note
Tested on vSphere 6.0
Examples¶
- name: Perform vMotion of virtual machine
vmware_vmotion:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
validate_certs: no
vm_name: 'vm_name_as_per_vcenter'
destination_host: 'destination_host_as_per_vcenter'
delegate_to: localhost
- name: Perform storage vMotion of of virtual machine
vmware_vmotion:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
validate_certs: no
vm_name: 'vm_name_as_per_vcenter'
destination_datastore: 'destination_datastore_as_per_vcenter'
delegate_to: localhost
- name: Perform storage vMotion and host vMotion of virtual machine
vmware_vmotion:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
validate_certs: no
vm_name: 'vm_name_as_per_vcenter'
destination_host: 'destination_host_as_per_vcenter'
destination_datastore: 'destination_datastore_as_per_vcenter'
delegate_to: localhost
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
running_host
string
|
changed or success |
List the host the virtual machine is registered to
Sample:
host1.example.com
|
Status¶
This module is not guaranteed to have a backwards compatible interface. [preview]
This module is maintained by the Ansible Community. [community]