community.vmware.vmware_guest_storage_policy module – Set VM Home and disk(s) storage policy profiles.
Note
This module is part of the community.vmware collection (version 6.1.0).
You might already have this collection installed if you are using the ansible package.
It is not included in ansible-core.
To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install community.vmware.
To use it in a playbook, specify: community.vmware.vmware_guest_storage_policy.
Synopsis
This module can be used to enforce storage policy profiles per disk and/or VM Home on a virtual machine.
Parameters
Parameter |
Comments |
|---|---|
SCSI controller number. Valid values range from 0 to 3. Default: |
|
Name of the storage profile policy to enforce for the disk. |
|
Disk Unit Number. Valid values range from 0 to 15. |
|
Destination folder, absolute or relative path to find an existing guest. This is a required parameter if multiple VMs are found with same name. The folder should include the datacenter. ESX’s datacenter is ha-datacenter. Examples: folder: /ha-datacenter/vm folder: ha-datacenter/vm folder: /datacenter1/vm folder: datacenter1/vm folder: /datacenter1/vm/folder1 folder: datacenter1/vm/folder1 folder: /folder1/datacenter1/vm folder: folder1/datacenter1/vm folder: /folder1/datacenter1/vm/folder2 |
|
The hostname or IP address of the vSphere vCenter server. If the value is not specified in the task, the value of environment variable |
|
The password of the vSphere vCenter server. If the value is not specified in the task, the value of environment variable |
|
The port number of the vSphere vCenter server. If the value is not specified in the task, the value of environment variable Default: |
|
The 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 |
|
The 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 |
|
The username of the vSphere vCenter server. If the value is not specified in the task, the value of environment variable |
|
Allows connection when SSL certificates are not valid. Set to If the value is not specified in the task, the value of environment variable Choices:
|
|
Notes
Note
All modules require API write access and hence are not supported on a free ESXi license.
All variables and VMware object names are case sensitive.
Modules may rely on the ‘requests’ python library, which does not use the system certificate store by default. You can specify the certificate store by setting the REQUESTS_CA_BUNDLE environment variable. Note having this variable set may cause a ‘false’ value for the ‘validate_certs’ option to be ignored in some cases. Example: ‘export REQUESTS_CA_BUNDLE=/path/to/your/ca_bundle.pem’
Examples
- name: Enforce storepol1 policy for disk 0 and 1 on SCSI controller 0 using UUID
community.vmware.vmware_guest_storage_policy:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
validate_certs: false
uuid: cefd316c-fc19-45f3-a539-2cd03427a78d
disk:
- unit_number: 0
controller_number: 0
policy: storepol1
- unit_number: 1
controller_number: 0
policy: storepol1
delegate_to: localhost
register: policy_status
- name: Enforce storepol1 policy for VM Home using name
community.vmware.vmware_guest_storage_policy:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
validate_certs: false
name: hostname1
vm_home: storepol1
delegate_to: localhost
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
|---|---|
Dictionary containing the changed policies of disk (list of dictionaries) and vm_home. Returned: always Sample: |
|
Informational message on the job result. Returned: always Sample: |