Deprecated

Removed in 5.0.0

i

Reason:Please install the infoblox.nios_modules collection and use the corresponding module from it. | Alternative:infoblox.nios_modules.nios_nsgroup

community.general.nios_nsgroup (3.8.10) — module

Configure InfoBlox DNS Nameserver Groups

Authors: Erich Birngruber (@ebirn), Sumit Jaiswal (@sjaiswal)

Install collection

Install with ansible-galaxy collection install community.general:==3.8.10


Add to requirements.yml

  collections:
    - name: community.general
      version: 3.8.10

Description

Adds and/or removes nameserver groups form Infoblox NIOS servers. This module manages NIOS C(nsgroup) objects using the Infoblox. WAPI interface over REST.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create simple infoblox nameserver group
  community.general.nios_nsgroup:
    name: my-simple-group
    comment: "this is a simple nameserver group"
    grid_primary:
      - name: infoblox-test.example.com
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create infoblox nameserver group with external primaries
  community.general.nios_nsgroup:
    name: my-example-group
    use_external_primary: true
    comment: "this is my example nameserver group"
    external_primaries: "{{ ext_nameservers }}"
    grid_secondaries:
      - name: infoblox-test.example.com
        lead: True
        preferred_primaries: "{{ ext_nameservers }}"
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Delete infoblox nameserver group
  community.general.nios_nsgroup:
    name: my-simple-group
    comment: "this is a simple nameserver group"
    grid_primary:
      - name: infoblox-test.example.com
    state: absent
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local

Inputs

    
name:
    description:
    - Specifies the name of the NIOS nameserver group to be managed.
    required: true
    type: str

state:
    choices:
    - present
    - absent
    default: present
    description:
    - Configures the intended state of the instance of the object on the NIOS server.  When
      this value is set to C(present), the object is configured on the device and when
      this value is set to C(absent) the value is removed (if necessary) from the device.
    type: str

comment:
    description:
    - Configures a text string comment to be associated with the instance of this object.  The
      provided text string will be configured on the object instance.
    required: false
    type: str

extattrs:
    description:
    - Allows for the configuration of Extensible Attributes on the instance of the object.  This
      argument accepts a set of key / value pairs for configuration.
    required: false
    type: str

provider:
    description:
    - A dict object containing connection details.
    suboptions:
      host:
        description:
        - Specifies the DNS host name or address for connecting to the remote instance
          of NIOS WAPI over REST
        - Value can also be specified using C(INFOBLOX_HOST) environment variable.
        type: str
      http_pool_connections:
        default: 10
        description:
        - Number of pools to be used by the C(infoblox_client.Connector) object.
        - This is passed as-is to the underlying C(requests.adapters.HTTPAdapter) class.
        type: int
      http_pool_maxsize:
        default: 10
        description:
        - Maximum number of connections per pool to be used by the C(infoblox_client.Connector)
          object.
        - This is passed as-is to the underlying C(requests.adapters.HTTPAdapter) class.
        type: int
      http_request_timeout:
        default: 10
        description:
        - The amount of time before to wait before receiving a response
        - Value can also be specified using C(INFOBLOX_HTTP_REQUEST_TIMEOUT) environment
          variable.
        type: int
      max_results:
        default: 1000
        description:
        - Specifies the maximum number of objects to be returned, if set to a negative
          number the appliance will return an error when the number of returned objects
          would exceed the setting.
        - Value can also be specified using C(INFOBLOX_MAX_RESULTS) environment variable.
        type: int
      max_retries:
        default: 3
        description:
        - Configures the number of attempted retries before the connection is declared
          usable
        - Value can also be specified using C(INFOBLOX_MAX_RETRIES) environment variable.
        type: int
      password:
        description:
        - Specifies the password to use to authenticate the connection to the remote instance
          of NIOS.
        - Value can also be specified using C(INFOBLOX_PASSWORD) environment variable.
        type: str
      silent_ssl_warnings:
        default: true
        description:
        - Disable C(urllib3) SSL warnings in the C(infoblox_client.Connector) object.
        - This is passed as-is to the underlying C(requests.adapters.HTTPAdapter) class.
        type: bool
      username:
        description:
        - Configures the username to use to authenticate the connection to the remote
          instance of NIOS.
        - Value can also be specified using C(INFOBLOX_USERNAME) environment variable.
        type: str
      validate_certs:
        aliases:
        - ssl_verify
        default: false
        description:
        - Boolean value to enable or disable verifying SSL certificates
        - Value can also be specified using C(INFOBLOX_SSL_VERIFY) environment variable.
        type: bool
      wapi_version:
        default: '2.1'
        description:
        - Specifies the version of WAPI to use
        - Value can also be specified using C(INFOBLOX_WAP_VERSION) environment variable.
        - Until ansible 2.8 the default WAPI was 1.4
        type: str
    type: dict

grid_primary:
    description:
    - This host is to be used as primary server in this nameserver group. It must be a
      grid member. This option is required when setting I(use_external_primaries) to C(false).
    elements: dict
    suboptions:
      enable_preferred_primaries:
        default: false
        description:
        - This flag represents whether the preferred_primaries field values of this member
          are used (see Infoblox WAPI docs).
        type: bool
      grid_replicate:
        default: false
        description:
        - Use DNS zone transfers if set to C(True) or ID Grid Replication if set to C(False).
        type: bool
      lead:
        default: false
        description:
        - This flag controls if the grid lead secondary nameserver performs zone transfers
          to non lead secondaries.
        type: bool
      name:
        description:
        - Provide the name of the grid member to identify the host.
        required: true
        type: str
      preferred_primaries:
        description:
        - Provide a list of elements like in I(external_primaries) to set the precedence
          of preferred primary nameservers.
        elements: dict
        suboptions:
          address:
            description:
            - Configures the IP address of the preferred primary nameserver.
            required: true
            type: str
          name:
            description:
            - Set a label for the preferred primary nameserver.
            required: true
            type: str
          stealth:
            default: false
            description:
            - Configure the preferred primary nameserver as stealth server (without NS
              record) in the zones.
            type: bool
          tsig_key:
            description:
            - Set a DNS TSIG key for the nameserver to secure zone transfers (AFXRs).
            type: str
          tsig_key_alg:
            choices:
            - HMAC-MD5
            - HMAC-SHA256
            default: HMAC-MD5
            description:
            - Provides the algorithm used for the I(tsig_key) in use.
            type: str
          tsig_key_name:
            description:
            - Sets a label for the I(tsig_key) value.
            required: true
            type: str
        type: list
      stealth:
        default: false
        description:
        - Configure the external nameserver as stealth server (without NS record) in the
          zones.
        type: bool
    type: list

is_grid_default:
    default: false
    description:
    - If set to C(True) this nsgroup will become the default nameserver group for new
      zones.
    required: false
    type: bool

grid_secondaries:
    description:
    - Configures the list of grid member hosts that act as secondary nameservers. This
      option is required when setting I(use_external_primaries) to C(true).
    elements: dict
    suboptions:
      enable_preferred_primaries:
        default: false
        description:
        - This flag represents whether the preferred_primaries field values of this member
          are used (see Infoblox WAPI docs).
        type: bool
      grid_replicate:
        default: false
        description:
        - Use DNS zone transfers if set to C(True) or ID Grid Replication if set to C(False)
        type: bool
      lead:
        default: false
        description:
        - This flag controls if the grid lead secondary nameserver performs zone transfers
          to non lead secondaries.
        type: bool
      name:
        description:
        - Provide the name of the grid member to identify the host.
        required: true
        type: str
      preferred_primaries:
        description:
        - Provide a list of elements like in I(external_primaries) to set the precedence
          of preferred primary nameservers.
        elements: dict
        suboptions:
          address:
            description:
            - Configures the IP address of the preferred primary nameserver.
            required: true
            type: str
          name:
            description:
            - Set a label for the preferred primary nameserver.
            required: true
            type: str
          stealth:
            default: false
            description:
            - Configure the preferred primary nameserver as stealth server (without NS
              record) in the zones.
            type: bool
          tsig_key:
            description:
            - Set a DNS TSIG key for the nameserver to secure zone transfers (AFXRs).
            type: str
          tsig_key_alg:
            choices:
            - HMAC-MD5
            - HMAC-SHA256
            default: HMAC-MD5
            description:
            - Provides the algorithm used for the I(tsig_key) in use.
            type: str
          tsig_key_name:
            description:
            - Sets a label for the I(tsig_key) value.
            required: true
            type: str
        type: list
      stealth:
        default: false
        description:
        - Configure the external nameserver as stealth server (without NS record) in the
          zones.
        type: bool
    type: list

external_primaries:
    description:
    - Configures a list of external nameservers (non-members of the grid). This option
      is required when setting I(use_external_primaries) to C(true).
    elements: dict
    required: false
    suboptions:
      address:
        description:
        - Configures the IP address of the external nameserver
        required: true
        type: str
      name:
        description:
        - Set a label for the external nameserver
        required: true
        type: str
      stealth:
        default: false
        description:
        - Configure the external nameserver as stealth server (without NS record) in the
          zones.
        type: bool
      tsig_key:
        description:
        - Set a DNS TSIG key for the nameserver to secure zone transfers (AFXRs).
        type: str
      tsig_key_alg:
        choices:
        - HMAC-MD5
        - HMAC-SHA256
        default: HMAC-MD5
        description:
        - Provides the algorithm used for the I(tsig_key) in use.
        type: str
      tsig_key_name:
        description:
        - Sets a label for the I(tsig_key) value
        required: true
        type: str
    type: list

external_secondaries:
    description:
    - Allows to provide a list of external secondary nameservers, that are not members
      of the grid.
    elements: dict
    suboptions:
      address:
        description:
        - Configures the IP address of the external nameserver
        required: true
        type: str
      name:
        description:
        - Set a label for the external nameserver
        required: true
        type: str
      stealth:
        default: false
        description:
        - Configure the external nameserver as stealth server (without NS record) in the
          zones.
        type: bool
      tsig_key:
        description:
        - Set a DNS TSIG key for the nameserver to secure zone transfers (AFXRs).
        type: str
      tsig_key_alg:
        choices:
        - HMAC-MD5
        - HMAC-SHA256
        default: HMAC-MD5
        description:
        - Provides the algorithm used for the I(tsig_key) in use.
        type: str
      tsig_key_name:
        description:
        - Sets a label for the I(tsig_key) value
        required: true
        type: str
    type: list

use_external_primary:
    default: false
    description:
    - This flag controls whether the group is using an external primary nameserver. Note
      that modification of this field requires passing values for I(grid_secondaries)
      and I(external_primaries).
    required: false
    type: bool