Skip to content

Latest commit

 

History

History
333 lines (291 loc) · 15.1 KB

vmware.vmware_rest.vcenter_vm_power_module.rst

File metadata and controls

333 lines (291 loc) · 15.1 KB

vmware.vmware_rest.vcenter_vm_power

Operate a boot, hard shutdown, hard reset or hard suspend on a guest.

Version added: 0.1.0

Synopsis

  • Ask the vCenter to boot, force shutdown or force reset a guest. If you want to do a soft shutdown or a soft reset, you can use vmware.vmware_rest.vmware_vm_guest_power <vmware.vmware_rest.vmware_vm_guest_power_module> instead.

Requirements

The below requirements are needed on the host that executes this module.

  • vSphere 7.0.3 or greater
  • python >= 3.6
  • aiohttp

Parameters

Parameter Choices/Defaults Comments
session_timeout
float
added in 2.1.0
Timeout settings for client session.
The maximal number of seconds for the whole operation including connection establishment, request sending and response.
The default value is 300s.
state
string / required
    Choices:
  • reset
  • start
  • stop
  • suspend
vcenter_hostname
string / required
The hostname or IP address of the vSphere vCenter
If the value is not specified in the task, the value of environment variable VMWARE_HOST will be used instead.
vcenter_password
string / required
The vSphere vCenter password
If the value is not specified in the task, the value of environment variable VMWARE_PASSWORD will be used instead.
vcenter_rest_log_file
string
You can use this optional parameter to set the location of a log file.
This file will be used to record the HTTP REST interaction.
The file will be stored on the host that run the module.
If the value is not specified in the task, the value of
environment variable VMWARE_REST_LOG_FILE will be used instead.
vcenter_username
string / required
The vSphere vCenter username
If the value is not specified in the task, the value of environment variable VMWARE_USER will be used instead.
vcenter_validate_certs
boolean
    Choices:
  • no
  • yes ←
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.
vm
string / required
Virtual machine identifier.
The parameter must be the id of a resource returned by vmware.vmware_rest.vcenter_vm_info. This parameter is mandatory.

Notes

Note

- Tested on vSphere 7.0.3

See Also

vmware.vmware_rest.vcenter_vm_guest_power_module

Issues a request to the guest operating system asking it to perform a soft shutdown, standby (suspend) or soft reboot

Examples

- name: Create a VM
  vmware.vmware_rest.vcenter_vm:
    placement:
      cluster: "{{ lookup('vmware.vmware_rest.cluster_moid', '/my_dc/host/my_cluster') }}"
      datastore: "{{ lookup('vmware.vmware_rest.datastore_moid', '/my_dc/datastore/local') }}"
      folder: "{{ lookup('vmware.vmware_rest.folder_moid', '/my_dc/vm') }}"
      resource_pool: "{{ lookup('vmware.vmware_rest.resource_pool_moid', '/my_dc/host/my_cluster/Resources') }}"
    name: test_vm1
    guest_OS: RHEL_7_64
    hardware_version: VMX_11
    memory:
      hot_add_enabled: true
      size_MiB: 1024
    disks:
    - type: SATA
      backing:
        type: VMDK_FILE
        vmdk_file: '[local] test_vm1/{{ disk_name }}.vmdk'
    - type: SATA
      new_vmdk:
        name: second_disk
        capacity: 32000000000
    cdroms:
    - type: SATA
      sata:
        bus: 0
        unit: 2
    nics:
    - backing:
        type: STANDARD_PORTGROUP
        network: "{{ lookup('vmware.vmware_rest.network_moid', '/my_dc/network/VM Network') }}"
  register: my_vm

- name: Turn the power of the VM on
  vmware.vmware_rest.vcenter_vm_power:
    state: start
    vm: '{{ my_vm.id }}'

- name: Turn on the power of the VM
  vmware.vmware_rest.vcenter_vm_power:
    state: start
    vm: '{{ my_vm.id }}'

- name: Look up the VM called test_vm1 in the inventory
  register: search_result
  vmware.vmware_rest.vcenter_vm_info:
    filter_names:
    - test_vm1

- name: Collect information about a specific VM
  vmware.vmware_rest.vcenter_vm_info:
    vm: '{{ search_result.value[0].vm }}'
  register: test_vm1_info

- name: Turn the power of the VM on
  vmware.vmware_rest.vcenter_vm_power:
    state: start
    vm: '{{ test_vm1_info.id }}'

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
msg
string
On success
Turn off the VM

Sample:
All items completed
results
list
On success
Turn off the VM

Sample:
[{'_ansible_item_label': {'cpu_count': 1, 'memory_size_MiB': 128, 'name': 'vCLS-e89f3630-0f4d-4adb-bac5-1912e2b5d8ab', 'power_state': 'POWERED_OFF', 'vm': 'vm-1023'}, '_ansible_no_log': None, 'ansible_loop_var': 'item', 'changed': 0, 'failed': 0, 'invocation': {'module_args': {'session_timeout': None, 'state': 'stop', 'vcenter_hostname': 'vcenter.test', 'vcenter_password': 'VALUE_SPECIFIED_IN_NO_LOG_PARAMETER', 'vcenter_rest_log_file': '/tmp/vmware_rest.log', 'vcenter_username': 'administrator@vsphere.local', 'vcenter_validate_certs': 0, 'vm': 'vm-1023'}}, 'item': {'cpu_count': 1, 'memory_size_MiB': 128, 'name': 'vCLS-e89f3630-0f4d-4adb-bac5-1912e2b5d8ab', 'power_state': 'POWERED_OFF', 'vm': 'vm-1023'}, 'value': {'error_type': 'ALREADY_IN_DESIRED_STATE', 'messages': [{'args': [], 'default_message': 'Virtual machine is already powered off.', 'id': 'com.vmware.api.vcenter.vm.power.already_powered_off'}, {'args': [], 'default_message': 'The attempted operation cannot be performed in the current state (Powered off).', 'id': 'vmsg.InvalidPowerState.summary'}]}}, {'_ansible_item_label': {'cpu_count': 1, 'memory_size_MiB': 1080, 'name': 'test_vm1', 'power_state': 'POWERED_ON', 'vm': 'vm-1024'}, '_ansible_no_log': None, 'ansible_loop_var': 'item', 'changed': 0, 'failed': 0, 'invocation': {'module_args': {'session_timeout': None, 'state': 'stop', 'vcenter_hostname': 'vcenter.test', 'vcenter_password': 'VALUE_SPECIFIED_IN_NO_LOG_PARAMETER', 'vcenter_rest_log_file': '/tmp/vmware_rest.log', 'vcenter_username': 'administrator@vsphere.local', 'vcenter_validate_certs': 0, 'vm': 'vm-1024'}}, 'item': {'cpu_count': 1, 'memory_size_MiB': 1080, 'name': 'test_vm1', 'power_state': 'POWERED_ON', 'vm': 'vm-1024'}, 'value': {}}]


Status

Authors

  • Ansible Cloud Team (@ansible-collections)