Note
This plugin is part of the community.vmware collection.
To install it use: ansible-galaxy collection install community.vmware
.
To use it in a playbook, specify: community.vmware.vmware_portgroup
.
The below requirements are needed on the host that executes this module.
Parameter | Choices/Defaults | Comments | |
---|---|---|---|
cluster_name string | 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.aliases: cluster | ||
hostname string | The hostname or IP address of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable VMWARE_HOST will be used instead.Environment variable support added in Ansible 2.6. | ||
hosts list / elements=string | List of name of host or hosts on which portgroup needs to be added. This option is required if cluster_name is not specified.aliases: esxi_hostname | ||
password string | The password of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable VMWARE_PASSWORD will be used instead.Environment variable support added in Ansible 2.6. aliases: pass, pwd | ||
port integer | Default: 443 | The port number of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable VMWARE_PORT will be used instead.Environment variable support added in Ansible 2.6. | |
portgroup string / required | Portgroup name to add. aliases: portgroup_name | ||
proxy_host string | Address of a proxy that will receive all HTTPS requests and relay them. The format is a hostname or a IP. If the value is not specified in the task, the value of environment variable VMWARE_PROXY_HOST will be used instead.This feature depends on a version of pyvmomi greater than v6.7.1.2018.12 | ||
proxy_port integer | Port of the HTTP proxy that will receive all HTTPS requests and relay them. If the value is not specified in the task, the value of environment variable VMWARE_PROXY_PORT will be used instead. | ||
security dictionary | 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. aliases: security_policy, network_policy | ||
forged_transmits boolean |
| Indicates whether forged transmits are allowed. | |
mac_changes boolean |
| Indicates whether mac changes are allowed. | |
promiscuous_mode boolean |
| Indicates whether promiscuous mode is allowed. | |
state string |
| Determines if the portgroup should be present or not. | |
switch string / required | vSwitch to modify. aliases: switch_name, vswitch | ||
teaming dictionary | Dictionary which configures the different teaming values for portgroup. aliases: teaming_policy | ||
active_adapters list / elements=string | List of active adapters used for load balancing. All vmnics are used as active adapters if active_adapters and standby_adapters are not defined. | ||
failback boolean |
| Indicate whether or not to use a failback when restoring links. | |
load_balancing string |
| Network adapter teaming policy. aliases: load_balance_policy | |
network_failure_detection string |
| Network failure detection. | |
notify_switches boolean |
| Indicate whether or not to notify the physical switch if a link fails. | |
standby_adapters list / elements=string | List of standby adapters used for failover. All vmnics are used as active adapters if active_adapters and standby_adapters are not defined. | ||
traffic_shaping dictionary | Dictionary which configures traffic shaping for the switch. | ||
average_bandwidth integer | Average bandwidth (kbit/s). | ||
burst_size integer | Burst size (KB). | ||
enabled boolean |
| Status of Traffic Shaping Policy. | |
peak_bandwidth integer | Peak bandwidth (kbit/s). | ||
username string | The username of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable VMWARE_USER will be used instead.Environment variable support added in Ansible 2.6. aliases: admin, user | ||
validate_certs boolean |
| Allows connection when SSL certificates are not valid. Set to false when certificates are not trusted.If the value is not specified in the task, the value of environment variable VMWARE_VALIDATE_CERTS will be used instead.Environment variable support added in Ansible 2.6. If set to yes , please make sure Python >= 2.7.9 is installed on the given machine. | |
vlan_id integer | Default: 0 | VLAN ID to assign to portgroup. Set to 0 (no VLAN tagging) by default. aliases: vlan |
Note
inbound_policy
and rolling_order
are removed in 2.11.- name: Add Management Network VM Portgroup community.vmware.vmware_portgroup: hostname: "{{ esxi_hostname }}" username: "{{ esxi_username }}" password: "{{ esxi_password }}" switch: "{{ vswitch_name }}" portgroup: "{{ portgroup_name }}" vlan_id: "{{ vlan_id }}" delegate_to: localhost - name: Add Portgroup with Promiscuous Mode Enabled community.vmware.vmware_portgroup: hostname: "{{ esxi_hostname }}" username: "{{ esxi_username }}" password: "{{ esxi_password }}" switch: "{{ vswitch_name }}" portgroup: "{{ portgroup_name }}" security: promiscuous_mode: True delegate_to: localhost - name: Add Management Network VM Portgroup to specific hosts community.vmware.vmware_portgroup: hostname: "{{ vcenter_hostname }}" username: "{{ vcenter_username }}" password: "{{ vcenter_password }}" hosts: [esxi_hostname_one] switch: "{{ vswitch_name }}" portgroup: "{{ portgroup_name }}" vlan_id: "{{ vlan_id }}" delegate_to: localhost - name: Add Management Network VM Portgroup to all hosts in a cluster community.vmware.vmware_portgroup: hostname: "{{ vcenter_hostname }}" username: "{{ vcenter_username }}" password: "{{ vcenter_password }}" cluster_name: "{{ cluster_name }}" switch: "{{ vswitch_name }}" portgroup: "{{ portgroup_name }}" vlan_id: "{{ vlan_id }}" delegate_to: localhost - name: Remove Management Network VM Portgroup to all hosts in a cluster community.vmware.vmware_portgroup: hostname: "{{ vcenter_hostname }}" username: "{{ vcenter_username }}" password: "{{ vcenter_password }}" cluster_name: "{{ cluster_name }}" switch: "{{ vswitch_name }}" portgroup: "{{ portgroup_name }}" vlan_id: "{{ vlan_id }}" state: absent delegate_to: localhost - name: Add Portgroup with all settings defined community.vmware.vmware_portgroup: hostname: "{{ vcenter_hostname }}" username: "{{ vcenter_username }}" password: "{{ vcenter_password }}" esxi_hostname: "{{ inventory_hostname }}" switch: "{{ vswitch_name }}" portgroup: "{{ portgroup_name }}" vlan_id: 10 security: promiscuous_mode: False mac_changes: False forged_transmits: False traffic_shaping: enabled: True average_bandwidth: 100000 peak_bandwidth: 100000 burst_size: 102400 teaming: load_balancing: failover_explicit network_failure_detection: link_status_only notify_switches: true failback: true active_adapters: - vmnic0 standby_adapters: - vmnic1 delegate_to: localhost register: teaming_result
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
result dictionary | always | metadata about the portgroup Sample: {'esxi01.example.com': {'changed': True, 'failback': 'No override', 'failover_active': 'No override', 'failover_standby': 'No override', 'failure_detection': 'No override', 'load_balancing': 'No override', 'msg': 'Port Group added', 'notify_switches': 'No override', 'portgroup': 'vMotion', 'sec_forged_transmits': False, 'sec_mac_changes': False, 'sec_promiscuous_mode': False, 'traffic_shaping': 'No override', 'vlan_id': 33, 'vswitch': 'vSwitch1'}} |
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/vmware/vmware_portgroup_module.html