community.vmware.vcenter_license – Manage VMware vCenter license keys
Note
This plugin is part of the community.vmware collection (version 1.7.0).
To install it use: ansible-galaxy collection install community.vmware.
To use it in a playbook, specify: community.vmware.vcenter_license.
Synopsis
- Add and delete vCenter, ESXi server license keys.
Requirements
The below requirements are needed on the host that executes this module.
- pyVmomi
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
| cluster_name  string  | Name of the cluster to apply vSAN license. | |
| datacenter  string  | The datacenter name to use for the operation. | |
| esxi_hostname  string  | The hostname of the ESXi server to which the specified license will be assigned. This parameter is optional. | |
| hostname  string  | The hostname or IP address of the vSphere vCenter server. If the value is not specified in the task, the value of environment variable  VMWARE_HOSTwill be used instead.Environment variable supported added in Ansible 2.6. | |
| labels  dictionary  | Default: {"source": "ansible"} | The optional labels of the license key to manage in vSphere vCenter. This is dictionary with key/value pair. | 
| license  string / required  | The license key to manage in vSphere vCenter. | |
| password  string  | The password of the vSphere vCenter server. If the value is not specified in the task, the value of environment variable  VMWARE_PASSWORDwill be used instead.Environment variable supported added in Ansible 2.6. aliases: pass, pwd | |
| port  integer   added in 2.5 of ansible.builtin  | Default: 443 | The port number of the vSphere vCenter server. If the value is not specified in the task, the value of environment variable  VMWARE_PORTwill be used instead.Environment variable supported added in Ansible 2.6. | 
| proxy_host  string   added in 2.9 of ansible.builtin  | Address of a proxy that will receive all HTTPS requests and relay them. The format is a hostname or a IP. If the value is not specified in the task, the value of environment variable  VMWARE_PROXY_HOSTwill be used instead. | |
| proxy_port  integer   added in 2.9 of ansible.builtin  | Port of the HTTP proxy that will receive all HTTPS requests and relay them. If the value is not specified in the task, the value of environment variable  VMWARE_PROXY_PORTwill be used instead. | |
| state  string  | 
 | Whether to add ( present) or remove (absent) the license key. | 
| username  string  | The username of the vSphere vCenter server. If the value is not specified in the task, the value of environment variable  VMWARE_USERwill be used instead.Environment variable supported added in Ansible 2.6. aliases: admin, user | |
| validate_certs  boolean  | 
 | Allows connection when SSL certificates are not valid. Set to  falsewhen certificates are not trusted.If the value is not specified in the task, the value of environment variable  VMWARE_VALIDATE_CERTSwill be used instead.Environment variable supported added in Ansible 2.6. If set to  true, please make sure Python >= 2.7.9 is installed on the given machine. | 
Notes
Note
- This module will also auto-assign the current vCenter to the license key if the product matches the license key, and vCenter us currently assigned an evaluation license only.
- The evaluation license (00000-00000-00000-00000-00000) is not listed when unused.
- If esxi_hostnameis specified, then will assign thelicensekey to the ESXi host.
- If esxi_hostnameis not specified, then will just register thelicensekey to vCenter inventory without assigning it to an ESXi host.
Examples
- name: Add a new vCenter license
  community.vmware.vcenter_license:
    hostname: '{{ vcenter_hostname }}'
    username: '{{ vcenter_username }}'
    password: '{{ vcenter_password }}'
    license: f600d-21ae3-5592b-249e0-cc341
    state: present
  delegate_to: localhost
- name: Remove an (unused) vCenter license
  community.vmware.vcenter_license:
    hostname: '{{ vcenter_hostname }}'
    username: '{{ vcenter_username }}'
    password: '{{ vcenter_password }}'
    license: f600d-21ae3-5592b-249e0-cc341
    state: absent
  delegate_to: localhost
- name: Add ESXi license and assign to the ESXi host
  community.vmware.vcenter_license:
    hostname: '{{ vcenter_hostname }}'
    username: '{{ vcenter_username }}'
    password: '{{ vcenter_password }}'
    esxi_hostname: '{{ esxi_hostname }}'
    license: f600d-21ae3-5592b-249e0-dd502
    state: present
  delegate_to: localhost
- name: Add vSAN license and assign to the given cluster
  community.vmware.vcenter_license:
    hostname: '{{ vcenter_hostname }}'
    username: '{{ vcenter_username }}'
    password: '{{ vcenter_password }}'
    datacenter: '{{ datacenter_name }}'
    cluster_name: '{{ cluster_name }}'
    license: f600d-21ae3-5592b-249e0-dd502
    state: present
  delegate_to: localhost
   Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| licenses  list / elements=string  | always | list of license keys after module executed Sample: ['f600d-21ae3-5592b-249e0-cc341', '143cc-0e942-b2955-3ea12-d006f'] | 
Authors
- Dag Wieers (@dagwieers)
    © 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
    https://docs.ansible.com/ansible/2.11/collections/community/vmware/vcenter_license_module.html