vmware_cfg_backup – Backup / Restore / Reset ESXi host configuration

New in version 2.5.

Synopsis

  • This module can be used to perform various operations related to backup, restore and reset of ESXi host configuration.

Requirements

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

  • python >= 2.6

  • PyVmomi installed

Parameters

Parameter Choices/Defaults Comments
dest
-
The destination where the ESXi configuration bundle will be saved. The dest can be a folder or a file.
If dest is a folder, the backup file will be saved in the folder with the default filename generated from the ESXi server.
If dest is a file, the backup file will be saved with that filename. The file extension will always be .tgz.
esxi_hostname
-
Name of ESXi server. This is required only if authentication against a vCenter is done.
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.
src
-
The file containing the ESXi configuration that will be restored.
state
-
    Choices:
  • saved
  • absent
  • loaded
If saved, the .tgz backup bundle will be saved in dest.
If absent, the host configuration will be reset to default values.
If loaded, the backup file in src will be loaded to the ESXi host rewriting the hosts settings.
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
    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.
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.

Notes

Note

  • Tested on ESXi 6.0

  • Works only for ESXi hosts

  • For configuration save or reset, the host will be switched automatically to maintenance mode.

Examples

- name: Save the ESXi configuration locally by authenticating directly against the ESXi host
  vmware_cfg_backup:
    hostname: '{{ esxi_hostname }}'
    username: '{{ esxi_username }}'
    password: '{{ esxi_password }}'
    state: saved
    dest: /tmp/
  delegate_to: localhost

- name: Save the ESXi configuration locally by authenticating against the vCenter and selecting the ESXi host
  vmware_cfg_backup:
    hostname: '{{ vcenter_hostname }}'
    esxi_hostname: '{{ esxi_hostname }}'
    username: '{{ esxi_username }}'
    password: '{{ esxi_password }}'
    state: saved
    dest: /tmp/
  delegate_to: localhost

Return Values

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

Key Returned Description
dest_file
string
changed
The full path of where the file holding the ESXi configurations was stored

Sample:
/tmp/configBundle-esxi.host.domain.tgz


Status

Authors

  • Andreas Nafpliotis (@nafpliot-ibm)

Hint

If you notice any issues in this documentation you can edit this document to improve it.