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 服务器上的可扩展属性定义对象。此模块使用通过 REST 的 Infoblox WAPI 接口管理 NIOS extensibleattributedef 对象。

需求

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

  • infoblox-client

参数

参数

注释

comment

字符串

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

default_value

字符串

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

flags

字符串

此字段包含可扩展属性标志。可能的值为 (A)udited(已审核)、(C)loud API(云 API)、Cloud (G)master(云主控)、(I)nheritable(可继承)、(L)isted(已列出)、(M)andatory value(强制值)、MGM (P)rivate(MGM 私有)、(R)ead Only(只读)、(S)ort enum values(排序枚举值)、Multiple (V)alues(多个值)。如果字段中存在两个或多个标志,则必须按照以上列出的顺序列出它们。例如,“CR”是“flags”字段的有效值,因为 C = Cloud API 在 R = Read only 之前列出。但是,值“RC”无效,因为“flags”字段的顺序被破坏了。

list_values

列表 / 元素=字符串

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

max

整数

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

min

整数

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

name

字符串 / 必需

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

provider

字典

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

cert

字符串

指定客户端证书文件,其中包含 x509 配置摘要,用于为与 NIOS 远程实例的额外安全连接提供安全层。

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

host

字符串

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

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

http_pool_connections

整数

在此处插入描述

默认值: 10

http_pool_maxsize

整数

在此处插入描述

默认值: 10

http_request_timeout

整数

接收响应之前等待的时间量

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

默认值: 10

key

字符串

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

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

max_results

整数

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

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

默认值: 1000

max_retries

整数

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

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

默认值: 3

password

字符串

指定用于验证与 NIOS 远程实例连接的密码。

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

silent_ssl_warnings

布尔值

在此处插入描述

选项

  • false

  • true ← (默认)

username

字符串

配置用于验证与 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"

类型

字符串

配置 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)