category: IT Services provider: Broadcom commonfields: id: VMwareV2 version: -1 configuration: - additionalinfo: The hostname or IP address of the vSphere vCenter or ESXi server. display: Hostname name: hostname required: true type: 0 - additionalinfo: The port of the vSphere vCenter or ESXi server. defaultvalue: "443" display: Port name: port required: true type: 0 - additionalinfo: The username to access the vSphere vCenter or ESXi server. display: Username name: username required: true type: 0 - additionalinfo: The password to access the vSphere vCenter or ESXi server. display: Password name: password required: true type: 4 - additionalinfo: Allows connection when SSL certificates are not valid. Set to `false` when certificates are not trusted. defaultvalue: "True" display: Validate Certs name: validate_certs required: true type: 4 description: Manage VMware vSphere Server, Guests, and ESXi Hosts. Deprecated. Use Ansible VMware (from the Ansible VMware pack) instead. display: Ansible VMware (Deprecated) name: VMwareV2 script: commands: - arguments: [] description: Provides information about VMware server to which user is connecting to name: vmware-about-info - arguments: - description: The name of category to manage. name: category_name required: true - description: |- The category description. This is required only if `state` is set to `present`. This parameter is ignored, when `state` is set to `absent`. name: category_description - auto: PREDEFINED defaultValue: multiple description: |- The category cardinality. This parameter is ignored, when updating existing category. name: category_cardinality predefined: - multiple - single - description: |- The new name for an existing category. This value is used while updating an existing category. name: new_category_name - auto: PREDEFINED defaultValue: present description: |- The state of category. If set to `present` and category does not exists, then category is created. If set to `present` and category exists, then category is updated. If set to `absent` and category exists, then category is deleted. If set to `absent` and category does not exists, no action is taken. Process of updating category only allows name, description change. name: state predefined: - present - absent - auto: PREDEFINED defaultValue: https description: The connection to protocol. name: protocol predefined: - http - https description: Manage VMware categories name: vmware-category - arguments: - auto: PREDEFINED defaultValue: https description: The connection to protocol. name: protocol predefined: - http - https description: Gather info about VMware tag categories name: vmware-category-info - arguments: - description: Name of ESXi server. This is required only if authentication against a vCenter is done. name: esxi_hostname - description: |- 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. name: dest - description: The file containing the ESXi configuration that will be restored. name: src - auto: PREDEFINED description: |- 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. name: state predefined: - saved - absent - loaded description: Backup / Restore / Reset ESXi host configuration name: vmware-cfg-backup - arguments: - description: The name of the cluster to be managed. name: cluster_name required: true - description: The name of the datacenter. name: datacenter required: true - defaultValue: "no" description: If set to `yes`, DRS will not be configured; all explicit and default DRS related configurations will be ignored. name: ignore_drs - defaultValue: "no" description: If set to `yes`, HA will not be configured; all explicit and default HA related configurations will be ignored. name: ignore_ha - defaultValue: "no" description: If set to `yes`, VSAN will not be configured; all explicit and default VSAN related configurations will be ignored. name: ignore_vsan - defaultValue: "no" description: |- If set to `yes`, will enable DRS when the cluster is created. Use `enable_drs` of `vmware-cluster-drs` instead. Deprecated option, will be removed in version 2.12. name: enable_drs - defaultValue: "True" description: |- Determines whether DRS Behavior overrides for individual virtual machines are enabled. If set to `True`, overrides `drs_default_vm_behavior`. Use `drs_enable_vm_behavior_overrides` of `vmware-cluster-drs` instead. Deprecated option, will be removed in version 2.12. name: drs_enable_vm_behavior_overrides - auto: PREDEFINED defaultValue: fullyAutomated description: |- Specifies the cluster-wide default DRS behavior for virtual machines. If set to `partiallyAutomated`, then vCenter generate recommendations for virtual machine migration and for the placement with a host. vCenter automatically implement placement at power on. If set to `manual`, then vCenter generate recommendations for virtual machine migration and for the placement with a host. vCenter should not implement the recommendations automatically. If set to `fullyAutomated`, then vCenter should automate both the migration of virtual machines and their placement with a host at power on. Use `drs_default_vm_behavior` of `vmware-cluster-drs` instead. Deprecated option, will be removed in version 2.12. name: drs_default_vm_behavior predefined: - fullyAutomated - manual - partiallyAutomated - auto: PREDEFINED defaultValue: "3" description: |- Threshold for generated ClusterRecommendations. Use `drs_vmotion_rate` of `vmware-cluster-drs` instead. Deprecated option, will be removed in version 2.12. name: drs_vmotion_rate predefined: - "1" - "2" - "3" - "4" - "5" - defaultValue: "no" description: |- If set to `yes` will enable HA when the cluster is created. Use `enable_ha` of `vmware-cluster-ha` instead. Deprecated option, will be removed in version 2.12. name: enable_ha - auto: PREDEFINED defaultValue: enabled description: |- Indicates whether HA restarts virtual machines after a host fails. If set to `enabled`, HA restarts virtual machines after a host fails. If set to `disabled`, HA does not restart virtual machines after a host fails. If `enable_ha` is set to `no`, then this value is ignored. Use `ha_host_monitoring` of `vmware-cluster-ha` instead. Deprecated option, will be removed in version 2.12. name: ha_host_monitoring predefined: - enabled - disabled - auto: PREDEFINED defaultValue: vmMonitoringDisabled description: |- Indicates the state of virtual machine health monitoring service. If set to `vmAndAppMonitoring`, HA response to both virtual machine and application heartbeat failure. If set to `vmMonitoringDisabled`, virtual machine health monitoring is disabled. If set to `vmMonitoringOnly`, HA response to virtual machine heartbeat failure. If `enable_ha` is set to `no`, then this value is ignored. Use `ha_vm_monitoring` of `vmware-cluster-ha` instead. Deprecated option, will be removed in version 2.12. name: ha_vm_monitoring predefined: - vmAndAppMonitoring - vmMonitoringOnly - vmMonitoringDisabled - defaultValue: "2" description: |- Number of host failures that should be tolerated, still guaranteeing sufficient resources to restart virtual machines on available hosts. Accepts integer values only. Use `slot_based_admission_control`, `reservation_based_admission_control` or `failover_host_admission_control` of `vmware-cluster-ha` instead. Deprecated option, will be removed in version 2.12. name: ha_failover_level - defaultValue: "True" description: |- Determines if strict admission control is enabled. It is recommended to set this parameter to `True`, please refer documentation for more details. Use `slot_based_admission_control`, `reservation_based_admission_control` or `failover_host_admission_control` of `vmware-cluster-ha` instead. Deprecated option, will be removed in version 2.12. name: ha_admission_control_enabled - defaultValue: "30" description: |- The number of seconds after which virtual machine is declared as failed if no heartbeat has been received. This setting is only valid if `ha_vm_monitoring` is set to, either `vmAndAppMonitoring` or `vmMonitoringOnly`. Unit is seconds. Use `ha_vm_failure_interval` of `vmware-cluster-ha` instead. Deprecated option, will be removed in version 2.12. name: ha_vm_failure_interval - defaultValue: "120" description: |- The number of seconds for the virtual machine's heartbeats to stabilize after the virtual machine has been powered on. This setting is only valid if `ha_vm_monitoring` is set to, either `vmAndAppMonitoring` or `vmMonitoringOnly`. Unit is seconds. Use `ha_vm_min_up_time` of `vmware-cluster-ha` instead. Deprecated option, will be removed in version 2.12. name: ha_vm_min_up_time - defaultValue: "3" description: |- Maximum number of failures and automated resets allowed during the time that `ha_vm_max_failure_window` specifies. This setting is only valid if `ha_vm_monitoring` is set to, either `vmAndAppMonitoring` or `vmMonitoringOnly`. Use `ha_vm_max_failures` of `vmware-cluster-ha` instead. Deprecated option, will be removed in version 2.12. name: ha_vm_max_failures - defaultValue: "-1" description: |- The number of seconds for the window during which up to `ha_vm_max_failures` resets can occur before automated responses stop. This setting is only valid if `ha_vm_monitoring` is set to, either `vmAndAppMonitoring` or `vmMonitoringOnly`. Unit is seconds. Default specifies no failure window. Use `ha_vm_max_failure_window` of `vmware-cluster-ha` instead. Deprecated option, will be removed in version 2.12. name: ha_vm_max_failure_window - auto: PREDEFINED defaultValue: medium description: |- Determines the preference that HA gives to a virtual machine if sufficient capacity is not available to power on all failed virtual machines. This setting is only valid if `ha_vm_monitoring` is set to, either `vmAndAppMonitoring` or `vmMonitoringOnly`. If set to `disabled`, then HA is disabled for this virtual machine. If set to `high`, then virtual machine with this priority have a higher chance of powering on after a failure, when there is insufficient capacity on hosts to meet all virtual machine needs. If set to `medium`, then virtual machine with this priority have an intermediate chance of powering on after a failure, when there is insufficient capacity on hosts to meet all virtual machine needs. If set to `low`, then virtual machine with this priority have a lower chance of powering on after a failure, when there is insufficient capacity on hosts to meet all virtual machine needs. Use `ha_restart_priority` of `vmware-cluster-ha` instead. Deprecated option, will be removed in version 2.12. name: ha_restart_priority predefined: - disabled - high - low - medium - defaultValue: "no" description: |- If set to `yes` will enable vSAN when the cluster is created. Use `enable_vsan` of `vmware-cluster_vsan` instead. Deprecated option, will be removed in version 2.12. name: enable_vsan - defaultValue: "False" description: |- Determines whether the VSAN service is configured to automatically claim local storage on VSAN-enabled hosts in the cluster. Use `vsan_auto_claim_storage` of `vmware-cluster_vsan` instead. Deprecated option, will be removed in version 2.12. name: vsan_auto_claim_storage - auto: PREDEFINED defaultValue: present description: Create `present` or remove `absent` a VMware vSphere cluster. name: state predefined: - absent - present description: Manage VMware vSphere clusters name: vmware-cluster - arguments: - description: The name of the cluster to be managed. name: cluster_name required: true - description: The name of the datacenter. name: datacenter required: true - defaultValue: "no" description: Whether to enable DRS. name: enable_drs - defaultValue: "True" description: |- Whether DRS Behavior overrides for individual virtual machines are enabled. If set to `True`, overrides `drs_default_vm_behavior`. name: drs_enable_vm_behavior_overrides - auto: PREDEFINED defaultValue: fullyAutomated description: |- Specifies the cluster-wide default DRS behavior for virtual machines. If set to `partiallyAutomated`, vCenter generates recommendations for virtual machine migration and for the placement with a host, then automatically implements placement recommendations at power on. If set to `manual`, then vCenter generates recommendations for virtual machine migration and for the placement with a host, but does not implement the recommendations automatically. If set to `fullyAutomated`, then vCenter automates both the migration of virtual machines and their placement with a host at power on. name: drs_default_vm_behavior predefined: - fullyAutomated - manual - partiallyAutomated - auto: PREDEFINED defaultValue: "3" description: Threshold for generated ClusterRecommendations. name: drs_vmotion_rate predefined: - "1" - "2" - "3" - "4" - "5" description: Manage Distributed Resource Scheduler (DRS) on VMware vSphere clusters name: vmware-cluster-drs - arguments: - description: The name of the cluster to be managed. name: cluster_name required: true - description: The name of the datacenter. name: datacenter required: true - defaultValue: "no" description: Whether to enable HA. name: enable_ha - auto: PREDEFINED defaultValue: enabled description: |- Whether HA restarts virtual machines after a host fails. If set to `enabled`, HA restarts virtual machines after a host fails. If set to `disabled`, HA does not restart virtual machines after a host fails. If `enable_ha` is set to `no`, then this value is ignored. name: ha_host_monitoring predefined: - enabled - disabled - auto: PREDEFINED defaultValue: vmMonitoringDisabled description: |- State of virtual machine health monitoring service. If set to `vmAndAppMonitoring`, HA response to both virtual machine and application heartbeat failure. If set to `vmMonitoringDisabled`, virtual machine health monitoring is disabled. If set to `vmMonitoringOnly`, HA response to virtual machine heartbeat failure. If `enable_ha` is set to `no`, then this value is ignored. name: ha_vm_monitoring predefined: - vmAndAppMonitoring - vmMonitoringOnly - vmMonitoringDisabled - auto: PREDEFINED defaultValue: none description: |- Indicates whether or VMs should be powered off if a host determines that it is isolated from the rest of the compute resource. If set to `none`, do not power off VMs in the event of a host network isolation. If set to `powerOff`, power off VMs in the event of a host network isolation. If set to `shutdown`, shut down VMs guest operating system in the event of a host network isolation. name: host_isolation_response predefined: - none - powerOff - shutdown - description: |- Configure slot based admission control policy. `slot_based_admission_control`, `reservation_based_admission_control` and `failover_host_admission_control` are mutually exclusive. isArray: true name: slot_based_admission_control - description: |- Configure reservation based admission control policy. `slot_based_admission_control`, `reservation_based_admission_control` and `failover_host_admission_control` are mutually exclusive. isArray: true name: reservation_based_admission_control - description: |- Configure dedicated failover hosts. `slot_based_admission_control`, `reservation_based_admission_control` and `failover_host_admission_control` are mutually exclusive. isArray: true name: failover_host_admission_control - defaultValue: "30" description: |- The number of seconds after which virtual machine is declared as failed if no heartbeat has been received. This setting is only valid if `ha_vm_monitoring` is set to, either `vmAndAppMonitoring` or `vmMonitoringOnly`. Unit is seconds. name: ha_vm_failure_interval - defaultValue: "120" description: |- The number of seconds for the virtual machine's heartbeats to stabilize after the virtual machine has been powered on. Valid only when `ha_vm_monitoring` is set to either `vmAndAppMonitoring` or `vmMonitoringOnly`. Unit is seconds. name: ha_vm_min_up_time - defaultValue: "3" description: |- Maximum number of failures and automated resets allowed during the time that `ha_vm_max_failure_window` specifies. Valid only when `ha_vm_monitoring` is set to either `vmAndAppMonitoring` or `vmMonitoringOnly`. name: ha_vm_max_failures - defaultValue: "-1" description: |- The number of seconds for the window during which up to `ha_vm_max_failures` resets can occur before automated responses stop. Valid only when `ha_vm_monitoring` is set to either `vmAndAppMonitoring` or `vmMonitoringOnly`. Unit is seconds. Default specifies no failure window. name: ha_vm_max_failure_window - auto: PREDEFINED defaultValue: medium description: |- Priority HA gives to a virtual machine if sufficient capacity is not available to power on all failed virtual machines. Valid only if `ha_vm_monitoring` is set to either `vmAndAppMonitoring` or `vmMonitoringOnly`. If set to `disabled`, then HA is disabled for this virtual machine. If set to `high`, then virtual machine with this priority have a higher chance of powering on after a failure, when there is insufficient capacity on hosts to meet all virtual machine needs. If set to `medium`, then virtual machine with this priority have an intermediate chance of powering on after a failure, when there is insufficient capacity on hosts to meet all virtual machine needs. If set to `low`, then virtual machine with this priority have a lower chance of powering on after a failure, when there is insufficient capacity on hosts to meet all virtual machine needs. name: ha_restart_priority predefined: - disabled - high - low - medium description: Manage High Availability (HA) on VMware vSphere clusters name: vmware-cluster-ha - arguments: - description: |- Datacenter to search for cluster/s. This parameter is required, if `cluster_name` is not supplied. name: datacenter - description: |- Name of the cluster. If set, information of this cluster will be returned. This parameter is required, if `datacenter` is not supplied. name: cluster_name - defaultValue: "False" description: Tags related to cluster are shown if set to `True`. name: show_tag description: Gather info about clusters available in given vCenter name: vmware-cluster-info - arguments: - description: The name of the cluster to be managed. name: cluster_name required: true - description: The name of the datacenter. name: datacenter required: true - defaultValue: "no" description: Whether to enable vSAN. name: enable_vsan - defaultValue: "False" description: Whether the VSAN service is configured to automatically claim local storage on VSAN-enabled hosts in the cluster. name: vsan_auto_claim_storage description: Manages virtual storage area network (vSAN) configuration on VMware vSphere clusters name: vmware-cluster-vsan - arguments: - description: The name of template from which VM to be deployed. name: template required: true - description: The name of the VM to be deployed. name: name required: true - description: Name of the datacenter, where VM to be deployed. name: datacenter required: true - description: Name of the datastore to store deployed VM and disk. name: datastore required: true - description: Name of the folder in datacenter in which to place deployed VM. name: folder required: true - description: Name of the ESX Host in datacenter in which to place deployed VM. name: host required: true - description: Name of the resourcepool in datacenter in which to place deployed VM. name: resource_pool - description: Name of the cluster in datacenter in which to place deployed VM. name: cluster - auto: PREDEFINED defaultValue: present description: |- The state of Virtual Machine deployed from template in content library. If set to `present` and VM does not exists, then VM is created. If set to `present` and VM exists, no action is taken. If set to `poweredon` and VM does not exists, then VM is created with powered on state. If set to `poweredon` and VM exists, no action is taken. name: state predefined: - present - poweredon - auto: PREDEFINED defaultValue: https description: The connection to protocol. name: protocol predefined: - http - https description: Deploy Virtual Machine from template stored in content library. name: vmware-content-deploy-template - arguments: - description: content library id for which details needs to be fetched. name: library_id - auto: PREDEFINED defaultValue: https description: The connection to protocol. name: protocol predefined: - http - https description: Gather information about VMware Content Library name: vmware-content-library-info - arguments: - description: The name of VMware content library to manage. name: library_name required: true - description: |- The content library description. This is required only if `state` is set to `present`. This parameter is ignored, when `state` is set to `absent`. Process of updating content library only allows description change. name: library_description - auto: PREDEFINED defaultValue: local description: |- The content library type. This is required only if `state` is set to `present`. This parameter is ignored, when `state` is set to `absent`. name: library_type predefined: - local - subscribed - description: |- Name of the datastore on which backing content library is created. This is required only if `state` is set to `present`. This parameter is ignored, when `state` is set to `absent`. Currently only datastore backing creation is supported. name: datastore_name - auto: PREDEFINED defaultValue: present description: |- The state of content library. If set to `present` and library does not exists, then content library is created. If set to `present` and library exists, then content library is updated. If set to `absent` and library exists, then content library is deleted. If set to `absent` and library does not exists, no action is taken. name: state predefined: - present - absent - auto: PREDEFINED defaultValue: https description: The connection to protocol. name: protocol predefined: - http - https description: Create, update and delete VMware content library name: vmware-content-library-manager - arguments: - description: The name of the datacenter the cluster will be created in. name: datacenter_name required: true - auto: PREDEFINED defaultValue: present description: If the datacenter should be present or absent. name: state predefined: - present - absent description: Manage VMware vSphere Datacenters name: vmware-datacenter - arguments: - description: |- The name of the datacenter. You must specify either a `datacenter_name` or a `folder`. Mutually exclusive with `folder` parameter. name: datacenter_name - description: The name of the datastore cluster. name: datastore_cluster_name required: true - auto: PREDEFINED defaultValue: present description: If the datastore cluster should be present or absent. name: state predefined: - present - absent - description: |- Destination folder, absolute path to place datastore cluster in. The folder should include the datacenter. This parameter is case sensitive. You must specify either a `folder` or a `datacenter_name`. Examples: folder: /datacenter1/datastore folder: datacenter1/datastore folder: /datacenter1/datastore/folder1 folder: datacenter1/datastore/folder1 folder: /folder1/datacenter1/datastore folder: folder1/datacenter1/datastore folder: /folder1/datacenter1/datastore/folder2 name: folder description: Manage VMware vSphere datastore clusters name: vmware-datastore-cluster - arguments: - description: |- Name of the datastore to match. If set, information of specific datastores are returned. name: name - description: |- Datacenter to search for datastores. This parameter is required, if `cluster` is not supplied. name: datacenter - description: |- Cluster to search for datastores. If set, information of datastores belonging this clusters will be returned. This parameter is required, if `datacenter` is not supplied. name: cluster - defaultValue: "False" description: |- Gather mount information of NFS datastores. Disabled per default because this slows down the execution if you have a lot of datastores. name: gather_nfs_mount_info - defaultValue: "False" description: |- Gather mount information of VMFS datastores. Disabled per default because this slows down the execution if you have a lot of datastores. name: gather_vmfs_mount_info description: Gather info about datastores available in given vCenter name: vmware-datastore-info - arguments: - description: |- Name of datastore to manage. If `datastore_cluster` or `cluster_name` are not set, this parameter is required. name: datastore - description: |- Name of the datastore cluster from all child datastores to be managed. If `datastore` or `cluster_name` are not set, this parameter is required. name: datastore_cluster - description: |- Name of the cluster where datastore is connected to. If multiple datastores are connected to the given cluster, then all datastores will be managed by `state`. If `datastore` or `datastore_cluster` are not set, this parameter is required. name: cluster_name - auto: PREDEFINED defaultValue: present description: |- If set to `present`, then enter datastore into maintenance mode. If set to `present` and datastore is already in maintenance mode, then no action will be taken. If set to `absent` and datastore is in maintenance mode, then exit maintenance mode. If set to `absent` and datastore is not in maintenance mode, then no action will be taken. name: state predefined: - present - absent description: Place a datastore into maintenance mode name: vmware-datastore-maintenancemode - arguments: - description: The hostname that an ESXi host should be changed to. name: change_hostname_to required: true - description: The domain the ESXi host should be apart of. name: domainname required: true - description: The DNS servers that the host should be configured to use. isArray: true name: dns_servers required: true description: Manage VMware ESXi DNS Configuration name: vmware-dns-config - arguments: - description: Cluster to create vm/host group. name: cluster_name required: true - description: Datacenter to search for given cluster. If not set, we use first cluster we encounter with `cluster_name`. name: datacenter - description: The name of the group to create or remove. name: group_name required: true - description: |- List of hosts to create in group. Required only if `vms` is not set. isArray: true name: hosts - auto: PREDEFINED defaultValue: present description: |- If set to `present` and the group doesn't exists then the group will be created. If set to `absent` and the group exists then the group will be deleted. name: state predefined: - present - absent required: true - description: |- List of vms to create in group. Required only if `hosts` is not set. isArray: true name: vms description: Creates vm/host group in a given cluster. name: vmware-drs-group - arguments: - description: |- Cluster to search for VM/Host groups. If set, information of DRS groups belonging this cluster will be returned. Not needed if `datacenter` is set. name: cluster_name - description: Datacenter to search for DRS VM/Host groups. name: datacenter required: true description: Gathers info about DRS VM/Host groups on the given cluster name: vmware-drs-group-info - arguments: - description: |- Name of the cluster. DRS information for the given cluster will be returned. This is required parameter if `datacenter` parameter is not provided. name: cluster_name - description: |- Name of the datacenter. DRS information for all the clusters from the given datacenter will be returned. This is required parameter if `cluster_name` parameter is not provided. name: datacenter description: Gathers info about DRS rule on the given cluster name: vmware-drs-rule-info - arguments: - description: The ESXi hostname. name: esxi_hostname required: true - description: The name of the Distributed vSwitch. name: switch_name required: true - description: The ESXi hosts vmnics to use with the Distributed vSwitch. isArray: true name: vmnics required: true - auto: PREDEFINED defaultValue: present description: If the host should be present or absent attached to the vSwitch. name: state predefined: - present - absent required: true - description: |- List of key,value dictionaries for the Vendor Specific Configuration. Element attributes are: - `key` (str): Key of setting. (default: None) - `value` (str): Value of setting. (default: None) isArray: true name: vendor_specific_config description: Add or remove a host from distributed virtual switch name: vmware-dvs-host - arguments: - description: The name of the portgroup that is to be created or deleted. name: portgroup_name required: true - description: The name of the distributed vSwitch the port group should be created on. name: switch_name required: true - description: |- The VLAN ID that should be configured with the portgroup, use 0 for no VLAN. If `vlan_trunk` is configured to be `true`, this can be a combination of multiple ranges and numbers, example: 1-200, 205, 400-4094. The valid `vlan_id` range is from 0 to 4094. Overlapping ranges are allowed. name: vlan_id required: true - description: The number of ports the portgroup should contain. name: num_ports required: true - auto: PREDEFINED description: See VMware KB 1022312 regarding portgroup types. name: portgroup_type predefined: - earlyBinding - lateBinding - ephemeral required: true - auto: PREDEFINED description: Determines if the portgroup should be present or not. name: state predefined: - present - absent required: true - defaultValue: "False" description: Indicates whether this is a VLAN trunk or not. name: vlan_trunk - defaultValue: '{''promiscuous'': False, ''forged_transmits'': False, ''mac_changes'': False}' description: |- Dictionary which configures the different security values for portgroup. Valid attributes are: - `promiscuous` (bool): indicates whether promiscuous mode is allowed. (default: false) - `forged_transmits` (bool): indicates whether forged transmits are allowed. (default: false) - `mac_changes` (bool): indicates whether mac changes are allowed. (default: false) isArray: true name: network_policy - defaultValue: '{''notify_switches'': True, ''load_balance_policy'': ''loadbalance_srcid'', ''inbound_policy'': False, ''rolling_order'': False}' description: |- Dictionary which configures the different teaming values for portgroup. Valid attributes are: - `load_balance_policy` (string): Network adapter teaming policy. (default: loadbalance_srcid) - choices: [ loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, loadbalance_loadbased, failover_explicit] - "loadbalance_loadbased" is available from version 2.6 and onwards - `inbound_policy` (bool): Indicate whether or not the teaming policy is applied to inbound frames as well. (default: False) - `notify_switches` (bool): Indicate whether or not to notify the physical switch if a link fails. (default: false) - `rolling_order` (bool): Indicate whether or not to use a rolling policy when restoring links. (default: False) isArray: true name: teaming_policy - defaultValue: '{''traffic_filter_override'': False, ''network_rp_override'': False, ''live_port_move'': False, ''security_override'': False, ''vendor_config_override'': False, ''port_config_reset_at_disconnect'': True, ''uplink_teaming_override'': False, ''block_override'': True, ''shaping_override'': False, ''vlan_override'': False, ''ipfix_override'': False}' description: |- Dictionary which configures the advanced policy settings for the portgroup. Valid attributes are: - `block_override` (bool): indicates if the block policy can be changed per port. (default: false) - `ipfix_override` (bool): indicates if the ipfix policy can be changed per port. (default: false) - `live_port_move` (bool): indicates if a live port can be moved in or out of the portgroup. (default: false) - `network_rp_override` (bool): indicates if the network resource pool can be changed per port. (default: false) - `port_config_reset_at_disconnect` (bool): indicates if the configuration of a port is reset automatically after disconnect. (default: false) - `security_override` (bool): indicates if the security policy can be changed per port. (default: false) - `shaping_override` (bool): indicates if the shaping policy can be changed per port. (default: false) - `traffic_filter_override` (bool): indicates if the traffic filter can be changed per port. (default: false) - `uplink_teaming_override` (bool): indicates if the uplink teaming policy can be changed per port. (default: false) - `vendor_config_override` (bool): indicates if the vendor config can be changed per port. (default: false) - `vlan_override` (bool): indicates if the vlan can be changed per port. (default: false) isArray: true name: port_policy description: Create or remove a Distributed vSwitch portgroup. name: vmware-dvs-portgroup - arguments: - description: Name of a distributed vSwitch to look for. name: dvswitch - description: |- VLAN id can be any number between 1 and 4094. This search criteria will looks into VLAN ranges to find possible matches. name: vlanid - description: |- string to check inside the name of the portgroup. Basic containment check using python `in` operation. name: name - defaultValue: "False" description: |- Show or hide uplink portgroups. Only relevant when `vlanid` is supplied. name: show_uplink description: Find portgroup(s) in a VMware environment name: vmware-dvs-portgroup-find - arguments: - description: Name of the datacenter. name: datacenter required: true - description: Name of a dvswitch to look for. name: dvswitch - defaultValue: "True" description: Show or hide network policies of DVS portgroup. name: show_network_policy - defaultValue: "True" description: Show or hide port policies of DVS portgroup. name: show_port_policy - defaultValue: "True" description: Show or hide teaming policies of DVS portgroup. name: show_teaming_policy - defaultValue: "False" description: Show or hide vlan information of the DVS portgroup. name: show_vlan_info description: Gathers info DVS portgroup configurations name: vmware-dvs-portgroup-info - arguments: - description: |- The name of the datacenter that will contain the Distributed Switch. This parameter is optional, if `folder` is provided. Mutually exclusive with `folder` parameter. name: datacenter_name - description: The name of the distribute vSwitch to create or remove. name: switch_name required: true - auto: PREDEFINED description: |- The version of the Distributed Switch to create. Can be 6.0.0, 5.5.0, 5.1.0, 5.0.0 with a vCenter running vSphere 6.0 and 6.5. Can be 6.6.0, 6.5.0, 6.0.0 with a vCenter running vSphere 6.7. The version must match the version of the ESXi hosts you want to connect. The version of the vCenter server is used if not specified. Required only if `state` is set to `present`. name: switch_version predefined: - 5.0.0 - 5.1.0 - 5.5.0 - 6.0.0 - 6.5.0 - 6.6.0 - defaultValue: "1500" description: |- The switch maximum transmission unit. Required parameter for `state` both `present` and `absent`, before Ansible 2.6 version. Required only if `state` is set to `present`, for Ansible 2.6 and onwards. Accepts value between 1280 to 9000 (both inclusive). name: mtu - auto: PREDEFINED defaultValue: basic description: |- The multicast filtering mode. `basic` mode: multicast traffic for virtual machines is forwarded according to the destination MAC address of the multicast group. `snooping` mode: the Distributed Switch provides IGMP and MLD snooping according to RFC 4541. name: multicast_filtering_mode predefined: - basic - snooping - description: |- Quantity of uplink per ESXi host added to the Distributed Switch. The uplink quantity can be increased or decreased, but a decrease will only be successfull if the uplink isn't used by a portgroup. Required parameter for `state` both `present` and `absent`, before Ansible 2.6 version. Required only if `state` is set to `present`, for Ansible 2.6 and onwards. name: uplink_quantity - defaultValue: 'Uplink ' description: |- The prefix used for the naming of the uplinks. Only valid if the Distributed Switch will be created. Not used if the Distributed Switch is already present. Uplinks are created as Uplink 1, Uplink 2, etc. pp. by default. name: uplink_prefix - auto: PREDEFINED defaultValue: cdp description: |- Link discovery protocol between Cisco and Link Layer discovery. Required parameter for `state` both `present` and `absent`, before Ansible 2.6 version. Required only if `state` is set to `present`, for Ansible 2.6 and onwards. `cdp`: Use Cisco Discovery Protocol (CDP). `lldp`: Use Link Layer Discovery Protocol (LLDP). `disabled`: Do not use a discovery protocol. name: discovery_proto predefined: - cdp - lldp - disabled - auto: PREDEFINED defaultValue: listen description: |- Select the discovery operation. Required parameter for `state` both `present` and `absent`, before Ansible 2.6 version. Required only if `state` is set to `present`, for Ansible 2.6 and onwards. name: discovery_operation predefined: - both - advertise - listen - description: |- Dictionary which configures administrator contact name and description for the Distributed Switch. Valid attributes are: - `name` (str): Administrator name. - `description` (str): Description or other details. isArray: true name: contact - description: Description of the Distributed Switch. name: description - defaultValue: '{''vlan_mtu'': False, ''teaming_failover'': False, ''vlan_mtu_interval'': 0, ''teaming_failover_interval'': 0}' description: |- Dictionary which configures Health Check for the Distributed Switch. Valid attributes are: - `vlan_mtu` (bool): VLAN and MTU health check. (default: False) - `teaming_failover` (bool): Teaming and failover health check. (default: False) - `vlan_mtu_interval` (int): VLAN and MTU health check interval (minutes). (default: 0) - The default for `vlan_mtu_interval` is 1 in the vSphere Client if the VLAN and MTU health check is enabled. - `teaming_failover_interval` (int): Teaming and failover health check interval (minutes). (default: 0) - The default for `teaming_failover_interval` is 1 in the vSphere Client if the Teaming and failover health check is enabled. isArray: true name: health_check - auto: PREDEFINED defaultValue: present description: |- If set to `present` and the Distributed Switch doesn't exists then the Distributed Switch will be created. If set to `absent` and the Distributed Switch exists then the Distributed Switch will be deleted. name: state predefined: - present - absent - description: |- Destination folder, absolute path to place dvswitch in. The folder should include the datacenter. This parameter is case sensitive. This parameter is optional, if `datacenter` is provided. Examples: folder: /datacenter1/network folder: datacenter1/network folder: /datacenter1/network/folder1 folder: datacenter1/network/folder1 folder: /folder1/datacenter1/network folder: folder1/datacenter1/network folder: /folder1/datacenter1/network/folder2 name: folder description: Create or remove a Distributed Switch name: vmware-dvswitch - arguments: - description: The name of the Distributed Switch to manage. name: switch required: true - auto: PREDEFINED defaultValue: basic description: |- The LACP support mode. `basic`: One Link Aggregation Control Protocol group in the switch (singleLag). `enhanced`: Multiple Link Aggregation Control Protocol groups in the switch (multipleLag). name: support_mode predefined: - basic - enhanced - description: |- Can only be used if `lacp_support` is set to `enhanced`. The following parameters are required: - `name` (string): Name of the LAG. - `uplink_number` (int): Number of uplinks. Can 1 to 30. - `mode` (string): The negotiating state of the uplinks/ports. - choices: [ active, passive ] - `load_balancing_mode` (string): Load balancing algorithm. - Valid attributes are: - srcTcpUdpPort: Source TCP/UDP port number. - srcDestIpTcpUdpPortVlan: Source and destination IP, source and destination TCP/UDP port number and VLAN. - srcIpVlan: Source IP and VLAN. - srcDestTcpUdpPort: Source and destination TCP/UDP port number. - srcMac: Source MAC address. - destIp: Destination IP. - destMac: Destination MAC address. - vlan: VLAN only. - srcDestIp: Source and Destination IP. - srcIpTcpUdpPortVlan: Source IP, TCP/UDP port number and VLAN. - srcDestIpTcpUdpPort: Source and destination IP and TCP/UDP port number. - srcDestMac: Source and destination MAC address. - destIpTcpUdpPort: Destination IP and TCP/UDP port number. - srcPortId: Source Virtual Port Id. - srcIp: Source IP. - srcIpTcpUdpPort: Source IP and TCP/UDP port number. - destIpTcpUdpPortVlan: Destination IP, TCP/UDP port number and VLAN. - destTcpUdpPort: Destination TCP/UDP port number. - destIpVlan: Destination IP and VLAN. - srcDestIpVlan: Source and destination IP and VLAN. - The default load balancing mode in the vSphere Client is srcDestIpTcpUdpPortVlan. Please see examples for more information. isArray: true name: link_aggregation_groups description: Manage LACP configuration on a Distributed Switch name: vmware-dvswitch-lacp - arguments: - description: The name of the distributed switch. name: switch required: true - auto: PREDEFINED description: Network IO control version. name: version predefined: - version2 - version3 - auto: PREDEFINED defaultValue: present description: Enable or disable NIOC on the distributed switch. name: state predefined: - present - absent - description: 'List of dicts containing { name: Resource name is one of the following: "faultTolerance", "hbr", "iSCSI", "management", "nfs", "vdp", "virtualMachine", "vmotion", "vsan" limit: The maximum allowed usage for a traffic class belonging to this resource pool per host physical NIC. reservation: (Ignored if NIOC version is set to version2) Amount of bandwidth resource that is guaranteed available to the host infrastructure traffic class. If the utilization is less than the reservation, the extra bandwidth is used for other host infrastructure traffic class types. Reservation is not allowed to exceed the value of limit, if limit is set. Unit is Mbits/sec. shares_level: The allocation level ("low", "normal", "high", "custom"). The level is a simplified view of shares. Levels map to a pre-determined set of numeric values for shares. shares: Ignored unless shares_level is "custom". The number of shares allocated. reservation: Ignored unless version is "version3". Amount of bandwidth resource that is guaranteed available to the host infrastructure traffic class. }' isArray: true name: resources description: Manage distributed switch Network IO Control name: vmware-dvswitch-nioc - arguments: - description: The name of the Distributed Switch. name: switch required: true - defaultValue: '[]' description: |- A list of VLAN IDs that should be configured as Primary PVLANs. If `primary_pvlans` isn't specified, all PVLANs will be deleted if present. Each member of the list requires primary_pvlan_id (int) set. The secondary promiscuous PVLAN will be created automatically. If `secondary_pvlans` isn't specified, the primary PVLANs and each secondary promiscuous PVLAN will be created. Please see examples for more information. isArray: true name: primary_pvlans - defaultValue: '[]' description: |- A list of VLAN IDs that should be configured as Secondary PVLANs. `primary_pvlans` need to be specified to create any Secondary PVLAN. If `primary_pvlans` isn't specified, all PVLANs will be deleted if present. Each member of the list requires primary_pvlan_id (int), secondary_pvlan_id (int), and pvlan_type (str) to be set. The type of the secondary PVLAN can be isolated or community. The secondary promiscuous PVLAN will be created automatically. Please see examples for more information. isArray: true name: secondary_pvlans description: Manage Private VLAN configuration of a Distributed Switch name: vmware-dvswitch-pvlans - arguments: - description: The name of the Distributed Switch. name: switch required: true - description: |- The name of the uplink portgroup. The current name will be used if not specified. name: name - description: The description of the uplink portgroup. name: description - defaultValue: '{''port_config_reset_at_disconnect'': True, ''block_override'': True, ''vendor_config_override'': False, ''vlan_override'': False, ''netflow_override'': False, ''traffic_filter_override'': False}' description: |- Dictionary which configures the advanced policy settings for the uplink portgroup. Valid attributes are: - `port_config_reset_at_disconnect` (bool): indicates if the configuration of a port is reset automatically after disconnect. (default: false) - `block_override` (bool): indicates if the block policy can be changed per port. (default: false) - `netflow_override` (bool): indicates if the NetFlow policy can be changed per port. (default: false) - `traffic_filter_override` (bool): indicates if the traffic filter can be changed per port. (default: false) - `vendor_config_override` (bool): indicates if the vendor config can be changed per port. (default: false) - `vlan_override` (bool): indicates if the vlan can be changed per port. (default: false) isArray: true name: advanced - defaultValue: '[''0-4094'']' description: |- The VLAN trunk range that should be configured with the uplink portgroup. This can be a combination of multiple ranges and numbers, example: [ 2-3967, 4049-4092 ]. isArray: true name: vlan_trunk_range - defaultValue: '{''status'': ''disabled'', ''mode'': ''passive''}' description: |- Dictionary which configures the LACP settings for the uplink portgroup. The options are only used if the LACP support mode is set to 'basic'. The following parameters are required: - `status` (str): Indicates if LACP is enabled. (default: disabled) - `mode` (str): The negotiating state of the uplinks/ports. (default: passive) isArray: true name: lacp - defaultValue: "False" description: Indicates if NetFlow is enabled on the uplink portgroup. name: netflow_enabled - defaultValue: "False" description: Indicates if all ports are blocked on the uplink portgroup. name: block_all_ports description: Manage uplink portproup configuration of a Distributed Switch name: vmware-dvswitch-uplink-pg - arguments: - description: The name of the datacenter the cluster belongs to that you want to enable or disable EVC mode on. name: datacenter_name required: true - description: The name of the cluster to enable or disable EVC mode on. name: cluster_name required: true - description: |- Required for `state=present`. The EVC mode to enable or disable on the cluster. (intel-broadwell, intel-nehalem, intel-merom, etc.). name: evc_mode required: true - auto: PREDEFINED defaultValue: present description: Add or remove EVC mode. name: state predefined: - absent - present description: Enable/Disable EVC mode on vCenter name: vmware-evc-mode - arguments: - description: Name of the datacenter. name: datacenter required: true description: Provides information about folders in a datacenter name: vmware-folder-info - arguments: - auto: PREDEFINED defaultValue: present description: |- Specify the state the virtual machine should be in. If `state` is set to `present` and virtual machine exists, ensure the virtual machine configurations conforms to task arguments. If `state` is set to `absent` and virtual machine exists, then the specified virtual machine is removed with its associated components. If `state` is set to one of the following `poweredon`, `poweredoff`, `present`, `restarted`, `suspended` and virtual machine does not exists, then virtual machine is deployed with given parameters. If `state` is set to `poweredon` and virtual machine exists with powerstate other than powered on, then the specified virtual machine is powered on. If `state` is set to `poweredoff` and virtual machine exists with powerstate other than powered off, then the specified virtual machine is powered off. If `state` is set to `restarted` and virtual machine exists, then the virtual machine is restarted. If `state` is set to `suspended` and virtual machine exists, then the virtual machine is set to suspended mode. If `state` is set to `shutdownguest` and virtual machine exists, then the virtual machine is shutdown. If `state` is set to `rebootguest` and virtual machine exists, then the virtual machine is rebooted. name: state predefined: - present - absent - poweredon - poweredoff - restarted - suspended - shutdownguest - rebootguest - description: |- Name of the virtual machine to work with. Virtual machine names in vCenter are not necessarily unique, which may be problematic, see `name_match`. If multiple virtual machines with same name exists, then `folder` is required parameter to identify uniqueness of the virtual machine. This parameter is required, if `state` is set to `poweredon`, `poweredoff`, `present`, `restarted`, `suspended` and virtual machine does not exists. This parameter is case sensitive. name: name required: true - auto: PREDEFINED defaultValue: first description: If multiple virtual machines matching the name, use the first or last found. name: name_match predefined: - first - last - description: |- UUID of the virtual machine to manage if known, this is VMware's unique identifier. This is required if `name` is not supplied. If virtual machine does not exists, then this parameter is ignored. Please note that a supplied UUID will be ignored on virtual machine creation, as VMware creates the UUID internally. name: uuid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - description: |- Template or existing virtual machine used to create new virtual machine. If this value is not set, virtual machine is created without using a template. If the virtual machine already exists, this parameter will be ignored. This parameter is case sensitive. You can also specify template or VM UUID for identifying source. version_added 2.8. Use `hw_product_uuid` from `vmware_guest_facts` as UUID value. From version 2.8 onwards, absolute path to virtual machine or template can be used. name: template - defaultValue: "no" description: |- Flag the instance as a template. This will mark the given virtual machine as template. name: is_template - description: |- Destination folder, absolute path to find an existing guest or create the new guest. The folder should include the datacenter. ESX's datacenter is ha-datacenter. This parameter is case sensitive. This parameter is required, while deploying new virtual machine. version_added 2.5. If multiple machines are found with same name, this parameter is used to identify uniqueness of the virtual machine. version_added 2.5 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 name: folder - description: |- Manage virtual machine's hardware attributes. All parameters case sensitive. Valid attributes are: - `hotadd_cpu` (boolean): Allow virtual CPUs to be added while the virtual machine is running. - `hotremove_cpu` (boolean): Allow virtual CPUs to be removed while the virtual machine is running. version_added: 2.5 - `hotadd_memory` (boolean): Allow memory to be added while the virtual machine is running. - `memory_mb` (integer): Amount of memory in MB. - `nested_virt` (bool): Enable nested virtualization. version_added: 2.5 - `num_cpus` (integer): Number of CPUs. - `num_cpu_cores_per_socket` (integer): Number of Cores Per Socket. `num_cpus` must be a multiple of `num_cpu_cores_per_socket`. For example to create a VM with 2 sockets of 4 cores, specify `num_cpus`: 8 and `num_cpu_cores_per_socket`: 4 - `scsi` (string): Valid values are `buslogic`, `lsilogic`, `lsilogicsas` and `paravirtual` (default). - `memory_reservation_lock` (boolean): If set true, memory resource reservation for the virtual machine will always be equal to the virtual machine's memory size. version_added: 2.5 - `max_connections` (integer): Maximum number of active remote display connections for the virtual machines. version_added: 2.5. - `mem_limit` (integer): The memory utilization of a virtual machine will not exceed this limit. Unit is MB. version_added: 2.5 - `mem_reservation` (integer): The amount of memory resource that is guaranteed available to the virtual machine. Unit is MB. `memory_reservation` is alias to this. version_added: 2.5 - `cpu_limit` (integer): The CPU utilization of a virtual machine will not exceed this limit. Unit is MHz. version_added: 2.5 - `cpu_reservation` (integer): The amount of CPU resource that is guaranteed available to the virtual machine. Unit is MHz. version_added: 2.5 - `version` (integer): The Virtual machine hardware versions. Default is 10 (ESXi 5.5 and onwards). Please check VMware documentation for correct virtual machine hardware version. Incorrect hardware version may lead to failure in deployment. If hardware version is already equal to the given version then no action is taken. version_added: 2.6 - `boot_firmware` (string): Choose which firmware should be used to boot the virtual machine. Allowed values are "bios" and "efi". version_added: 2.7 - `virt_based_security` (bool): Enable Virtualization Based Security feature for Windows 10. (Support from Virtual machine hardware version 14, Guest OS Windows 10 64 bit, Windows Server 2016) name: hardware - description: |- Set the guest ID. This parameter is case sensitive. Examples: virtual machine with RHEL7 64 bit, will be 'rhel7_64Guest' virtual machine with CentOS 64 bit, will be 'centos64Guest' virtual machine with Ubuntu 64 bit, will be 'ubuntu64Guest' This field is required when creating a virtual machine, not required when creating from the template. Valid values are referenced here: `https://code.vmware.com/apis/358/doc/vim.vm.GuestOsDescriptor.GuestOsIdentifier.html` name: guest_id - description: |- A list of disks to add. This parameter is case sensitive. Shrinking disks is not supported. Removing existing disks of the virtual machine is not supported. Valid attributes are: - `size_[tb,gb,mb,kb]` (integer): Disk storage size in specified unit. - `type` (string): Valid values are: - `thin` thin disk - `eagerzeroedthick` eagerzeroedthick disk, added in version 2.5 Default: `None` thick disk, no eagerzero. - `datastore` (string): The name of datastore which will be used for the disk. If `autoselect_datastore` is set to True, then will select the less used datastore whose name contains this "disk.datastore" string. - `filename` (string): Existing disk image to be used. Filename must already exist on the datastore. Specify filename string in `[datastore_name] path/to/file.vmdk` format. Added in version 2.8. - `autoselect_datastore` (bool): select the less used datastore. "disk.datastore" and "disk.autoselect_datastore" will not be used if `datastore` is specified outside this `disk` configuration. - `disk_mode` (string): Type of disk mode. Added in version 2.6 - Available options are : - `persistent`: Changes are immediately and permanently written to the virtual disk. This is default. - `independent_persistent`: Same as persistent, but not affected by snapshots. - `independent_nonpersistent`: Changes to virtual disk are made to a redo log and discarded at power off, but not affected by snapshots. name: disk - description: |- A CD-ROM configuration for the virtual machine. Or a list of CD-ROMs configuration for the virtual machine. Added in version 2.9. Parameters `controller_type`, `controller_number`, `unit_number`, `state` are added for a list of CD-ROMs configuration support. Valid attributes are: - `type` (string): The type of CD-ROM, valid options are `none`, `client` or `iso`. With `none` the CD-ROM will be disconnected but present. - `iso_path` (string): The datastore path to the ISO file to use, in the form of `[datastore1] path/to/file.iso`. Required if type is set `iso`. - `controller_type` (string): Default value is `ide`. Only `ide` controller type for CD-ROM is supported for now, will add SATA controller type in the future. - `controller_number` (int): For `ide` controller, valid value is 0 or 1. - `unit_number` (int): For CD-ROM device attach to `ide` controller, valid value is 0 or 1. `controller_number` and `unit_number` are mandatory attributes. - `state` (string): Valid value is `present` or `absent`. Default is `present`. If set to `absent`, then the specified CD-ROM will be removed. For `ide` controller, hot-add or hot-remove CD-ROM is not supported. name: cdrom - description: |- Use the given resource pool for virtual machine operation. This parameter is case sensitive. Resource pool should be child of the selected host parent. name: resource_pool - defaultValue: "no" description: |- Wait until vCenter detects an IP address for the virtual machine. This requires vmware-tools (vmtoolsd) to properly work after creation. vmware-tools needs to be installed on the given virtual machine in order to work with this parameter. name: wait_for_ip_address - defaultValue: "no" description: |- Wait until vCenter detects all guest customizations as successfully completed. When enabled, the VM will automatically be powered on. name: wait_for_customization - defaultValue: "0" description: |- If the `state` is set to `shutdownguest`, by default the module will return immediately after sending the shutdown signal. If this argument is set to a positive integer, the module will instead wait for the virtual machine to reach the poweredoff state. The value sets a timeout in seconds for the module to wait for the state change. name: state_change_timeout - description: |- Name of the existing snapshot to use to create a clone of a virtual machine. This parameter is case sensitive. While creating linked clone using `linked_clone` parameter, this parameter is required. name: snapshot_src - defaultValue: "no" description: |- Whether to create a linked clone from the snapshot specified. If specified, then `snapshot_src` is required parameter. name: linked_clone - defaultValue: "no" description: |- Ignore warnings and complete the actions. This parameter is useful while removing virtual machine which is powered on state. This module reflects the VMware vCenter API and UI workflow, as such, in some cases the `force` flag will be mandatory to perform the action to ensure you are certain the action has to be taken, no matter what the consequence. This is specifically the case for removing a powered on the virtual machine when `state` is set to `absent`. name: force - defaultValue: ha-datacenter description: |- Destination datacenter for the deploy operation. This parameter is case sensitive. name: datacenter - description: |- The cluster name where the virtual machine will run. This is a required parameter, if `esxi_hostname` is not set. `esxi_hostname` and `cluster` are mutually exclusive parameters. This parameter is case sensitive. name: cluster - description: |- The ESXi hostname where the virtual machine will run. This is a required parameter, if `cluster` is not set. `esxi_hostname` and `cluster` are mutually exclusive parameters. This parameter is case sensitive. name: esxi_hostname - description: A note or annotation to include in the virtual machine. name: annotation - description: |- Define a list of custom values to set on virtual machine. A custom value object takes two fields `key` and `value`. Incorrect key and values will be ignored. name: customvalues - description: |- A list of networks (in the order of the NICs). Removing NICs is not allowed, while reconfiguring the virtual machine. All parameters and VMware object names are case sensitive. One of the below parameters is required per entry: - `name` (string): Name of the portgroup or distributed virtual portgroup for this interface. When specifying distributed virtual portgroup make sure given `esxi_hostname` or `cluster` is associated with it. - `vlan` (integer): VLAN number for this interface. Optional parameters per entry (used for virtual hardware): - `device_type` (string): Virtual network device (one of `e1000`, `e1000e`, `pcnet32`, `vmxnet2`, `vmxnet3` (default), `sriov`). - `mac` (string): Customize MAC address. - `dvswitch_name` (string): Name of the distributed vSwitch. This value is required if multiple distributed portgroups exists with the same name. version_added 2.7 - `start_connected` (bool): Indicates that virtual network adapter starts with associated virtual machine powers on. version_added: 2.5 Optional parameters per entry (used for OS customization): - `type` (string): Type of IP assignment (either `dhcp` or `static`). `dhcp` is default. - `ip` (string): Static IP address (implies `type: static`). - `netmask` (string): Static netmask required for `ip`. - `gateway` (string): Static gateway. - `dns_servers` (string): DNS servers for this network interface (Windows). - `domain` (string): Domain name for this network interface (Windows). - `wake_on_lan` (bool): Indicates if wake-on-LAN is enabled on this virtual network adapter. version_added: 2.5 - `allow_guest_control` (bool): Enables guest control over whether the connectable device is connected. version_added: 2.5 name: networks - description: |- Parameters for OS customization when cloning from the template or the virtual machine, or apply to the existing virtual machine directly. Not all operating systems are supported for customization with respective vCenter version, please check VMware documentation for respective OS customization. For supported customization operating system matrix, (see `http://partnerweb.vmware.com/programs/guestOS/guest-os-customization-matrix.pdf`) All parameters and VMware object names are case sensitive. Linux based OSes requires Perl package to be installed for OS customizations. Common parameters (Linux/Windows): - `existing_vm` (bool): If set to `True`, do OS customization on the specified virtual machine directly. If set to `False` or not specified, do OS customization when cloning from the template or the virtual machine. version_added: 2.8 - `dns_servers` (list): List of DNS servers to configure. - `dns_suffix` (list): List of domain suffixes, also known as DNS search path (default: `domain` parameter). - `domain` (string): DNS domain name to use. - `hostname` (string): Computer hostname (default: shorted `name` parameter). Allowed characters are alphanumeric (uppercase and lowercase) and minus, rest of the characters are dropped as per RFC 952. Parameters related to Linux customization: - `timezone` (string): Timezone (See List of supported time zones for different vSphere versions in Linux/Unix systems (2145518) `https://kb.vmware.com/s/article/2145518`). version_added: 2.9 - `hwclockUTC` (bool): Specifies whether the hardware clock is in UTC or local time. True when the hardware clock is in UTC, False when the hardware clock is in local time. version_added: 2.9 Parameters related to Windows customization: - `autologon` (bool): Auto logon after virtual machine customization (default: False). - `autologoncount` (int): Number of autologon after reboot (default: 1). - `domainadmin` (string): User used to join in AD domain (mandatory with `joindomain`). - `domainadminpassword` (string): Password used to join in AD domain (mandatory with `joindomain`). - `fullname` (string): Server owner name (default: Administrator). - `joindomain` (string): AD domain to join (Not compatible with `joinworkgroup`). - `joinworkgroup` (string): Workgroup to join (Not compatible with `joindomain`, default: WORKGROUP). - `orgname` (string): Organisation name (default: ACME). - `password` (string): Local administrator password. - `productid` (string): Product ID. - `runonce` (list): List of commands to run at first user logon. - `timezone` (int): Timezone (See `https://msdn.microsoft.com/en-us/library/ms912391.aspx`). name: customization - description: |- A list of vApp properties For full list of attributes and types refer to: `https://github.com/vmware/pyvmomi/blob/master/docs/vim/vApp/PropertyInfo.rst` Basic attributes are: - `id` (string): Property id - required. - `value` (string): Property value. - `type` (string): Value type, string type by default. - `operation`: `remove`: This attribute is required only when removing properties. name: vapp_properties - description: |- Unique name identifying the requested customization specification. This parameter is case sensitive. If set, then overrides `customization` parameter values. name: customization_spec - description: |- Specify datastore or datastore cluster to provision virtual machine. This parameter takes precedence over "disk.datastore" parameter. This parameter can be used to override datastore or datastore cluster setting of the virtual machine when deployed from the template. Please see example for more usage. name: datastore - auto: PREDEFINED description: Specify convert disk type while cloning template or virtual machine. name: convert predefined: - thin - thick - eagerzeroedthick description: Manages virtual machines in vCenter name: vmware-guest - arguments: - description: |- Name of the VM to work with. This is required if `uuid` or `moid` parameter is not supplied. name: name - description: |- UUID of the instance to manage if known, this is VMware's BIOS UUID by default. This is required if `name` or `moid` parameter is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - auto: PREDEFINED defaultValue: first description: If multiple virtual machines matching the name, use the first or last found. name: name_match predefined: - first - last description: Gather info about boot options for the given virtual machine name: vmware-guest-boot-info - arguments: - description: |- Name of the VM to work with. This is required if `uuid` or `moid` parameter is not supplied. name: name - description: |- UUID of the instance to manage if known, this is VMware's BIOS UUID by default. This is required if `name` or `moid` parameter is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - defaultValue: '[]' description: List of the boot devices. isArray: true name: boot_order - auto: PREDEFINED defaultValue: first description: If multiple virtual machines matching the name, use the first or last found. name: name_match predefined: - first - last - defaultValue: "0" description: Delay in milliseconds before starting the boot sequence. name: boot_delay - defaultValue: "False" description: |- If set to `True`, the virtual machine automatically enters BIOS setup the next time it boots. The virtual machine resets this flag, so that the machine boots proceeds normally. name: enter_bios_setup - defaultValue: "False" description: |- If set to `True`, the virtual machine that fails to boot, will try to boot again after `boot_retry_delay` is expired. If set to `False`, the virtual machine waits indefinitely for user intervention. name: boot_retry_enabled - defaultValue: "0" description: |- Specify the time in milliseconds between virtual machine boot failure and subsequent attempt to boot again. If set, will automatically set `boot_retry_enabled` to `True` as this parameter is required. name: boot_retry_delay - auto: PREDEFINED description: Choose which firmware should be used to boot the virtual machine. name: boot_firmware predefined: - bios - efi - defaultValue: "False" description: Choose if EFI secure boot should be enabled. EFI secure boot can only be enabled with boot_firmware = efi name: secure_boot_enabled description: Manage boot options for the given virtual machine name: vmware-guest-boot-manager - arguments: - description: |- Name of the custom attribute definition. This is required parameter, if `state` is set to `present` or `absent`. name: attribute_key - auto: PREDEFINED defaultValue: present description: |- Manage definition of custom attributes. If set to `present` and definition not present, then custom attribute definition is created. If set to `present` and definition is present, then no action taken. If set to `absent` and definition is present, then custom attribute definition is removed. If set to `absent` and definition is absent, then no action taken. name: state predefined: - present - absent required: true description: Manage custom attributes definitions for virtual machine from VMware name: vmware-guest-custom-attribute-defs - arguments: - description: |- Name of the virtual machine to work with. This is required parameter, if `uuid` or `moid` is not supplied. name: name required: true - auto: PREDEFINED defaultValue: present description: |- The action to take. If set to `present`, then custom attribute is added or updated. If set to `absent`, then custom attribute is removed. name: state predefined: - present - absent - description: |- UUID of the virtual machine to manage if known. This is VMware's unique identifier. This is required parameter, if `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - description: |- Absolute path to find an existing guest. This is required parameter, if `name` is supplied and multiple virtual machines with same name are found. name: folder - description: Datacenter name where the virtual machine is located in. name: datacenter required: true - defaultValue: '[]' description: |- A list of name and value of custom attributes that needs to be manage. Value of custom attribute is not required and will be ignored, if `state` is set to `absent`. isArray: true name: attributes description: Manage custom attributes from VMware for the given virtual machine name: vmware-guest-custom-attributes - arguments: - description: Name of customization specification to find. name: spec_name description: Gather info about VM customization specifications name: vmware-guest-customization-info - arguments: - description: |- Name of the virtual machine. This is a required parameter, if parameter `uuid` or `moid` is not supplied. name: name - description: |- UUID of the instance to gather facts if known, this is VMware's unique identifier. This is a required parameter, if parameter `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - description: |- Destination folder, absolute or relative path to find an existing guest. This is a required parameter, only 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 name: folder - description: The datacenter name to which virtual machine belongs to. name: datacenter required: true - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - defaultValue: '[]' description: |- A list of disks to add. The virtual disk related information is provided using this list. All values and parameters are case sensitive. Valid attributes are: - `size[_tb,_gb,_mb,_kb]` (integer): Disk storage size in specified unit. If `size` specified then unit must be specified. There is no space allowed in between size number and unit. Only first occurrence in disk element will be considered, even if there are multiple size* parameters available. - `type` (string): Valid values are: - `thin` thin disk - `eagerzeroedthick` eagerzeroedthick disk - `thick` thick disk Default: `thick` thick disk, no eagerzero. - `datastore` (string): Name of datastore or datastore cluster to be used for the disk. - `autoselect_datastore` (bool): Select the less used datastore. Specify only if `datastore` is not specified. - `scsi_controller` (integer): SCSI controller number. Valid value range from 0 to 3. Only 4 SCSI controllers are allowed per VM. Care should be taken while specifying `scsi_controller` is 0 and `unit_number` as 0 as this disk may contain OS. - `unit_number` (integer): Disk Unit Number. Valid value range from 0 to 15. Only 15 disks are allowed per SCSI Controller. - `scsi_type` (string): Type of SCSI controller. This value is required only for the first occurrence of SCSI Controller. This value is ignored, if SCSI Controller is already present or `state` is `absent`. Valid values are `buslogic`, `lsilogic`, `lsilogicsas` and `paravirtual`. `paravirtual` is default value for this parameter. - `state` (string): State of disk. This is either "absent" or "present". If `state` is set to `absent`, disk will be removed permanently from virtual machine configuration and from VMware storage. If `state` is set to `present`, disk will be added if not present at given SCSI Controller and Unit Number. If `state` is set to `present` and disk exists with different size, disk size is increased. Reducing disk size is not allowed. isArray: true name: disk description: Manage disks related to virtual machine in given vCenter infrastructure name: vmware-guest-disk - arguments: - description: |- Name of the virtual machine. This is required parameter, if parameter `uuid` or `moid` is not supplied. name: name - description: |- UUID of the instance to gather information if known, this is VMware's unique identifier. This is required parameter, if parameter `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - description: |- Destination folder, absolute or relative path to find an existing guest. This is required parameter, only 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 name: folder - description: The datacenter name to which virtual machine belongs to. name: datacenter required: true description: Gather info about disks of given virtual machine name: vmware-guest-disk-info - arguments: - description: |- Name of the VM to work with. This is required if `uuid` parameter is not supplied. name: name - description: |- UUID of the instance to manage if known, this is VMware's BIOS UUID by default. This is required if `name` parameter is not supplied. name: uuid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - description: |- Destination datacenter for the find operation. Deprecated in 2.5, will be removed in 2.9 release. name: datacenter description: Find the folder path(s) for a virtual machine by name or UUID name: vmware-guest-find - arguments: - description: |- Name of the VM to work with This is required if `uuid` or `moid` is not supplied. name: name - auto: PREDEFINED defaultValue: first description: If multiple VMs matching the name, use the first or last found name: name_match predefined: - first - last - description: |- UUID of the instance to manage if known, this is VMware's unique identifier. This is required if `name` or `moid` is not supplied. name: uuid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - description: |- Destination folder, absolute or relative path to find an existing guest. This is required if name is supplied. 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 name: folder - description: Destination datacenter for the deploy operation name: datacenter required: true - defaultValue: "no" description: |- Whether to show tags or not. If set `True`, shows tag information. If set `False`, hides tags information. vSphere Automation SDK and vCloud Suite SDK is required. name: tags - auto: PREDEFINED defaultValue: summary description: |- Specify the output schema desired. The 'summary' output schema is the legacy output from the module The 'vsphere' output schema is the vSphere API class definition which requires pyvmomi>6.7.1 name: schema predefined: - summary - vsphere - description: |- Specify the properties to retrieve. If not specified, all properties are retrieved (deeply). Results are returned in a structure identical to the vsphere API. Example: properties: [ "config.hardware.memoryMB", "config.hardware.numCPU", "guest.disk", "overallStatus" ] Only valid when `schema` is `vsphere`. isArray: true name: properties description: Gather info about a single VM name: vmware-guest-info - arguments: - description: |- Name of the existing virtual machine to move. This is required if `uuid` or `moid` is not supplied. name: name - description: |- UUID of the virtual machine to manage if known, this is VMware's unique identifier. This is required if `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - auto: PREDEFINED defaultValue: first description: If multiple virtual machines matching the name, use the first or last found. name: name_match predefined: - first - last - description: |- Absolute path to move an existing guest The dest_folder should include the datacenter. ESX's datacenter is ha-datacenter. This parameter is case sensitive. Examples: dest_folder: /ha-datacenter/vm dest_folder: ha-datacenter/vm dest_folder: /datacenter1/vm dest_folder: datacenter1/vm dest_folder: /datacenter1/vm/folder1 dest_folder: datacenter1/vm/folder1 dest_folder: /folder1/datacenter1/vm dest_folder: folder1/datacenter1/vm dest_folder: /folder1/datacenter1/vm/folder2 name: dest_folder required: true - description: Destination datacenter for the move operation name: datacenter required: true description: Moves virtual machines in vCenter name: vmware-guest-move - arguments: - description: |- Name of the virtual machine. This is a required parameter, if parameter `uuid` or `moid` is not supplied. name: name - description: |- UUID of the instance to gather info if known, this is VMware's unique identifier. This is a required parameter, if parameter `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - description: |- Destination folder, absolute or relative path to find an existing guest. This is a required parameter, only if multiple VMs are found with same name. The folder should include the datacenter. ESXi server'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 name: folder - description: |- The name of cluster where the virtual machine will run. This is a required parameter, if `esxi_hostname` is not set. `esxi_hostname` and `cluster` are mutually exclusive parameters. name: cluster - description: |- The ESXi hostname where the virtual machine will run. This is a required parameter, if `cluster` is not set. `esxi_hostname` and `cluster` are mutually exclusive parameters. name: esxi_hostname - defaultValue: ha-datacenter description: The datacenter name to which virtual machine belongs to. name: datacenter - defaultValue: "False" description: |- If set to `True`, return settings of all network adapters, other parameters are ignored. If set to `False`, will add, reconfigure or remove network adapters according to the parameters in `networks`. name: gather_network_info - description: |- A list of network adapters. `mac` or `label` or `device_type` is required to reconfigure or remove an existing network adapter. If there are multiple network adapters with the same `device_type`, you should set `label` or `mac` to match one of them, or will apply changes on all network adapters with the `device_type` specified. `mac`, `label`, `device_type` is the order of precedence from greatest to least if all set. Valid attributes are: - `mac` (string): MAC address of the existing network adapter to be reconfigured or removed. - `label` (string): Label of the existing network adapter to be reconfigured or removed, e.g., "Network adapter 1". - `device_type` (string): Valid virtual network device types are: `e1000`, `e1000e`, `pcnet32`, `vmxnet2`, `vmxnet3` (default), `sriov`. Used to add new network adapter, reconfigure or remove the existing network adapter with this type. If `mac` and `label` not specified or not find network adapter by `mac` or `label` will use this parameter. - `name` (string): Name of the portgroup or distributed virtual portgroup for this interface. When specifying distributed virtual portgroup make sure given `esxi_hostname` or `cluster` is associated with it. - `vlan` (integer): VLAN number for this interface. - `dvswitch_name` (string): Name of the distributed vSwitch. This value is required if multiple distributed portgroups exists with the same name. - `state` (string): State of the network adapter. If set to `present`, then will do reconfiguration for the specified network adapter. If set to `new`, then will add the specified network adapter. If set to `absent`, then will remove this network adapter. - `manual_mac` (string): Manual specified MAC address of the network adapter when creating, or reconfiguring. If not specified when creating new network adapter, mac address will be generated automatically. When reconfigure MAC address, VM should be in powered off state. - `connected` (bool): Indicates that virtual network adapter connects to the associated virtual machine. - `start_connected` (bool): Indicates that virtual network adapter starts with associated virtual machine powers on. isArray: true name: networks description: Manage network adapters of specified virtual machine in given vCenter infrastructure name: vmware-guest-network - arguments: - auto: PREDEFINED defaultValue: present description: Set the state of the virtual machine. name: state predefined: - powered-off - powered-on - reboot-guest - restarted - shutdown-guest - suspended - present - description: |- Name of the virtual machine to work with. Virtual machine names in vCenter are not necessarily unique, which may be problematic, see `name_match`. name: name - auto: PREDEFINED defaultValue: first description: If multiple virtual machines matching the name, use the first or last found. name: name_match predefined: - first - last - description: |- UUID of the instance to manage if known, this is VMware's unique identifier. This is required if `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - description: |- Destination folder, absolute or relative path to find an existing guest. 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 name: folder - description: |- Date and time in string format at which specified task needs to be performed. The required format for date and time - 'dd/mm/yyyy hh:mm'. Scheduling task requires vCenter server. A standalone ESXi server does not support this option. name: scheduled_at - description: |- Name of schedule task. Valid only if `scheduled_at` is specified. name: schedule_task_name - description: |- Description of schedule task. Valid only if `scheduled_at` is specified. name: schedule_task_description - defaultValue: "True" description: Flag to indicate whether the scheduled task is enabled or disabled. name: schedule_task_enabled - defaultValue: "False" description: |- Ignore warnings and complete the actions. This parameter is useful while forcing virtual machine state. name: force - defaultValue: "0" description: |- If the `state` is set to `shutdown-guest`, by default the module will return immediately after sending the shutdown signal. If this argument is set to a positive integer, the module will instead wait for the VM to reach the poweredoff state. The value sets a timeout in seconds for the module to wait for the state change. name: state_change_timeout description: Manages power states of virtual machines in vCenter name: vmware-guest-powerstate - arguments: - description: |- Name of the virtual machine. This is a required parameter, if parameter `uuid` or `moid` is not supplied. name: name - description: |- UUID of the instance to gather facts if known, this is VMware's unique identifier. This is a required parameter, if parameter `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - description: |- Destination folder, absolute or relative path to find an existing guest. This is a required parameter, only if multiple VMs are found with same name. The folder should include the datacenter. ESXi server'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 name: folder - description: |- The name of cluster where the virtual machine is running. This is a required parameter, if `esxi_hostname` is not set. `esxi_hostname` and `cluster` are mutually exclusive parameters. name: cluster - description: |- The ESXi hostname where the virtual machine is running. This is a required parameter, if `cluster` is not set. `esxi_hostname` and `cluster` are mutually exclusive parameters. name: esxi_hostname - description: The datacenter name to which virtual machine belongs to. name: datacenter - description: |- If `local_path` is not set, the created screenshot file will be kept in the directory of the virtual machine on ESXi host. If `local_path` is set to a valid path on local machine, then the screenshot file will be downloaded from ESXi host to the local directory. If not download screenshot file to local machine, you can open it through the returned file URL in screenshot facts manually. name: local_path description: Create a screenshot of the Virtual Machine console. name: vmware-guest-screenshot - arguments: - description: |- Name of the virtual machine. This is a required parameter, if parameter `uuid` or `moid` is not supplied. name: name - description: |- UUID of the instance to gather facts if known, this is VMware's unique identifier. This is a required parameter, if parameter `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - description: |- Destination folder, absolute or relative path to find an existing guest. This is a required parameter, only if multiple VMs are found with same name. The folder should include the datacenter. ESXi server'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 name: folder - description: |- The name of cluster where the virtual machine is running. This is a required parameter, if `esxi_hostname` is not set. `esxi_hostname` and `cluster` are mutually exclusive parameters. name: cluster - description: |- The ESXi hostname where the virtual machine is running. This is a required parameter, if `cluster` is not set. `esxi_hostname` and `cluster` are mutually exclusive parameters. name: esxi_hostname - description: The datacenter name to which virtual machine belongs to. name: datacenter - description: |- The string will be sent to the virtual machine. This string can contain valid special character, alphabet and digit on the keyboard. name: string_send - description: |- The list of the keys will be sent to the virtual machine. Valid values are `ENTER`, `ESC`, `BACKSPACE`, `TAB`, `SPACE`, `CAPSLOCK`, `DELETE`, `CTRL_ALT_DEL`, `CTRL_C` and `F1` to `F12`, `RIGHTARROW`, `LEFTARROW`, `DOWNARROW`, `UPARROW`. If both `keys_send` and `string_send` are specified, keys in `keys_send` list will be sent in front of the `string_send`. isArray: true name: keys_send description: Send USB HID codes to the Virtual Machine's keyboard. name: vmware-guest-sendkey - arguments: - auto: PREDEFINED defaultValue: present description: |- Manage snapshot(s) attached to a specific virtual machine. If set to `present` and snapshot absent, then will create a new snapshot with the given name. If set to `present` and snapshot present, then no changes are made. If set to `absent` and snapshot present, then snapshot with the given name is removed. If set to `absent` and snapshot absent, then no changes are made. If set to `revert` and snapshot present, then virtual machine state is reverted to the given snapshot. If set to `revert` and snapshot absent, then no changes are made. If set to `remove_all` and snapshot(s) present, then all snapshot(s) will be removed. If set to `remove_all` and snapshot(s) absent, then no changes are made. name: state predefined: - present - absent - revert - remove_all required: true - description: |- Name of the virtual machine to work with. This is required parameter, if `uuid` or `moid` is not supplied. name: name - auto: PREDEFINED defaultValue: first description: If multiple VMs matching the name, use the first or last found. name: name_match predefined: - first - last - description: |- UUID of the instance to manage if known, this is VMware's BIOS UUID by default. This is required if `name` or `moid` parameter is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - description: |- Destination folder, absolute or relative path to find an existing guest. This is required parameter, if `name` is supplied. 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 name: folder - description: Destination datacenter for the deploy operation. name: datacenter required: true - description: |- Sets the snapshot name to manage. This param is required only if state is not `remove_all` name: snapshot_name - description: Define an arbitrary description to attach to snapshot. name: description - defaultValue: "False" description: |- If set to `true` and virtual machine is powered on, it will quiesce the file system in virtual machine. Note that VMware Tools are required for this flag. If virtual machine is powered off or VMware Tools are not available, then this flag is set to `false`. If virtual machine does not provide capability to take quiesce snapshot, then this flag is set to `false`. name: quiesce - defaultValue: "False" description: |- If set to `true`, memory dump of virtual machine is also included in snapshot. Note that memory snapshots take time and resources, this will take longer time to create. If virtual machine does not provide capability to take memory snapshot, then this flag is set to `false`. name: memory_dump - defaultValue: "False" description: If set to `true` and state is set to `absent`, then entire snapshot subtree is set for removal. name: remove_children - description: Value to rename the existing snapshot to. name: new_snapshot_name - description: Value to change the description of an existing snapshot to. name: new_description description: Manages virtual machines snapshots in vCenter name: vmware-guest-snapshot - arguments: - description: |- Name of the VM to work with. This is required if `uuid` or `moid` is not supplied. name: name - description: |- UUID of the instance to manage if known, this is VMware's BIOS UUID by default. This is required if `name` or `moid` parameter is not supplied. The `folder` is ignored, if `uuid` is provided. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - description: |- Destination folder, absolute or relative path to find an existing guest. This is required only, if multiple virtual machines with same name are found on given vCenter. 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 name: folder - description: Name of the datacenter. name: datacenter required: true description: Gather info about virtual machine's snapshots in vCenter name: vmware-guest-snapshot-info - arguments: - description: |- Name of the virtual machine to work with. This is required if `uuid` or `moid` is not supplied. name: name - auto: PREDEFINED defaultValue: first description: If multiple virtual machines matching the name, use the first or last found. name: name_match predefined: - first - last - description: |- UUID of the instance to manage if known, this is VMware's unique identifier. This is required if `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - description: |- Destination folder, absolute or relative path to find an existing guest. This is required, if `name` is supplied. 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 name: folder - description: Destination datacenter where the virtual machine exists. name: datacenter required: true description: Module to upgrade VMTools name: vmware-guest-tools-upgrade - arguments: - description: |- Name of the VM for which to wait until the tools become available. This is required if `uuid` or `moid` is not supplied. name: name - auto: PREDEFINED defaultValue: first description: If multiple VMs match the name, use the first or last found. name: name_match predefined: - first - last - description: |- Destination folder, absolute or relative path to find an existing guest. This is required only, if multiple VMs with same `name` is found. 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 name: folder - description: |- UUID of the VM for which to wait until the tools become available, if known. This is VMware's unique identifier. This is required, if `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid description: Wait for VMware tools to become available name: vmware-guest-tools-wait - arguments: - description: |- Name of the virtual machine. This is a required parameter, if parameter `uuid` or `moid` is not supplied. name: name - description: |- UUID of the instance to gather facts if known, this is VMware's unique identifier. This is a required parameter, if parameter `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - description: |- Destination folder, absolute or relative path to find an existing guest. This is a required parameter, only if multiple VMs are found with same name. The folder should include the datacenter. ESXi server'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 name: folder - defaultValue: ha-datacenter description: |- The datacenter name to which virtual machine belongs to. This parameter is case sensitive. name: datacenter - defaultValue: "no" description: |- If set to True, return settings of the video card, other attributes are ignored. If set to False, will do reconfiguration and return video card settings. name: gather_video_facts - description: |- If set to True, applies common video settings to the guest operating system, attributes `display_number` and `video_memory_mb` are ignored. If set to False, the number of display and the total video memory will be reconfigured using `display_number` and `video_memory_mb`. name: use_auto_detect - description: The number of display. Valid value from 1 to 10. The maximum display number is 4 on vCenter 6.0, 6.5 web UI. name: display_number - description: |- Valid total MB of video memory range of virtual machine is from 1.172 MB to 256 MB on ESXi 6.7U1, from 1.172 MB to 128 MB on ESXi 6.7 and previous versions. For specific guest OS, supported minimum and maximum video memory are different, please be careful on setting this. name: video_memory_mb - description: Enable 3D for guest operating systems on which VMware supports 3D. name: enable_3D - auto: PREDEFINED description: |- If set to `automatic`, selects the appropriate option (software or hardware) for this virtual machine automatically. If set to `software`, uses normal CPU processing for 3D calculations. If set to `hardware`, requires graphics hardware (GPU) for faster 3D calculations. name: renderer_3D predefined: - automatic - software - hardware - description: The value of 3D Memory must be power of 2 and valid value is from 32 MB to 2048 MB. name: memory_3D_mb description: Modify video card configurations of specified virtual machine in given vCenter infrastructure name: vmware-guest-video - arguments: - defaultValue: ha-datacenter description: |- Destination datacenter for the deploy operation. This parameter is case sensitive. name: datacenter - auto: PREDEFINED defaultValue: present description: Set the state of VNC on virtual machine. name: state predefined: - present - absent - description: |- Name of the virtual machine to work with. Virtual machine names in vCenter are not necessarily unique, which may be problematic, see `name_match`. name: name - auto: PREDEFINED defaultValue: first description: If multiple virtual machines matching the name, use the first or last found. name: name_match predefined: - first - last - description: |- UUID of the instance to manage if known, this is VMware's unique identifier. This is required, if `name` or `moid` is not supplied. name: uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `name` or `uuid` is not supplied. name: moid - description: |- Destination folder, absolute or relative path to find an existing guest. The folder should include the datacenter. ESX's datacenter is ha-datacenter name: folder - defaultValue: 0.0.0.0 description: |- Sets an IP for VNC on virtual machine. This is required only when `state` is set to present and will be ignored if `state` is absent. name: vnc_ip - defaultValue: "0" description: |- The port that VNC listens on. Usually a number between 5900 and 7000 depending on your config. This is required only when `state` is set to present and will be ignored if `state` is absent. name: vnc_port - description: |- Sets a password for VNC on virtual machine. This is required only when `state` is set to present and will be ignored if `state` is absent. name: vnc_password description: Manages VNC remote display on virtual machines in vCenter name: vmware-guest-vnc - arguments: - description: |- Name of the datacenter to add the host. Aliases added in version 2.6. name: datacenter_name required: true - description: |- Name of the cluster to add the host. If `folder` is not set, then this parameter is required. Aliases added in version 2.6. name: cluster_name - description: |- Name of the folder under which host to add. If `cluster_name` is not set, then this parameter is required. For example, if there is a datacenter 'dc1' under folder called 'Site1' then, this value will be '/Site1/dc1/host'. Here 'host' is an invisible folder under VMware Web Client. Another example, if there is a nested folder structure like '/myhosts/india/pune' under datacenter 'dc2', then `folder` value will be '/dc2/host/myhosts/india/pune'. Other Examples: - '/Site2/dc2/Asia-Cluster/host' - '/dc3/Asia-Cluster/host' name: folder - defaultValue: "True" description: |- If set to `True`, then the host should be connected as soon as it is added. This parameter is ignored if state is set to a value other than `present`. name: add_connected - description: ESXi hostname to manage. name: esxi_hostname required: true - description: |- ESXi username. Required for adding a host. Optional for reconnect. If both `esxi_username` and `esxi_password` are used Unused for removing. No longer a required parameter from version 2.5. name: esxi_username - description: |- ESXi password. Required for adding a host. Optional for reconnect. Unused for removing. No longer a required parameter from version 2.5. name: esxi_password - auto: PREDEFINED defaultValue: present description: |- If set to `present`, add the host if host is absent. If set to `present`, update the location of the host if host already exists. If set to `absent`, remove the host if host is present. If set to `absent`, do nothing if host already does not exists. If set to `add_or_reconnect`, add the host if it's absent else reconnect it and update the location. If set to `reconnect`, then reconnect the host if it's present and update the location. name: state predefined: - present - absent - add_or_reconnect - reconnect - description: |- Specifying the hostsystem certificate's thumbprint. Use following command to get hostsystem certificate's thumbprint - # openssl x509 -in /etc/vmware/ssl/rui.crt -fingerprint -sha1 -noout Only used if `fetch_thumbprint` isn't set to `true`. name: esxi_ssl_thumbprint - defaultValue: "True" description: |- Fetch the thumbprint of the host's SSL certificate. This basically disables the host certificate verification (check if it was signed by a recognized CA). Disable this option if you want to allow only hosts with valid certificates to be added to vCenter. If this option is set to `false` and the certificate can't be verified, an add or reconnect will fail. Unused when `esxi_ssl_thumbprint` is set. Optional for reconnect, but only used if `esxi_username` and `esxi_password` are used. Unused for removing. name: fetch_ssl_thumbprint - defaultValue: "True" description: Force the connection if the host is already being managed by another vCenter server. name: force_connection - defaultValue: "True" description: |- Reconnect disconnected hosts. This is only used if `state` is set to `present` and if the host already exists. name: reconnect_disconnected description: Add, remove, or move an ESXi host to, from, or within vCenter name: vmware-host - arguments: - description: |- Name of the cluster. Acceptance level of all ESXi host system in the given cluster will be managed. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname. Acceptance level of this ESXi host system will be managed. If `cluster_name` is not given, this parameter is required. name: esxi_hostname - auto: PREDEFINED defaultValue: list description: |- Set or list acceptance level of the given ESXi host. If set to `list`, then will return current acceptance level of given host system/s. If set to `present`, then will set given acceptance level. name: state predefined: - list - present - auto: PREDEFINED description: |- Name of acceptance level. If set to `partner`, then accept only partner and VMware signed and certified VIBs. If set to `vmware_certified`, then accept only VIBs that are signed and certified by VMware. If set to `vmware_accepted`, then accept VIBs that have been accepted by VMware. If set to `community`, then accept all VIBs, even those that are not signed. name: acceptance_level predefined: - community - partner - vmware_accepted - vmware_certified description: Manage the host acceptance level of an ESXi host name: vmware-host-acceptance - arguments: - description: AD Domain to join. name: ad_domain - description: Username for AD domain join. name: ad_user - description: Password for AD domain join. name: ad_password - auto: PREDEFINED defaultValue: absent description: Whether the ESXi host is joined to an AD domain or not. name: ad_state predefined: - present - absent - description: |- Name of the host system to work with. This parameter is required if `cluster_name` is not specified. name: esxi_hostname - description: |- Name of the cluster from which all host systems will be used. This parameter is required if `esxi_hostname` is not specified. name: cluster_name description: Joins an ESXi host system to an Active Directory domain or leaves it name: vmware-host-active-directory - arguments: - description: |- Name of the cluster from all host systems to be used for information gathering. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname to gather information from. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gathers info about an ESXi host's capability information name: vmware-host-capability-info - arguments: - description: |- Name of the cluster from which the ESXi host belong to. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname to gather information from. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gathers info about an ESXi host's advance configuration information name: vmware-host-config-info - arguments: - description: |- Name of the cluster. Settings are applied to every ESXi host in given cluster. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname. Settings are applied to this ESXi host. If `cluster_name` is not given, this parameter is required. name: esxi_hostname - defaultValue: '{}' description: |- A dictionary of advanced system settings. Invalid options will cause module to error. Note that the list of advanced options (with description and values) can be found by running `vim-cmd hostsvc/advopt/options`. isArray: true name: options description: Manage advanced system settings of an ESXi host name: vmware-host-config-manager - arguments: - description: |- Name of the datacenter to add the datastore. The datacenter isn't used by the API to create a datastore. Will be removed in 2.11. name: datacenter_name - description: Name of the datastore to add/remove. name: datastore_name required: true - auto: PREDEFINED description: Type of the datastore to configure (nfs/nfs41/vmfs). name: datastore_type predefined: - nfs - nfs41 - vmfs required: true - description: |- NFS host serving nfs datastore. Required if datastore type is set to `nfs`/`nfs41` and state is set to `present`, else unused. Two or more servers can be defined if datastore type is set to `nfs41` name: nfs_server - description: |- Resource path on NFS host. Required if datastore type is set to `nfs`/`nfs41` and state is set to `present`, else unused. name: nfs_path - defaultValue: "False" description: |- ReadOnly or ReadWrite mount. Unused if datastore type is not set to `nfs`/`nfs41` and state is not set to `present`. name: nfs_ro - description: |- Name of the device to be used as VMFS datastore. Required for VMFS datastore type and state is set to `present`, else unused. name: vmfs_device_name - description: |- VMFS version to use for datastore creation. Unused if datastore type is not set to `vmfs` and state is not set to `present`. name: vmfs_version - description: |- ESXi hostname to manage the datastore. Required when used with a vcenter name: esxi_hostname - auto: PREDEFINED defaultValue: present description: |- present: Mount datastore on host if datastore is absent else do nothing. absent: Umount datastore if datastore is present else do nothing. name: state predefined: - present - absent description: Manage a datastore on ESXi host name: vmware-host-datastore - arguments: - description: |- Name of the cluster from which the ESXi host belong to. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname to gather information from. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gathers info about an ESXi host's DNS configuration information name: vmware-host-dns-info - arguments: - description: |- ESXi hostname. Host facts about the specified ESXi server will be returned. By specifying this option, you can select which ESXi hostsystem is returned if connecting to a vCenter. name: esxi_hostname - defaultValue: "False" description: Tags related to Host are shown if set to `True`. name: show_tag description: Gathers facts about remote ESXi hostsystem name: vmware-host-facts - arguments: - description: |- Name of the cluster from all host systems to be used for information gathering. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname to gather information from. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gathers info about an ESXi host's feature capability information name: vmware-host-feature-info - arguments: - description: |- Name of the cluster from which the ESXi host belong to. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname to gather information from. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gathers info about an ESXi host's firewall configuration information name: vmware-host-firewall-info - arguments: - description: |- Name of the cluster. Firewall settings are applied to every ESXi host system in given cluster. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname. Firewall settings are applied to this ESXi host system. If `cluster_name` is not given, this parameter is required. name: esxi_hostname - defaultValue: '[]' description: |- A list of Rule set which needs to be managed. Each member of list is rule set name and state to be set the rule. Both rule name and rule state are required parameters. Additional IPs and networks can also be specified Please see examples for more information. isArray: true name: rules description: Manage firewall configurations about an ESXi host name: vmware-host-firewall-manager - arguments: - auto: PREDEFINED defaultValue: enabled description: |- Enable or disable Hyperthreading. You need to reboot the ESXi host if you change the configuration. Make sure that Hyperthreading is enabled in the BIOS. Otherwise, it will be enabled, but never activated. name: state predefined: - enabled - disabled - description: |- Name of the host system to work with. This parameter is required if `cluster_name` is not specified. name: esxi_hostname - description: |- Name of the cluster from which all host systems will be used. This parameter is required if `esxi_hostname` is not specified. name: cluster_name description: Enables/Disables Hyperthreading optimization for an ESXi host system name: vmware-host-hyperthreading - arguments: - auto: PREDEFINED defaultValue: enabled description: |- Enable or disable IPv6 support. You need to reboot the ESXi host if you change the configuration. name: state predefined: - enabled - disabled - description: |- Name of the host system to work with. This is required parameter if `cluster_name` is not specified. name: esxi_hostname - description: |- Name of the cluster from which all host systems will be used. This is required parameter if `esxi_hostname` is not specified. name: cluster_name description: Enables/Disables IPv6 support for an ESXi host system name: vmware-host-ipv6 - arguments: - description: |- Name of the ESXi host to work on. This parameter is required if `cluster_name` is not specified. name: esxi_hostname - description: |- Name of the VMware cluster to work on. All ESXi hosts in this cluster will be configured. This parameter is required if `esxi_hostname` is not specified. name: cluster_name - description: Name of the kernel module to be configured. name: kernel_module_name required: true - description: |- Specified configurations will be applied to the given module. These values are specified in key=value pairs and separated by a space when there are multiple options. name: kernel_module_option required: true description: Manage kernel module options on ESXi hosts name: vmware-host-kernel-manager - arguments: - description: |- Name of cluster. All host systems from given cluster used to manage lockdown. Required parameter, if `esxi_hostname` is not set. name: cluster_name - description: |- List of ESXi hostname to manage lockdown. Required parameter, if `cluster_name` is not set. See examples for specifications. isArray: true name: esxi_hostname - auto: PREDEFINED defaultValue: present description: |- State of hosts system If set to `present`, all host systems will be set in lockdown mode. If host system is already in lockdown mode and set to `present`, no action will be taken. If set to `absent`, all host systems will be removed from lockdown mode. If host system is already out of lockdown mode and set to `absent`, no action will be taken. name: state predefined: - present - absent description: Manage administrator permission for the local administrative account for the ESXi host name: vmware-host-lockdown - arguments: - description: |- Name of the host system to work with. This parameter is required if `cluster_name` is not specified. name: esxi_hostname - description: |- Name of the cluster from which all host systems will be used. This parameter is required if `esxi_hostname` is not specified. name: cluster_name - description: |- IP or FQDN of NTP server(s). This accepts a list of NTP servers. For multiple servers, please look at the examples. isArray: true name: ntp_servers required: true - auto: PREDEFINED description: |- present: Add NTP server(s), if specified server(s) are absent else do nothing. absent: Remove NTP server(s), if specified server(s) are present else do nothing. Specified NTP server(s) will be configured if `state` isn't specified. name: state predefined: - present - absent - defaultValue: "False" description: |- Verbose output of the configuration change. Explains if an NTP server was added, removed, or if the NTP server sequence was changed. name: verbose description: Manage NTP server configuration of an ESXi host name: vmware-host-ntp - arguments: - description: |- Name of the cluster. NTP config information about each ESXi server will be returned for the given cluster. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname. NTP config information about this ESXi server will be returned. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gathers info about NTP configuration on an ESXi host name: vmware-host-ntp-info - arguments: - description: |- Name of the cluster. Package information about each ESXi server will be returned for given cluster. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname. Package information about this ESXi server will be returned. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gathers info about available packages on an ESXi host name: vmware-host-package-info - arguments: - auto: PREDEFINED defaultValue: balanced description: Set the Power Management Policy of the host system. name: policy predefined: - high-performance - balanced - low-power - custom - description: |- Name of the host system to work with. This is required parameter if `cluster_name` is not specified. name: esxi_hostname - description: |- Name of the cluster from which all host systems will be used. This is required parameter if `esxi_hostname` is not specified. name: cluster_name description: Manages the Power Management Policy of an ESXI host system name: vmware-host-powermgmt-policy - arguments: - auto: PREDEFINED defaultValue: shutdown-host description: Set the state of the host system. name: state predefined: - power-down-to-standby - power-up-from-standby - shutdown-host - reboot-host - description: |- Name of the host system to work with. This is required parameter if `cluster_name` is not specified. name: esxi_hostname - description: |- Name of the cluster from which all host systems will be used. This is required parameter if `esxi_hostname` is not specified. name: cluster_name - defaultValue: "False" description: |- This parameter specify if the host should be proceeding with user defined powerstate regardless of whether it is in maintenance mode. If `state` set to `reboot-host` and `force` as `true`, then host system is rebooted regardless of whether it is in maintenance mode. If `state` set to `shutdown-host` and `force` as `true`, then host system is shutdown regardless of whether it is in maintenance mode. If `state` set to `power-down-to-standby` and `force` to `true`, then all powered off VMs will evacuated. Not applicable if `state` set to `power-up-from-standby`. name: force - defaultValue: "600" description: |- This parameter defines timeout for `state` set to `power-down-to-standby` or `power-up-from-standby`. Ignored if `state` set to `reboot-host` or `shutdown-host`. This parameter is defined in seconds. name: timeout description: Manages power states of host systems in vCenter name: vmware-host-powerstate - arguments: - description: ESXi hostname to Rescan the storage subsystem on. name: esxi_hostname - description: Cluster name to Rescan the storage subsystem on (this will run the rescan task on each host in the cluster). name: cluster_name - defaultValue: "False" description: Refresh the storage system in vCenter/ESXi Web Client for each host found name: refresh_storage description: Rescan host HBA's and optionally refresh the storage system name: vmware-host-scanhba - arguments: - description: |- Name of the cluster. Service information about each ESXi server will be returned for given cluster. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname. Service information about this ESXi server will be returned. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gathers info about an ESXi host's services name: vmware-host-service-info - arguments: - description: |- Name of the cluster. Service settings are applied to every ESXi host system/s in given cluster. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname. Service settings are applied to this ESXi host system. If `cluster_name` is not given, this parameter is required. name: esxi_hostname - auto: PREDEFINED defaultValue: start description: |- Desired state of service. State value 'start' and 'present' has same effect. State value 'stop' and 'absent' has same effect. name: state predefined: - absent - present - restart - start - stop - auto: PREDEFINED description: |- Set of valid service policy strings. If set `on`, then service should be started when the host starts up. If set `automatic`, then service should run if and only if it has open firewall ports. If set `off`, then Service should not be started when the host starts up. name: service_policy predefined: - automatic - "off" - "on" - description: |- Name of Service to be managed. This is a brief identifier for the service, for example, ntpd, vxsyslogd etc. This value should be a valid ESXi service name. name: service_name required: true description: Manage services on a given ESXi host name: vmware-host-service-manager - arguments: - auto: PREDEFINED defaultValue: disabled description: Enable, disable, or reset the SNMP agent. name: state predefined: - disabled - enabled - reset - description: List of SNMP community strings. isArray: true name: community - defaultValue: "161" description: Port used by the SNMP agent. name: snmp_port - defaultValue: '[]' description: |- A list of trap targets. You need to use `hostname`, `port`, and `community` for each trap target. isArray: true name: trap_targets - description: |- A list of trap oids for traps not to be sent by agent, e.g. [ 1.3.6.1.4.1.6876.4.1.1.0, 1.3.6.1.4.1.6876.4.1.1.1 ] Use value `reset` to clear settings. isArray: true name: trap_filter - defaultValue: "False" description: Send a test trap to validate the configuration. name: send_trap - auto: PREDEFINED defaultValue: indications description: |- Source hardware events from IPMI sensors or CIM Indications. The embedded SNMP agent receives hardware events either from IPMI sensors `sensors` or CIM indications `indications`. name: hw_source predefined: - indications - sensors - auto: PREDEFINED defaultValue: info description: Syslog logging level. name: log_level predefined: - debug - info - warning - error description: Configures SNMP on an ESXi host system name: vmware-host-snmp - arguments: - description: |- Name of the cluster. SSL thumbprint information about all ESXi host system in the given cluster will be reported. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname. SSL thumbprint information of this ESXi host system will be reported. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gather info of ESXi host system about SSL name: vmware-host-ssl-info - arguments: - description: |- Name of the host system to work with. Vmhba information about this ESXi server will be returned. This parameter is required if `cluster_name` is not specified. name: esxi_hostname - description: |- Name of the cluster from which all host systems will be used. Vmhba information about each ESXi server will be returned for the given cluster. This parameter is required if `esxi_hostname` is not specified. name: cluster_name description: Gathers info about vmhbas available on the given ESXi host name: vmware-host-vmhba-info - arguments: - defaultValue: "False" description: Gather information about general capabilities (Auto negotiation, Wake On LAN, and Network I/O Control). name: capabilities - defaultValue: "False" description: Gather information about DirectPath I/O capabilities and configuration. name: directpath_io - defaultValue: "False" description: Gather information about SR-IOV capabilities and configuration. name: sriov - description: |- Name of the host system to work with. Vmnic information about this ESXi server will be returned. This parameter is required if `cluster_name` is not specified. name: esxi_hostname - description: |- Name of the cluster from which all host systems will be used. Vmnic information about each ESXi server will be returned for the given cluster. This parameter is required if `esxi_hostname` is not specified. name: cluster_name description: Gathers info about vmnics available on the given ESXi host name: vmware-host-vmnic-info - arguments: [] description: Gather info about local roles on an ESXi host name: vmware-local-role-info - arguments: - description: The local role name to be managed. name: local_role_name required: true - defaultValue: '[]' description: |- The list of privileges that role needs to have. Please see `https://docs.vmware.com/en/VMware-vSphere/6.0/com.vmware.vsphere.security.doc/GUID-ED56F3C4-77D0-49E3-88B6-B99B8B437B62.html` isArray: true name: local_privilege_ids - auto: PREDEFINED defaultValue: present description: |- Indicate desired state of the role. If the role already exists when `state=present`, the role info is updated. name: state predefined: - present - absent - defaultValue: "False" description: If set to `False` then prevents the role from being removed if any permissions are using it. name: force_remove - auto: PREDEFINED defaultValue: set description: |- This parameter is only valid while updating an existing role with privileges. `add` will add the privileges to the existing privilege list. `remove` will remove the privileges from the existing privilege list. `set` will replace the privileges of the existing privileges with user defined list of privileges. name: action predefined: - add - remove - set description: Manage local roles on an ESXi host name: vmware-local-role-manager - arguments: [] description: Gather info about users on the given ESXi host name: vmware-local-user-info - arguments: - description: The local user name to be changed. name: local_user_name required: true - description: The password to be set. name: local_user_password - description: Description for the user. name: local_user_description - auto: PREDEFINED defaultValue: present description: Indicate desired state of the user. If the user already exists when `state=present`, the user info is updated name: state predefined: - present - absent description: Manage local users on an ESXi host name: vmware-local-user-manager - arguments: - description: Name of the host as defined in vCenter. name: esxi_hostname required: true - auto: PREDEFINED description: Specify which VSAN compliant mode to enter. name: vsan predefined: - ensureObjectAccessibility - evacuateAllData - noAction - defaultValue: "False" description: If set to `True`, evacuate all powered off VMs. name: evacuate - defaultValue: "0" description: Specify a timeout for the operation. name: timeout - auto: PREDEFINED defaultValue: present description: Enter or exit maintenance mode. name: state predefined: - present - absent description: Place a host into maintenance mode name: vmware-maintenancemode - arguments: - description: ESXi hostname to be managed name: esxi_hostname required: true - description: VMK interface name name: device required: true - description: Switch VMK interface is currently on name: current_switch_name required: true - description: Portgroup name VMK interface is currently on name: current_portgroup_name required: true - description: Switch name to migrate VMK interface to name: migrate_switch_name required: true - description: Portgroup name to migrate VMK interface to name: migrate_portgroup_name required: true description: Migrate a VMK interface from VSS to VDS name: vmware-migrate-vmk - arguments: - description: The role to be assigned permission. name: role required: true - description: |- The user to be assigned permission. Required if `group` is not specified. name: principal - description: |- The group to be assigned permission. Required if `principal` is not specified. name: group - description: The object name to assigned permission. name: object_name required: true - auto: PREDEFINED defaultValue: Folder description: The object type being targeted. name: object_type predefined: - Folder - VirtualMachine - Datacenter - ResourcePool - Datastore - Network - HostSystem - ComputeResource - ClusterComputeResource - DistributedVirtualSwitch - defaultValue: "True" description: Should the permissions be recursively applied. name: recursive - auto: PREDEFINED defaultValue: present description: |- Indicate desired state of the object's permission. When `state=present`, the permission will be added if it doesn't already exist. When `state=absent`, the permission is removed if it exists. name: state predefined: - present - absent description: Manage local roles on an ESXi host name: vmware-object-role-permission - arguments: - description: vSwitch to modify. name: switch required: true - description: Portgroup name to add. name: portgroup required: true - defaultValue: "0" description: |- VLAN ID to assign to portgroup. Set to 0 (no VLAN tagging) by default. name: vlan_id - description: |- Network policy specifies layer 2 security settings for a portgroup such as promiscuous mode, where guest adapter listens to all the packets, MAC address changes and forged transmits. Dict which configures the different security values for portgroup. Valid attributes are: - `promiscuous_mode` (bool): indicates whether promiscuous mode is allowed. (default: None) - `forged_transmits` (bool): indicates whether forged transmits are allowed. (default: None) - `mac_changes` (bool): indicates whether mac changes are allowed. (default: None) isArray: true name: security - description: |- Dictionary which configures the different teaming values for portgroup. Valid attributes are: - `load_balancing` (string): Network adapter teaming policy. `load_balance_policy` is also alias to this option. (default: loadbalance_srcid) - choices: [ loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, failover_explicit ] - `network_failure_detection` (string): Network failure detection. (default: link_status_only) - choices: [ link_status_only, beacon_probing ] - `notify_switches` (bool): Indicate whether or not to notify the physical switch if a link fails. (default: None) - `failback` (bool): Indicate whether or not to use a failback when restoring links. (default: None) - `active_adapters` (list): List of active adapters used for load balancing. - `standby_adapters` (list): List of standby adapters used for failover. - All vmnics are used as active adapters if `active_adapters` and `standby_adapters` are not defined. - `inbound_policy` (bool): Indicate whether or not the teaming policy is applied to inbound frames as well. Deprecated. (default: False) - `rolling_order` (bool): Indicate whether or not to use a rolling policy when restoring links. Deprecated. (default: False) isArray: true name: teaming - description: |- Dictionary which configures traffic shaping for the switch. Valid attributes are: - `enabled` (bool): Status of Traffic Shaping Policy. (default: None) - `average_bandwidth` (int): Average bandwidth (kbit/s). (default: None) - `peak_bandwidth` (int): Peak bandwidth (kbit/s). (default: None) - `burst_size` (int): Burst size (KB). (default: None) isArray: true name: traffic_shaping - description: |- Name of cluster name for host membership. Portgroup will be created on all hosts of the given cluster. This option is required if `hosts` is not specified. name: cluster_name - description: |- List of name of host or hosts on which portgroup needs to be added. This option is required if `cluster_name` is not specified. isArray: true name: hosts - auto: PREDEFINED defaultValue: present description: Determines if the portgroup should be present or not. name: state predefined: - present - absent description: Create a VMware portgroup name: vmware-portgroup - arguments: - defaultValue: "False" description: |- Gather information about Security, Traffic Shaping, as well as Teaming and failover. The property `ts` stands for Traffic Shaping and `lb` for Load Balancing. name: policies - description: |- Name of the cluster. Info will be returned for all hostsystem belonging to this cluster name. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname to gather information from. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gathers info about an ESXi host's Port Group configuration name: vmware-portgroup-info - arguments: - description: Name of the datacenter to add the host. name: datacenter required: true - description: Name of the cluster to add the host. name: cluster required: true - description: Resource pool name to manage. name: resource_pool required: true - defaultValue: "True" description: In a resource pool with an expandable reservation, the reservation on a resource pool can grow beyond the specified value. name: cpu_expandable_reservations - defaultValue: "0" description: Amount of resource that is guaranteed available to the virtual machine or resource pool. name: cpu_reservation - defaultValue: "-1" description: |- The utilization of a virtual machine/resource pool will not exceed this limit, even if there are available resources. The default value -1 indicates no limit. name: cpu_limit - auto: PREDEFINED defaultValue: normal description: Memory shares are used in case of resource contention. name: cpu_shares predefined: - high - custom - low - normal - defaultValue: "True" description: In a resource pool with an expandable reservation, the reservation on a resource pool can grow beyond the specified value. name: mem_expandable_reservations - defaultValue: "0" description: Amount of resource that is guaranteed available to the virtual machine or resource pool. name: mem_reservation - defaultValue: "-1" description: |- The utilization of a virtual machine/resource pool will not exceed this limit, even if there are available resources. The default value -1 indicates no limit. name: mem_limit - auto: PREDEFINED defaultValue: normal description: Memory shares are used in case of resource contention. name: mem_shares predefined: - high - custom - low - normal - auto: PREDEFINED defaultValue: present description: Add or remove the resource pool name: state predefined: - present - absent description: Add/remove resource pools to/from vCenter name: vmware-resource-pool - arguments: [] description: Gathers info about resource pool information name: vmware-resource-pool-info - arguments: - description: The name of tag to manage. name: tag_name required: true - description: |- The tag description. This is required only if `state` is set to `present`. This parameter is ignored, when `state` is set to `absent`. Process of updating tag only allows description change. name: tag_description - description: |- The unique ID generated by vCenter should be used to. User can get this unique ID from facts module. name: category_id - auto: PREDEFINED defaultValue: present description: |- The state of tag. If set to `present` and tag does not exists, then tag is created. If set to `present` and tag exists, then tag is updated. If set to `absent` and tag exists, then tag is deleted. If set to `absent` and tag does not exists, no action is taken. name: state predefined: - present - absent - auto: PREDEFINED defaultValue: https description: The connection to protocol. name: protocol predefined: - http - https description: Manage VMware tags name: vmware-tag - arguments: - auto: PREDEFINED defaultValue: https description: The connection to protocol. name: protocol predefined: - http - https description: Manage VMware tag info name: vmware-tag-info - arguments: - description: |- List of tag(s) to be managed. You can also specify category name by specifying colon separated value. For example, "category_name:tag_name". You can skip category name if you have unique tag names. isArray: true name: tag_names required: true - auto: PREDEFINED defaultValue: add description: |- If `state` is set to `add` or `present` will add the tags to the existing tag list of the given object. If `state` is set to `remove` or `absent` will remove the tags from the existing tag list of the given object. If `state` is set to `set` will replace the tags of the given objects with the user defined list of tags. name: state predefined: - present - absent - add - remove - set - auto: PREDEFINED description: Type of object to work with. name: object_type predefined: - VirtualMachine - Datacenter - ClusterComputeResource - HostSystem - DistributedVirtualSwitch - DistributedVirtualPortgroup required: true - description: |- Name of the object to work with. For DistributedVirtualPortgroups the format should be "switch_name:portgroup_name" name: object_name required: true - auto: PREDEFINED defaultValue: https description: The connection to protocol. name: protocol predefined: - http - https description: Manage association of VMware tags with VMware objects name: vmware-tag-manager - arguments: - description: |- The target id based on order of scsi device. version 2.6 onwards, this parameter is optional. name: target_id - description: |- Name of the cluster. Info about all SCSI devices for all host system in the given cluster is returned. This parameter is required, if `esxi_hostname` is not provided. name: cluster_name - description: |- Name of the ESXi host system. Info about all SCSI devices for the given ESXi host system is returned. This parameter is required, if `cluster_name` is not provided. name: esxi_hostname description: Return canonical (NAA) from an ESXi host system name: vmware-target-canonical-info - arguments: - defaultValue: '{''max_connections'': 50, ''task_cleanup'': True, ''task_retention'': 30, ''event_cleanup'': True, ''event_retention'': 30}' description: |- The database settings for vCenter server. Valid attributes are: - `max_connections` (int): Maximum connections. (default: 50) - `task_cleanup` (bool): Task cleanup. (default: false) - `task_retention` (int): Task retention (days). (default: 30) - `event_cleanup` (bool): Event cleanup. (default: false) - `event_retention` (int): Event retention (days). (default: 30) isArray: true name: database - description: |- The unique runtime settings for vCenter server. Valid attributes are: - `unique_id` (int): vCenter server unique ID. - `managed_address` (str): vCenter server managed address. - `vcenter_server_name` (str): vCenter server name. (default: FQDN) isArray: true name: runtime_settings - defaultValue: '{''timeout'': 60, ''query_limit'': True, ''query_limit_size'': 5000, ''validation'': True, ''validation_period'': 1440}' description: |- The user directory settings for the vCenter server installation. Valid attributes are: - `timeout` (int): User directory timeout. (default: 60) - `query_limit` (bool): Query limit. (default: false) - `query_limit_size` (int): Query limit size. (default: 5000) - `validation` (bool): Mail Validation. (default: false) - `validation_period` (int): Validation period. (default: 1440) isArray: true name: user_directory - description: |- The settings vCenter server uses to send email alerts. Valid attributes are: - `server` (str): Mail server - `sender` (str): Mail sender address isArray: true name: mail - defaultValue: '{''snmp_receiver_1_url'': ''localhost'', ''snmp_receiver_1_enabled'': True, ''snmp_receiver_1_port'': 162, ''snmp_receiver_1_community'': ''public'', ''snmp_receiver_2_url'': '''', ''snmp_receiver_2_enabled'': False, ''snmp_receiver_2_port'': 162, ''snmp_receiver_2_community'': '''', ''snmp_receiver_3_url'': '''', ''snmp_receiver_3_enabled'': False, ''snmp_receiver_3_port'': 162, ''snmp_receiver_3_community'': '''', ''snmp_receiver_4_url'': '''', ''snmp_receiver_4_enabled'': False, ''snmp_receiver_4_port'': 162, ''snmp_receiver_4_community'': ''''}' description: |- SNMP trap destinations for vCenter server alerts. Valid attributes are: - `snmp_receiver_1_url` (str): Primary Receiver ULR. (default: "localhost") - `snmp_receiver_1_enabled` (bool): Enable receiver. (default: false) - `snmp_receiver_1_port` (int): Receiver port. (default: 162) - `snmp_receiver_1_community` (str): Community string. (default: "public") - `snmp_receiver_2_url` (str): Receiver 2 ULR. (default: "") - `snmp_receiver_2_enabled` (bool): Enable receiver. (default: False) - `snmp_receiver_2_port` (int): Receiver port. (default: 162) - `snmp_receiver_2_community` (str): Community string. (default: "") - `snmp_receiver_3_url` (str): Receiver 3 ULR. (default: "") - `snmp_receiver_3_enabled` (bool): Enable receiver. (default: False) - `snmp_receiver_3_port` (int): Receiver port. (default: 162) - `snmp_receiver_3_community` (str): Community string. (default: "") - `snmp_receiver_4_url` (str): Receiver 4 ULR. (default: "") - `snmp_receiver_4_enabled` (bool): Enable receiver. (default: False) - `snmp_receiver_4_port` (int): Receiver port. (default: 162) - `snmp_receiver_4_community` (str): Community string. (default: "") isArray: true name: snmp_receivers - defaultValue: '{''normal_operations'': 30, ''long_operations'': 120}' description: |- The vCenter server connection timeout for normal and long operations. Valid attributes are: - `normal_operations` (int) (default: 30) - `long_operations` (int) (default: 120) isArray: true name: timeout_settings - auto: PREDEFINED defaultValue: info description: The level of detail that vCenter server usesfor log files. name: logging_options predefined: - none - error - warning - info - verbose - trivia description: Configures general settings on a vCenter server name: vmware-vcenter-settings - arguments: - description: |- Settings for vCenter server past day statistic collection. Valid attributes are: - `enabled` (bool): Past day statistics collection enabled. (default: false) - `interval_minutes` (int): Interval duration (minutes). (choices: [1, 2, 3, 4, 5]) (default: 5) - `save_for_days` (int): Save for (days). (choices: [1, 2, 3, 4, 5]) (default: 1) - `level` (int): Statistics level. (choices: [1, 2, 3, 4]) (default: 1) isArray: true name: interval_past_day - description: |- Settings for vCenter server past week statistic collection. Valid attributes are: - `enabled` (bool): Past week statistics collection enabled. (default: false) - `interval_minutes` (int): Interval duration (minutes). (choices: [30]) (default: 30) - `save_for_weeks` (int): Save for (weeks). (choices: [1]) (default: 1) - `level` (int): Statistics level. (choices: [1, 2, 3, 4]) (default: 1) isArray: true name: interval_past_week - description: |- Settings for vCenter server past month statistic collection. Valid attributes are: - `enabled` (bool): Past month statistics collection enabled. (default: false) - `interval_hours` (int): Interval duration (hours). (choices: [2]) (default: 2) - `save_for_months` (int): Save for (months). (choices: [1]) (default: 1) - `level` (int): Statistics level. (choices: [1, 2, 3, 4]) (default: 1) isArray: true name: interval_past_month - description: |- Settings for vCenter server past month statistic collection. Valid attributes are: - `enabled` (bool): Past month statistics collection enabled. (default: false) - `interval_days` (int): Interval duration (days). (choices: [1]) (default: 1) - `save_for_years` (int): Save for (years). (choices: [1, 2, 3, 4, 5]) (default: 1) - `level` (int): Statistics level. (choices: [1, 2, 3, 4]) (default: 1) isArray: true name: interval_past_year description: Configures statistics on a vCenter server name: vmware-vcenter-statistics - arguments: - defaultValue: "True" description: |- If set to `True`, the DRS rule will be an Affinity rule. If set to `False`, the DRS rule will be an Anti-Affinity rule. Effective only if `state` is set to `present`. name: affinity_rule - description: Datacenter to search for given cluster. If not set, we use first cluster we encounter with `cluster_name`. name: datacenter - description: Cluster to create VM-Host rule. name: cluster_name required: true - description: Name of rule to create or remove. name: drs_rule_name required: true - defaultValue: "False" description: |- If set to `True`, the DRS rule will be enabled. Effective only if `state` is set to `present`. name: enabled - description: |- Name of Host group to use with rule. Effective only if `state` is set to `present`. name: host_group_name required: true - defaultValue: "False" description: |- If set to `True`, the DRS rule will be mandatory. Effective only if `state` is set to `present`. name: mandatory - auto: PREDEFINED defaultValue: present description: |- If set to `present` and the rule doesn't exists then the rule will be created. If set to `absent` and the rule exists then the rule will be deleted. name: state predefined: - present - absent required: true - description: |- Name of VM group to use with rule. Effective only if `state` is set to `present`. name: vm_group_name required: true description: Creates vm/host group in a given cluster name: vmware-vm-host-drs-rule - arguments: - auto: PREDEFINED defaultValue: all description: |- If set to `vm`, then information are gathered for virtual machines only. If set to `template`, then information are gathered for virtual machine templates only. If set to `all`, then information are gathered for all virtual machines and virtual machine templates. name: vm_type predefined: - all - vm - template - defaultValue: "False" description: Attributes related to VM guest shown in information only when this is set `true`. name: show_attribute - description: |- Specify a folder location of VMs to gather information from. 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 name: folder - defaultValue: "False" description: Tags related to virtual machine are shown if set to `True`. name: show_tag description: Return basic info pertaining to a VMware machine guest name: vmware-vm-info - arguments: - description: |- The datacenter hosting the virtual machine. If set, it will help to speed up virtual machine search. name: datacenter - description: |- The cluster hosting the virtual machine. If set, it will help to speed up virtual machine search. name: cluster - description: |- Destination folder, absolute or relative path to find an existing guest or create the new guest. 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 name: folder - description: Name of the virtual machine to work with. name: vm_id required: true - auto: PREDEFINED defaultValue: vm_name description: The VMware identification method by which the virtual machine will be identified. name: vm_id_type predefined: - uuid - instance_uuid - dns_name - inventory_path - vm_name - description: The user to login-in to the virtual machine. name: vm_username required: true - description: The password used to login-in to the virtual machine. name: vm_password required: true - description: |- The absolute path to the program to start. On Linux, shell is executed via bash. name: vm_shell required: true - defaultValue: ' ' description: |- The argument to the program. The characters which must be escaped to the shell also be escaped on the command line provided. name: vm_shell_args - description: Comma separated list of environment variable, specified in the guest OS notation. isArray: true name: vm_shell_env - description: The current working directory of the application from which it will be run. name: vm_shell_cwd - defaultValue: "False" description: If set to `True`, module will wait for process to complete in the given virtual machine. name: wait_for_process - defaultValue: "3600" description: |- Timeout in seconds. If set to positive integers, then `wait_for_process` will honor this parameter and will exit after this timeout. name: timeout description: Run commands in a VMware guest operating system name: vmware-vm-shell - arguments: [] description: Gather information about vSphere storage profile defined storage policy information. name: vmware-vm-storage-policy-info - arguments: - description: Desired cluster name where virtual machines are present for the DRS rule. name: cluster_name required: true - description: |- List of virtual machines name for which DRS rule needs to be applied. Required if `state` is set to `present`. isArray: true name: vms - description: The name of the DRS rule to manage. name: drs_rule_name required: true - defaultValue: "False" description: |- If set to `True`, the DRS rule will be enabled. Effective only if `state` is set to `present`. name: enabled - defaultValue: "False" description: |- If set to `True`, the DRS rule will be mandatory. Effective only if `state` is set to `present`. name: mandatory - defaultValue: "True" description: |- If set to `True`, the DRS rule will be an Affinity rule. If set to `False`, the DRS rule will be an Anti-Affinity rule. Effective only if `state` is set to `present`. name: affinity_rule - auto: PREDEFINED defaultValue: present description: |- If set to `present`, then the DRS rule is created if not present. If set to `present`, then the DRS rule is already present, it updates to the given configurations. If set to `absent`, then the DRS rule is deleted if present. name: state predefined: - present - absent description: Configure VMware DRS Affinity rule for virtual machine in given cluster name: vmware-vm-vm-drs-rule - arguments: - description: Name of the virtual machine to migrate to a dvSwitch name: vm_name required: true - description: Name of the portgroup to migrate to the virtual machine to name: dvportgroup_name required: true description: Migrates a virtual machine from a standard vswitch to distributed name: vmware-vm-vss-dvs-migrate - arguments: - description: |- The name of the vSwitch where to add the VMKernel interface. Required parameter only if `state` is set to `present`. Optional parameter from version 2.5 and onwards. name: vswitch_name - description: |- The name of the vSphere Distributed Switch (vDS) where to add the VMKernel interface. Required parameter only if `state` is set to `present`. Optional parameter from version 2.8 and onwards. name: dvswitch_name - description: The name of the port group for the VMKernel interface. name: portgroup_name required: true - defaultValue: '{''type'': ''static'', ''tcpip_stack'': ''default''}' description: |- A dictionary of network details. The following parameter is required: - `type` (string): Type of IP assignment (either `dhcp` or `static`). The following parameters are required in case of `type` is set to `static`: - `ip_address` (string): Static IP address (implies `type: static`). - `subnet_mask` (string): Static netmask required for `ip_address`. The following parameter is optional in case of `type` is set to `static`: - `default_gateway` (string): Default gateway (Override default gateway for this adapter). The following parameter is optional: - `tcpip_stack` (string): The TCP/IP stack for the VMKernel interface. Can be default, provisioning, vmotion, or vxlan. (default: default) isArray: true name: network - description: |- The IP Address for the VMKernel interface. Use `network` parameter with `ip_address` instead. Deprecated option, will be removed in version 2.9. name: ip_address - description: |- The Subnet Mask for the VMKernel interface. Use `network` parameter with `subnet_mask` instead. Deprecated option, will be removed in version 2.9. name: subnet_mask - defaultValue: "1500" description: |- The MTU for the VMKernel interface. The default value of 1500 is valid from version 2.5 and onwards. name: mtu - description: |- Search VMkernel adapter by device name. The parameter is required only in case of `type` is set to `dhcp`. name: device - description: |- Enable VSAN traffic on the VMKernel adapter. This option is only allowed if the default TCP/IP stack is used. name: enable_vsan - description: |- Enable vMotion traffic on the VMKernel adapter. This option is only allowed if the default TCP/IP stack is used. You cannot enable vMotion on an additional adapter if you already have an adapter with the vMotion TCP/IP stack configured. name: enable_vmotion - description: |- Enable Management traffic on the VMKernel adapter. This option is only allowed if the default TCP/IP stack is used. name: enable_mgmt - description: |- Enable Fault Tolerance traffic on the VMKernel adapter. This option is only allowed if the default TCP/IP stack is used. name: enable_ft - description: |- Enable Provisioning traffic on the VMKernel adapter. This option is only allowed if the default TCP/IP stack is used. name: enable_provisioning - description: |- Enable vSphere Replication traffic on the VMKernel adapter. This option is only allowed if the default TCP/IP stack is used. name: enable_replication - description: |- Enable vSphere Replication NFC traffic on the VMKernel adapter. This option is only allowed if the default TCP/IP stack is used. name: enable_replication_nfc - auto: PREDEFINED defaultValue: present description: |- If set to `present`, the VMKernel adapter will be created with the given specifications. If set to `absent`, the VMKernel adapter will be removed. If set to `present` and VMKernel adapter exists, the configurations will be updated. name: state predefined: - present - absent - description: |- Name of ESXi host to which VMKernel is to be managed. From version 2.5 onwards, this parameter is required. name: esxi_hostname required: true description: Manages a VMware VMkernel Adapter of an ESXi host. name: vmware-vmkernel - arguments: - description: |- Name of the cluster. VMKernel information about each ESXi server will be returned for the given cluster. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname. VMKernel information about this ESXi server will be returned. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gathers VMKernel info about an ESXi host name: vmware-vmkernel-info - arguments: - description: VMkernel interface name name: vmk_name required: true - description: IP address to assign to VMkernel interface name: ip_address required: true - description: Subnet Mask to assign to VMkernel interface name: subnet_mask required: true description: Configure the VMkernel IP Address name: vmware-vmkernel-ip-config - arguments: - description: |- 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. name: vm_name - description: |- UUID of the virtual machine to perform a vMotion operation on. This is a required parameter, if `vm_name` or `moid` is not set. name: vm_uuid - description: |- Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if `vm_name` or `vm_uuid` is not supplied. name: moid - defaultValue: "False" description: Whether to use the VMware instance UUID rather than the BIOS UUID. name: use_instance_uuid - description: |- 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. name: destination_host - description: Name of the destination datastore the virtual machine's vmdk should be moved on. name: destination_datastore description: Move a virtual machine using vMotion, and/or its vmdks using storage vMotion. name: vmware-vmotion - arguments: - description: Desired cluster UUID name: cluster_uuid description: Configure VSAN clustering on an ESXi host name: vmware-vsan-cluster - arguments: - description: The name of the distributed vSwitch on which to add or remove the mirroring session. name: switch required: true - description: Name of the session. name: name required: true - auto: PREDEFINED description: Create or remove the session. name: state predefined: - present - absent required: true - auto: PREDEFINED defaultValue: dvPortMirror description: |- Select the mirroring type. - `encapsulatedRemoteMirrorSource` (str): In encapsulatedRemoteMirrorSource session, Distributed Ports can be used as source entities, and Ip address can be used as destination entities. - `remoteMirrorDest` (str): In remoteMirrorDest session, vlan Ids can be used as source entities, and Distributed Ports can be used as destination entities. - `remoteMirrorSource` (str): In remoteMirrorSource session, Distributed Ports can be used as source entities, and uplink ports name can be used as destination entities. - `dvPortMirror` (str): In dvPortMirror session, Distributed Ports can be used as both source and destination entities. name: session_type predefined: - encapsulatedRemoteMirrorSource - remoteMirrorDest - remoteMirrorSource - dvPortMirror - defaultValue: "True" description: Whether the session is enabled. name: enabled - description: The description for the session. name: description - description: Source port for which transmitted packets are mirrored. name: source_port_transmitted - description: Source port for which received packets are mirrored. name: source_port_received - description: Destination port that received the mirrored packets. Also any port designated in the value of this property can not match the source port in any of the Distributed Port Mirroring session. name: destination_port - description: VLAN ID used to encapsulate the mirrored traffic. name: encapsulation_vlan_id - description: Whether to strip the original VLAN tag. if false, the original VLAN tag will be preserved on the mirrored traffic. If encapsulationVlanId has been set and this property is false, the frames will be double tagged with the original VLAN ID as the inner tag. name: strip_original_vlan - description: An integer that describes how much of each frame to mirror. If unset, all of the frame would be mirrored. Setting this property to a smaller value is useful when the consumer will look only at the headers. The value cannot be less than 60. name: mirrored_packet_length - description: Whether or not destination ports can send and receive "normal" traffic. Setting this to false will make mirror ports be used solely for mirroring and not double as normal access ports. name: normal_traffic_allowed - description: Sampling rate of the session. If its value is n, one of every n packets is mirrored. Valid values are between 1 to 65535, and default value is 1. name: sampling_rate - description: |- With this parameter it is possible, to add a NIC of a VM to a port mirroring session. Valid attributes are: - `name` (str): Name of the VM - `nic_label` (bool): Label of the Network Interface Card to use. isArray: true name: source_vm_transmitted - description: |- With this parameter it is possible, to add a NIC of a VM to a port mirroring session. Valid attributes are: - `name` (str): Name of the VM - `nic_label` (bool): Label of the Network Interface Card to use. isArray: true name: source_vm_received - description: |- With this parameter it is possible, to add a NIC of a VM to a port mirroring session. Valid attributes are: - `name` (str): Name of the VM - `nic_label` (bool): Label of the Network Interface Card to use. isArray: true name: destination_vm description: Create or remove a Port Mirroring session. name: vmware-vspan-session - arguments: - description: |- vSwitch name to add. Alias `switch` is added in version 2.4. name: switch required: true - defaultValue: '[]' description: |- A list of vmnic names or vmnic name to attach to vSwitch. Alias `nics` is added in version 2.4. isArray: true name: nics - defaultValue: "128" description: Number of port to configure on vSwitch. name: number_of_ports - defaultValue: "1500" description: MTU to configure on vSwitch. name: mtu - auto: PREDEFINED defaultValue: present description: Add or remove the switch. name: state predefined: - absent - present - description: Manage the vSwitch using this ESXi host system. name: esxi_hostname description: Manage a VMware Standard Switch to an ESXi host. name: vmware-vswitch - arguments: - description: |- Name of the cluster. Info about vswitch belonging to every ESXi host systems under this cluster will be returned. If `esxi_hostname` is not given, this parameter is required. name: cluster_name - description: |- ESXi hostname to gather information from. If `cluster_name` is not given, this parameter is required. name: esxi_hostname description: Gathers info about an ESXi host's vswitch configurations name: vmware-vswitch-info - arguments: - description: The vCenter server on which the datastore is available. name: host required: true - description: The datacenter on the vCenter server that holds the datastore. name: datacenter required: true - description: The datastore on the vCenter server to push files to. name: datastore required: true - description: The file or directory on the datastore on the vCenter server. name: path required: true - defaultValue: "10" description: The timeout in seconds for the upload to the datastore. name: timeout - auto: PREDEFINED defaultValue: file description: |- The state of or the action on the provided path. If `absent`, the file will be removed. If `directory`, the directory will be created. If `file`, more information of the (existing) file will be returned. If `touch`, an empty file will be created if the path does not exist. name: state predefined: - absent - directory - file - touch description: Manage files on a vCenter datastore name: vmware-vsphere-file - arguments: - description: The extension key of the extension to install or uninstall. name: extension_key required: true - description: The version of the extension you are installing or uninstalling. name: version required: true - description: Required for `state=present`. The name of the extension you are installing. name: name - description: Required for `state=present`. The name of the company that makes the extension. name: company - description: Required for `state=present`. A short description of the extension. name: description - description: Required for `state=present`. Administrator email to use for extension. name: email - description: Required for `state=present`. Link to server hosting extension zip file to install. name: url - description: Required for `state=present`. SSL thumbprint of the extension hosting server. name: ssl_thumbprint - defaultValue: vsphere-client-serenity description: Required for `state=present`. Type of server being used to install the extension (SOAP, REST, HTTP, etc.). name: server_type - defaultValue: vsphere-client-serenity description: Required for `state=present`. Type of client the extension is (win32, .net, linux, etc.). name: client_type - defaultValue: "True" description: Show the extension in solution manager inside vCenter. name: visible - auto: PREDEFINED defaultValue: present description: Add or remove vCenter Extension. name: state predefined: - absent - present description: Register/deregister vCenter Extensions name: vmware-vcenter-extension - arguments: [] description: Gather info vCenter extensions name: vmware-vcenter-extension-info - arguments: - description: Name of the datacenter. name: datacenter required: true - description: |- Name of folder to be managed. This is case sensitive parameter. Folder name should be under 80 characters. This is a VMware restriction. name: folder_name required: true - description: |- Name of the parent folder under which new folder needs to be created. This is case sensitive parameter. Please specify unique folder name as there is no way to detect duplicate names. If user wants to create a folder under '/DC0/vm/vm_folder', this value will be 'vm_folder'. name: parent_folder - auto: PREDEFINED defaultValue: vm description: |- This is type of folder. If set to `vm`, then 'VM and Template Folder' is created under datacenter. If set to `host`, then 'Host and Cluster Folder' is created under datacenter. If set to `datastore`, then 'Storage Folder' is created under datacenter. If set to `network`, then 'Network Folder' is created under datacenter. This parameter is required, if `state` is set to `present` and parent_folder is absent. This option is ignored, if `parent_folder` is set. name: folder_type predefined: - datastore - host - network - vm - auto: PREDEFINED defaultValue: present description: |- State of folder. If set to `present` without parent folder parameter, then folder with `folder_type` is created. If set to `present` with parent folder parameter, then folder in created under parent folder. `folder_type` is ignored. If set to `absent`, then folder is unregistered and destroyed. name: state predefined: - present - absent description: Manage folders on given datacenter name: vmware-vcenter-folder outputs: - contextPath: VMwareV2.result.path description: the full path of the new folder type: string - contextPath: VMwareV2.result.msg description: string stating about result type: string - arguments: - defaultValue: '{''source'': ''ansible''}' description: |- The optional labels of the license key to manage in vSphere vCenter. This is dictionary with key/value pair. isArray: true name: labels - description: The license key to manage in vSphere vCenter. name: license required: true - auto: PREDEFINED defaultValue: present description: Whether to add (`present`) or remove (`absent`) the license key. name: state predefined: - absent - present - description: |- The hostname of the ESXi server to which the specified license will be assigned. This parameter is optional. name: esxi_hostname - description: The datacenter name to use for the operation. name: datacenter - description: Name of the cluster to apply vSAN license. name: cluster_name description: Manage VMware vCenter license keys name: vmware-vcenter-license dockerimage: demisto/ansible-runner:1.0.0.21184 script: '' subtype: python3 type: python fromversion: 6.0.0 tests: - No tests (auto formatted) deprecated: true