cisco.intersight.intersight_fibre_channel_qos_policy module – Manage Fibre Channel QoS Policies for Cisco Intersight

Note

This module is part of the cisco.intersight collection (version 2.7.0).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install cisco.intersight.

To use it in a playbook, specify: cisco.intersight.intersight_fibre_channel_qos_policy.

Synopsis

  • Create, update, and delete Fibre Channel QoS Policies on Cisco Intersight.

  • Fibre Channel QoS policies configure Quality of Service settings for Fibre Channel virtual interfaces.

  • These policies control bandwidth rate limits, maximum data field size, class of service, and burst traffic.

  • For more information see Cisco Intersight.

Parameters

Parameter

Comments

api_key_id

string / required

Public API Key ID associated with the private key.

If not set, the value of the INTERSIGHT_API_KEY_ID environment variable is used.

api_private_key

path / required

Filename (absolute path) or string of PEM formatted private key data to be used for Intersight API authentication.

If a string is used, Ansible vault should be used to encrypt string data.

Ex. ansible-vault encrypt_string --vault-id tme@/Users/dsoper/Documents/vault_password_file ‘-----BEGIN EC PRIVATE KEY-----

<your private key data>

-----END EC PRIVATE KEY-----’

If not set, the value of the INTERSIGHT_API_PRIVATE_KEY environment variable is used.

api_uri

string

URI used to access the Intersight API.

If not set, the value of the INTERSIGHT_API_URI environment variable is used.

Default: "https://intersight.com/api/v1"

burst

integer

The burst traffic, in bytes, allowed on the vHBA.

Valid range is 1 to 1000000 bytes.

Default: 10240

cos

integer

Class of Service to be associated to the traffic on the virtual interface.

Valid range is 0 to 6.

Default: 3

description

aliases: descr

string

The user-defined description for the Fibre Channel QoS Policy.

Description can contain letters(a-z, A-Z), numbers(0-9), hyphen(-), period(.), colon(:), or an underscore(_).

max_data_field_size

integer

The maximum size of the Fibre Channel frame payload bytes that the virtual interface supports.

Valid range is 256 to 2112 bytes.

Default: 2112

name

string / required

The name assigned to the Fibre Channel QoS Policy.

Must be unique within the organization.

The name must be between 1 and 62 alphanumeric characters, allowing special characters :-_.

organization

string

The name of the Organization this resource is assigned to.

Policies created within a Custom Organization are applicable only to devices in the same Organization.

Use ‘default’ for the default organization.

Default: "default"

rate_limit

integer

The value in Mbps to use for limiting the data rate on the virtual interface.

A value of 0 means no rate limiting.

Valid range is 0 to 100000 Mbps.

Default: 0

state

string

If present, will verify the resource is present and will create if needed.

If absent, will verify the resource is absent and will delete if needed.

Choices:

  • "present" ← (default)

  • "absent"

tags

list / elements=dictionary

List of tags in Key:<user-defined key> Value:<user-defined value> format.

use_proxy

boolean

If no, it will not use a proxy, even if one is defined in an environment variable on the target hosts.

Choices:

  • false

  • true ← (default)

validate_certs

boolean

Boolean control for verifying the api_uri TLS certificate

Choices:

  • false

  • true ← (default)

Examples

- name: Create Fibre Channel QoS Policy with default settings
  cisco.intersight.intersight_fibre_channel_qos_policy:
    api_private_key: "{{ api_private_key }}"
    api_key_id: "{{ api_key_id }}"
    organization: "default"
    name: "fc-qos-default"
    description: "Fibre Channel QoS policy with default values"
    state: present

- name: Create Fibre Channel QoS Policy with custom settings
  cisco.intersight.intersight_fibre_channel_qos_policy:
    api_private_key: "{{ api_private_key }}"
    api_key_id: "{{ api_key_id }}"
    organization: "default"
    name: "fc-qos-custom"
    description: "Fibre Channel QoS policy with custom values"
    rate_limit: 10000
    max_data_field_size: 2048
    cos: 5
    burst: 20480
    tags:
      - Key: Environment
        Value: Production
    state: present

- name: Create Fibre Channel QoS Policy with maximum rate limit
  cisco.intersight.intersight_fibre_channel_qos_policy:
    api_private_key: "{{ api_private_key }}"
    api_key_id: "{{ api_key_id }}"
    organization: "Engineering"
    name: "fc-qos-high-bandwidth"
    description: "Fibre Channel QoS policy with maximum bandwidth"
    rate_limit: 100000
    max_data_field_size: 2112
    cos: 6
    burst: 1000000
    state: present

- name: Create Fibre Channel QoS Policy with minimal frame size
  cisco.intersight.intersight_fibre_channel_qos_policy:
    api_private_key: "{{ api_private_key }}"
    api_key_id: "{{ api_key_id }}"
    organization: "default"
    name: "fc-qos-minimal"
    description: "Fibre Channel QoS policy with minimal frame size"
    rate_limit: 0
    max_data_field_size: 256
    cos: 0
    burst: 1
    state: present

- name: Update Fibre Channel QoS Policy description
  cisco.intersight.intersight_fibre_channel_qos_policy:
    api_private_key: "{{ api_private_key }}"
    api_key_id: "{{ api_key_id }}"
    organization: "default"
    name: "fc-qos-default"
    description: "Updated Fibre Channel QoS policy description"
    state: present

- name: Delete Fibre Channel QoS Policy
  cisco.intersight.intersight_fibre_channel_qos_policy:
    api_private_key: "{{ api_private_key }}"
    api_key_id: "{{ api_key_id }}"
    organization: "default"
    name: "fc-qos-default"
    state: absent

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

api_response

dictionary

The API response output returned by the specified resource.

Returned: always

Sample: {"api_response": {"Burst": 20480, "Cos": 5, "Description": "Fibre Channel QoS policy with custom values", "MaxDataFieldSize": 2048, "Moid": "1234567890abcdef12345678", "Name": "fc-qos-custom", "ObjectType": "vnic.FcQosPolicy", "Organization": {"Moid": "abcdef1234567890abcdef12", "ObjectType": "organization.Organization"}, "RateLimit": 10000, "Tags": [{"Key": "Environment", "Value": "Production"}]}}

Authors

  • Ron Gershburg (@rgershbu)