community / community.vmware / 1.18.2 / module / vmware_dvs_portgroup Create or remove a Distributed vSwitch portgroup. Authors: Joseph Callen (@jcpowermac), Philippe Dellaert (@pdellaert) <philippe@dellaert.org>community.vmware.vmware_dvs_portgroup (1.18.2) — module
Install with ansible-galaxy collection install community.vmware:==1.18.2
collections: - name: community.vmware version: 1.18.2
Create or remove a Distributed vSwitch portgroup.
- name: Create vlan portgroup community.vmware.vmware_dvs_portgroup: hostname: '{{ vcenter_hostname }}' username: '{{ vcenter_username }}' password: '{{ vcenter_password }}' portgroup_name: vlan-123-portrgoup switch_name: dvSwitch vlan_id: 123 num_ports: 120 port_binding: static state: present delegate_to: localhost
- name: Create vlan trunk portgroup community.vmware.vmware_dvs_portgroup: hostname: '{{ vcenter_hostname }}' username: '{{ vcenter_username }}' password: '{{ vcenter_password }}' portgroup_name: vlan-trunk-portrgoup switch_name: dvSwitch vlan_id: 1-1000, 1005, 1100-1200 vlan_trunk: True num_ports: 120 port_binding: static state: present delegate_to: localhost
- name: Create private vlan portgroup vmware_dvs_portgroup: hostname: '{{ vcenter_hostname }}' username: '{{ vcenter_username }}' password: '{{ vcenter_password }}' portgroup_name: private-vlan-portrgoup switch_name: dvSwitch vlan_id: 1001 vlan_private: True num_ports: 120 port_binding: static state: present delegate_to: localhost
- name: Create no-vlan portgroup community.vmware.vmware_dvs_portgroup: hostname: '{{ vcenter_hostname }}' username: '{{ vcenter_username }}' password: '{{ vcenter_password }}' portgroup_name: no-vlan-portrgoup switch_name: dvSwitch vlan_id: 0 num_ports: 120 port_binding: static state: present delegate_to: localhost
- name: Create vlan portgroup with all security and port policies community.vmware.vmware_dvs_portgroup: hostname: '{{ vcenter_hostname }}' username: '{{ vcenter_username }}' password: '{{ vcenter_password }}' portgroup_name: vlan-123-portrgoup switch_name: dvSwitch vlan_id: 123 num_ports: 120 port_binding: static state: present network_policy: promiscuous: true forged_transmits: true mac_changes: true port_policy: block_override: true ipfix_override: true live_port_move: true network_rp_override: true port_config_reset_at_disconnect: true security_override: true shaping_override: true traffic_filter_override: true uplink_teaming_override: true vendor_config_override: true vlan_override: true delegate_to: localhost
port: default: 443 description: - The port number of the vSphere vCenter or ESXi server. - If the value is not specified in the task, the value of environment variable C(VMWARE_PORT) will be used instead. - Environment variable support added in Ansible 2.6. type: int state: choices: - present - absent description: - Determines if the portgroup should be present or not. required: true type: str vlan_id: description: - The VLAN ID that should be configured with the portgroup, use 0 for no VLAN. - 'If C(vlan_trunk) is configured to be I(true), this can be a combination of multiple ranges and numbers, example: 1-200, 205, 400-4094.' - The valid C(vlan_id) range is from 0 to 4094. Overlapping ranges are allowed. - If C(vlan_private) is configured to be I(true), the corresponding private VLAN should already be configured in the distributed vSwitch. required: true type: str hostname: description: - 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 C(VMWARE_HOST) will be used instead. - Environment variable support added in Ansible 2.6. type: str password: aliases: - pass - pwd description: - The password of the vSphere vCenter or ESXi server. - If the value is not specified in the task, the value of environment variable C(VMWARE_PASSWORD) will be used instead. - Environment variable support added in Ansible 2.6. type: str username: aliases: - admin - user description: - The username of the vSphere vCenter or ESXi server. - If the value is not specified in the task, the value of environment variable C(VMWARE_USER) will be used instead. - Environment variable support added in Ansible 2.6. type: str num_ports: description: - The number of ports the portgroup should contain. type: int proxy_host: description: - 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 C(VMWARE_PROXY_HOST) will be used instead. - This feature depends on a version of pyvmomi greater than v6.7.1.2018.12 required: false type: str proxy_port: description: - 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 C(VMWARE_PROXY_PORT) will be used instead. required: false type: int vlan_trunk: default: false description: - Indicates whether this is a VLAN trunk or not. - Mutually exclusive with C(vlan_private) parameter. required: false type: bool port_policy: default: block_override: true ipfix_override: false live_port_move: false network_rp_override: false port_config_reset_at_disconnect: true security_override: false shaping_override: false traffic_filter_override: false uplink_teaming_override: false vendor_config_override: false vlan_override: false description: - Dictionary which configures the advanced policy settings for the portgroup. suboptions: block_override: default: true description: - Indicates if the block policy can be changed per port. type: bool ipfix_override: default: false description: - Indicates if the ipfix policy can be changed per port. type: bool live_port_move: default: false description: - Indicates if a live port can be moved in or out of the portgroup. type: bool network_rp_override: default: false description: - Indicates if the network resource pool can be changed per port. type: bool port_config_reset_at_disconnect: default: true description: - Indicates if the configuration of a port is reset automatically after disconnect. required: false type: bool security_override: default: false description: - Indicates if the security policy can be changed per port. type: bool shaping_override: default: false description: - Indicates if the shaping policy can be changed per port. type: bool traffic_filter_override: default: false description: - Indicates if the traffic filter can be changed per port. type: bool uplink_teaming_override: default: false description: - Indicates if the uplink teaming policy can be changed per port. type: bool vendor_config_override: default: false description: - Indicates if the vendor config can be changed per port. type: bool vlan_override: default: false description: - Indicates if the vlan can be changed per port. type: bool type: dict switch_name: description: - The name of the distributed vSwitch the port group should be created on. required: true type: str mac_learning: description: - Dictionary which configures MAC learning for portgroup. suboptions: allow_unicast_flooding: description: The flag to allow flooding of unlearned MAC for ingress traffic. required: false type: bool enabled: description: The flag to indicate if source MAC address learning is allowed. required: false type: bool limit: description: The maximum number of MAC addresses that can be learned. required: false type: int limit_policy: choices: - allow - drop description: The default switching policy after MAC limit is exceeded. required: false type: str type: dict version_added: 1.10.0 version_added_collection: community.vmware port_binding: choices: - static - ephemeral description: - The type of port binding determines when ports in a port group are assigned to virtual machines. - See VMware KB 1022312 U(https://kb.vmware.com/s/article/1022312) for more details. type: str version_added: 1.10.0 version_added_collection: community.vmware vlan_private: default: false description: - Indicates whether this is for a private VLAN or not. - Mutually exclusive with C(vlan_trunk) parameter. required: false type: bool network_policy: default: forged_transmits: false mac_changes: false promiscuous: false description: - Dictionary which configures the different security values for portgroup. required: false suboptions: forged_transmits: default: false description: Indicates whether forged transmits are allowed. type: bool mac_changes: default: false description: Indicates whether mac changes are allowed. type: bool promiscuous: default: false description: Indicates whether promiscuous mode is allowed. type: bool type: dict portgroup_name: description: - The name of the portgroup that is to be created or deleted. required: true type: str portgroup_type: choices: - earlyBinding - lateBinding - ephemeral description: - See VMware KB 1022312 regarding portgroup types. - Deprecated. Will be removed 2021-12-01. type: str teaming_policy: default: load_balance_policy: loadbalance_srcid notify_switches: true rolling_order: false description: - Dictionary which configures the different teaming values for portgroup. suboptions: active_uplinks: description: - List of active uplinks used for load balancing. elements: str type: list version_added: 1.10.0 version_added_collection: community.vmware inbound_policy: description: - Indicate whether or not the teaming policy is applied to inbound frames as well. type: bool load_balance_policy: choices: - loadbalance_ip - loadbalance_srcmac - loadbalance_srcid - loadbalance_loadbased - failover_explicit default: loadbalance_srcid description: - Network adapter teaming policy. - C(loadbalance_loadbased) is available from version 2.6 and onwards. type: str notify_switches: default: true description: - Indicate whether or not to notify the physical switch if a link fails. type: bool rolling_order: default: false description: - Indicate whether or not to use a rolling policy when restoring links. type: bool standby_uplinks: description: - List of standby uplinks used for failover. elements: str type: list version_added: 1.10.0 version_added_collection: community.vmware type: dict validate_certs: default: true description: - Allows connection when SSL certificates are not valid. Set to C(false) when certificates are not trusted. - If the value is not specified in the task, the value of environment variable C(VMWARE_VALIDATE_CERTS) will be used instead. - Environment variable support added in Ansible 2.6. - If set to C(true), please make sure Python >= 2.7.9 is installed on the given machine. type: bool port_allocation: choices: - elastic - fixed description: - Elastic port groups automatically increase or decrease the number of ports as needed. - Only valid if I(port_binding) is set to C(static). - Will be C(elastic) if not specified and I(port_binding) is set to C(static). type: str version_added: 1.10.0 version_added_collection: community.vmware