infoblox.nios_modules.nios_extensible_attribute 模块 – 配置 Infoblox NIOS 可扩展属性定义

注意

此模块是 infoblox.nios_modules 集合(版本 1.7.1)的一部分。

如果您使用的是 ansible 包,您可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install infoblox.nios_modules。您需要其他要求才能使用此模块,有关详细信息,请参阅要求

要在 Playbook 中使用它,请指定:infoblox.nios_modules.nios_extensible_attribute

infoblox.nios_modules 1.7.0 中的新增功能

概要

  • 从 Infoblox NIOS 服务器添加和/或删除可扩展属性定义对象。此模块使用 Infoblox WAPI 接口通过 REST 管理 NIOS extensibleattributedef 对象。

要求

执行此模块的主机需要以下要求。

  • infoblox-client

参数

参数

注释

注释

字符串

配置要与此对象的实例关联的文本字符串注释。提供的文本字符串将在对象实例上配置。

default_value

字符串

配置在 GUI 中使用此属性时预先填充的默认值。电子邮件、URL 和字符串类型的值最多为 256 个字符。

标志

字符串

此字段包含可扩展属性标志。可能的值为 (A) 已审计、(C) 云 API、云 (G) 主服务器、(I) 可继承、(L) 已列出、(M) 强制值、MGM (P) 私有、(R) 只读、(S) 排序枚举值,多个 (V) 值。如果字段中有两个或多个标志,则必须按照它们在上面列出的顺序进行列出。例如,“CR”是“flags”字段的有效值,因为 C = 云 API 列在 R = 只读之前。但是,值“RC”无效,因为“flags”字段的顺序已中断。

list_values

列表 / 元素=字符串

配置与此对象实例关联的预设值列表。仅当属性类型设置为 ENUM 时才适用。

最大值

整数

配置要与此对象实例关联的最大值。当为 STRING 类型的可扩展属性提供时,该值表示字符串可以包含的最大字符数。当为 INTEGER 类型的可扩展属性提供时,该值表示允许的最大整数值。不适用于其他属性类型。

最小值

整数

配置要与此对象实例关联的最小值。当为 STRING 类型的可扩展属性提供时,该值表示字符串可以包含的最小字符数。当为 INTEGER 类型的可扩展属性提供时,该值表示允许的最小整数值。不适用于其他属性类型。

名称

字符串 / 必需

配置 NIOS 服务器上对象的实例的预期名称。

提供程序

字典

包含连接详细信息的字典对象。

证书

字符串

指定客户端证书文件,其中包含 x509 配置的摘要,以便为 NIOS 的远程实例进行额外的安全连接层。

也可以使用 INFOBLOX_CERT 环境变量指定值。

主机

字符串

指定 DNS 主机名或地址,以通过 REST 连接到 NIOS WAPI 的远程实例

也可以使用 INFOBLOX_HOST 环境变量指定值。

http_pool_connections

整数

在此处插入描述

默认值: 10

http_pool_maxsize

整数

在此处插入描述

默认值: 10

http_request_timeout

整数

在收到响应之前等待的时间

也可以使用 INFOBLOX_HTTP_REQUEST_TIMEOUT 环境变量指定值。

默认值: 10

密钥

字符串

指定用于使用证书加密的私钥,以便与 NIOS 的远程实例连接。

也可以使用 INFOBLOX_KEY 环境变量指定值。

max_results

整数

指定要返回的最大对象数,如果设置为负数,当返回的对象数超过设置时,设备将返回错误。

也可以使用 INFOBLOX_MAX_RESULTS 环境变量指定值。

默认值: 1000

max_retries

整数

配置声明连接可用之前尝试的重试次数

也可以使用 INFOBLOX_MAX_RETRIES 环境变量指定值。

默认值: 3

密码

字符串

指定用于对与 NIOS 远程实例的连接进行身份验证的密码。

也可以使用 INFOBLOX_PASSWORD 环境变量指定值。

silent_ssl_warnings

布尔值

在此处插入描述

选项

  • false

  • true ← (默认)

用户名

字符串

配置用于对与 NIOS 远程实例的连接进行身份验证的用户名。

也可以使用 INFOBLOX_USERNAME 环境变量指定值。

validate_certs

别名:ssl_verify

布尔值

启用或禁用验证 SSL 证书的布尔值

也可以使用 INFOBLOX_SSL_VERIFY 环境变量指定值。

选项

  • false ← (默认)

  • true

wapi_version

字符串

指定要使用的 WAPI 版本

也可以使用 INFOBLOX_WAPI_VERSION 环境变量来指定值。

在 Ansible 2.8 之前,默认的 WAPI 版本是 1.4。

默认值: "2.12.3"

state

字符串

配置 NIOS 服务器上对象实例的预期状态。当此值设置为 present 时,将在设备上配置该对象;当此值设置为 absent 时,将从设备中删除该值(如果需要)。

选项

  • "present" ← (默认)

  • "absent"

type

字符串

配置 NIOS 服务器上此属性对象定义的预期类型。

选项

  • "DATE"

  • "EMAIL"

  • "ENUM"

  • "INTEGER"

  • "STRING" ← (默认)

  • "URL"

注释

注意

  • 此模块支持 check_mode

  • 此模块必须本地运行,可以通过指定 connection: local 来实现。

  • 请阅读 :ref:`nios_guide` 以获取有关如何将 Infoblox 与 Ansible 配合使用的更详细信息。

示例

- name: Configure an extensible attribute
  infoblox.nios_modules.nios_extensible_attribute:
    name: my_string
    type: STRING
    comment: Created by ansible
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local

- name: Update an extensible attribute to accept multiple values
  infoblox.nios_modules.nios_extensible_attribute:
    name: my_string
    type: STRING
    flags: V
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local

- name: Remove a extensible attribute
  infoblox.nios_modules.nios_extensible_attribute:
    name: my_string
    type: INTEGER
    state: absent
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local

- name: Create INT extensible attribute
  infoblox.nios_modules.nios_extensible_attribute:
    name: my_int
    type: INTEGER
    comment: Created by ansible
    min: 10
    max: 20
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local

- name: Update an extensible attribute
  infoblox.nios_modules.nios_extensible_attribute:
    name: my_int
    type: INTEGER
    comment: Updated by ansible
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local

- name: Create an list extensible attribute
  infoblox.nios_modules.nios_extensible_attribute:
    name: my_list
    type: ENUM
    state: present
    list_values:
      - one
      - two
      - three
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local

作者

  • Matthew Dennett (@matthewdennett)

  • Hugues Malphettes (@hmalphettes)