# ucs_vnic_template – Configures vNIC templates on Cisco UCS Manager

New in version 2.5.

- Synopsis

- Requirements

- Parameters

- Examples

- Status

## Synopsis

- Configures vNIC templates on Cisco UCS Manager.

- Examples can be used with the UCS Platform Emulator https://communities.cisco.com/ucspe.

## Requirements

The below requirements are needed on the host that executes this module.

- ucsmsdk

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
cdn_name - |  | CDN Name used when cdn_source is set to user-defined.

cdn_source
-

Choices:
- vnic-name ←
- user-defined

CDN Source field.
This can be one of the following options:
vnic-name - Uses the vNIC template name of the vNIC instance as the CDN name. This is the default option.
user-defined - Uses a user-defined CDN name for the vNIC template. If this option is chosen, cdn_name must also be provided.

description - |  | A user-defined description of the vNIC template. Enter up to 256 characters. You can use any characters or spaces except the following: ` (accent mark), (backslash), ^ (carat), " (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote). aliases: descr

fabric
-

Choices:
- A ←
- B
- A-B
- B-A

The Fabric ID field specifying the fabric interconnect associated with vNICs created from this template.
If you want fabric failover enabled on vNICs created from this template, use of of the following:"
A-B to use Fabric A by default with failover enabled.
B-A to use Fabric B by default with failover enabled.
Do not enable vNIC fabric failover under the following circumstances:
- If the Cisco UCS domain is running in Ethernet switch mode. vNIC fabric failover is not supported in that mode.
- If you plan to associate one or more vNICs created from this template to a server with an adapter that does not support fabric failover.

hostname string / required |  | IP address or hostname of Cisco UCS Manager.
mac_pool - |  | The MAC address pool that vNICs created from this vNIC template should use.
mtu - | Default: "1500" | The MTU field. The maximum transmission unit, or packet size, that vNICs created from this vNIC template should use. Enter a string between '1500' and '9000'. If the vNIC template has an associated QoS policy, the MTU specified here must be equal to or less than the MTU specified in the QoS system class.
name - / required |  | The name of the vNIC template. This name can be between 1 and 16 alphanumeric characters. You cannot use spaces or any special characters other than - (hyphen), "_" (underscore), : (colon), and . (period). You cannot change this name after the template is created.
network_control_policy - |  | The network control policy that vNICs created from this vNIC template should use.
org_dn - | Default: "org-root" | Org dn (distinguished name)
password string / required |  | Password for Cisco UCS Manager authentication.

peer_redundancy_template
-

The Peer Redundancy Template.
The name of the vNIC template sharing a configuration with this template.
If the redundancy_type is primary, the name of the secondary template should be provided.
If the redundancy_type is secondary, the name of the primary template should be provided.
Secondary templates can only configure non-shared properties (name, description, and mac_pool).
aliases: peer_redundancy_templ

pin_group - |  | The LAN pin group that vNICs created from this vNIC template should use.
port integer |  | Port number to be used during connection (by default uses 443 for https and 80 for http connection).
proxy string |  | If use_proxy is no, specfies proxy to be used for connection. e.g. 'http://proxy.xy.z:8080'
qos_policy - |  | The quality of service (QoS) policy that vNICs created from this vNIC template should use.

redundancy_type
-

Choices:
- none ←
- primary
- secondary

The Redundancy Type used for vNIC redundancy pairs during fabric failover.
This can be one of the following:
primary — Creates configurations that can be shared with the Secondary template.
secondary — All shared configurations are inherited from the Primary template.
none - Legacy vNIC template behavior. Select this option if you do not want to use redundancy.

state
-

Choices:
- present ←
- absent

If `present`, will verify vNIC templates are present and will create if needed.
If `absent`, will verify vNIC templates are absent and will delete if needed.

stats_policy - | Default: "default" | The statistics collection policy that vNICs created from this vNIC template should use.

target
-

Default:
"adapter"

The possible target for vNICs created from this template.
The target determines whether or not Cisco UCS Manager automatically creates a VM-FEX port profile with the appropriate settings for the vNIC template.
This can be one of the following:
adapter — The vNICs apply to all adapters. No VM-FEX port profile is created if you choose this option.
vm - The vNICs apply to all virtual machines. A VM-FEX port profile is created if you choose this option.

template_type
-

Choices:
- initial-template ←
- updating-template

The Template Type field.
This can be one of the following:
initial-template — vNICs created from this template are not updated if the template changes.
updating-template - vNICs created from this template are updated if the template changes.

use_proxy
boolean

Choices:
- no
- yes ←

If `no`, will not use the proxy as defined by system environment variable.

use_ssl
boolean

Choices:
- no
- yes ←

If `no`, an HTTP connection will be used instead of the default HTTPS connection.

username string | Default: "admin" | Username for Cisco UCS Manager authentication.

vlans_list
-

List of VLANs used by the vNIC template.
Each list element has the following suboptions:
= name
The name of the VLAN (required).
- native
Designates the VLAN as a native VLAN. Only one VLAN in the list can be a native VLAN.
[choices: 'no', 'yes']
[Default: 'no']
- state
If present, will verify VLAN is present on template.
If absent, will verify VLAN is absent on template.
choices: [present, absent]
default: present

## Examples

    - name: Configure vNIC template
      ucs_vnic_template:
        hostname: 172.16.143.150
        username: admin
        password: password
        name: vNIC-A
        fabric: A
        vlans_list:
        - name: default
          native: 'yes'

    - name: Configure vNIC template with failover
      ucs_vnic_template:
        hostname: 172.16.143.150
        username: admin
        password: password
        name: vNIC-A-B
        fabric: A-B
        vlans_list:
        - name: default
          native: 'yes'
          state: present

    - name: Remove vNIC template
      ucs_vnic_template:
        hostname: 172.16.143.150
        username: admin
        password: password
        name: vNIC-A
        state: absent

    - name: Remove another vNIC template
      ucs_vnic_template:
        hostname: 172.16.143.150
        username: admin
        password: password
        name: vNIC-A-B
        state: absent

    - name: Remove VLAN from template
      ucs_vnic_template:
        hostname: 172.16.143.150
        username: admin
        password: password
        name: vNIC-A-B
        fabric: A-B
        vlans_list:
        - name: default
          native: 'yes'
          state: absent

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by an Ansible Partner. [certified]

### Authors

- David Soper (@dsoper2)

- CiscoUcs (@CiscoUcs)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.