cisco.intersight.intersight_network_connectivity_policy module – Network Connectivity Policy configuration for Cisco Intersight

Note

This module is part of the cisco.intersight collection (version 2.2.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_network_connectivity_policy.

Synopsis

  • Manages Network Connectivity Policy configuration on Cisco Intersight.

  • A policy to configure network connectivity settings including DNS and IPv6 on Cisco Intersight managed servers.

  • For more information see Cisco Intersight.

Parameters

Parameter

Comments

alternate_ipv4_dns_server

string

IP address of the secondary DNS server.

This is used when enable_ipv4_dns_from_dhcp is false.

Default: "0.0.0.0"

alternate_ipv6_dns_server

string

IP address of the secondary DNS server.

Default: "::"

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"

description

aliases: descr

string

The user-defined description for the Network Connectivity Policy.

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

dynamic_dns_domain

string

The domain name appended to a hostname for a Dynamic DNS (DDNS) update.

If left blank, only a hostname is sent to the DDNS update request.

This parameter is optional even when enable_dynamic_dns is true.

enable_dynamic_dns

boolean

If enabled, updates the resource records to the DNS from Cisco IMC.

Choices:

  • false ← (default)

  • true

enable_ipv4_dns_from_dhcp

boolean

Enable IPv4 DNS from DHCP.

If enabled, Cisco IMC retrieves the DNS server addresses from DHCP.

Choices:

  • false ← (default)

  • true

enable_ipv6

boolean

If enabled, allows to configure IPv6 properties.

Choices:

  • false ← (default)

  • true

enable_ipv6_dns_from_dhcp

boolean

If enabled, Cisco IMC retrieves the DNS server addresses from DHCP.

Use DHCP field must be enabled for IPv6 in Cisco IMC to enable it.

Choices:

  • false ← (default)

  • true

name

string / required

The name assigned to the Network Connectivity Policy.

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.

Profiles, Policies, and Pools that are created within a Custom Organization are applicable only to devices in the same Organization.

Default: "default"

preferred_ipv4_dns_server

string

IP address of the primary DNS server.

This is used when enable_ipv4_dns_from_dhcp is false.

Default: "0.0.0.0"

preferred_ipv6_dns_server

string

IP address of the primary DNS server.

Default: "::"

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 a Network Connectivity Policy with Dynamic DNS enabled
  cisco.intersight.intersight_network_connectivity_policy:
    api_private_key: "{{ api_private_key }}"
    api_key_id: "{{ api_key_id }}"
    organization: "default"
    name: "DynamicDNS-Policy"
    description: "Network connectivity policy with Dynamic DNS"
    tags:
      - Key: "Site"
        Value: "DataCenter-A"
    enable_dynamic_dns: true
    dynamic_dns_domain: "company.com"
    enable_ipv4_dns_from_dhcp: true
    enable_ipv6: true
    enable_ipv6_dns_from_dhcp: true
    state: present

- name: Create a Network Connectivity Policy with static DNS servers
  cisco.intersight.intersight_network_connectivity_policy:
    api_private_key: "{{ api_private_key }}"
    api_key_id: "{{ api_key_id }}"
    name: "StaticDNS-Policy"
    description: "Network connectivity policy with static DNS servers"
    enable_dynamic_dns: false
    enable_ipv4_dns_from_dhcp: false
    preferred_ipv4_dns_server: "8.8.8.8"
    alternate_ipv4_dns_server: "8.8.4.4"
    enable_ipv6: true
    enable_ipv6_dns_from_dhcp: false
    preferred_ipv6_dns_server: "2001:4860:4860::8888"
    alternate_ipv6_dns_server: "2001:4860:4860::8844"
    state: present

- name: Create a basic Network Connectivity Policy with defaults
  cisco.intersight.intersight_network_connectivity_policy:
    api_private_key: "{{ api_private_key }}"
    api_key_id: "{{ api_key_id }}"
    name: "Basic-Network-Policy"
    description: "A basic network connectivity policy"
    state: present

- name: Delete a Network Connectivity Policy
  cisco.intersight.intersight_network_connectivity_policy:
    api_private_key: "{{ api_private_key }}"
    api_key_id: "{{ api_key_id }}"
    name: "DynamicDNS-Policy"
    state: absent

Return Values

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

Key

Description

api_repsonse

dictionary

The API response output returned by the specified resource.

Returned: always

Sample: {"api_response": {"DynamicDnsDomain": "company.com", "EnableDynamicDns": true, "EnableIpv4dnsFromDhcp": true, "EnableIpv6": true, "EnableIpv6dnsFromDhcp": true, "Name": "test_network_connectivity_policy", "ObjectType": "networkconfig.Policy", "Tags": [{"Key": "Site", "Value": "DataCenter-A"}]}}

Authors

  • Ron Gershburg (@rgershbu)