infoblox.nios_modules.nios_lookup 查询 – 查询 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_lookup

infoblox.nios_modules 1.0.0 中的新增功能

概要

  • 使用 Infoblox WAPI API 获取 NIOS 指定的对象。此查找支持添加其他关键字以过滤返回数据并指定所需返回字段的集合。

需求

以下需求是在执行此查找的本地控制器节点上需要的。

  • infoblox-client

术语

参数

注释

术语

字符串 / 必需

要从 Infoblox 设备返回的网络对象的名称。

关键字参数

这描述了查找的关键字参数。这些是在以下示例中的值 key1=value1key2=value2 等:lookup('infoblox.nios_modules.nios_lookup', key1=value1, key2=value2, ...)query('infoblox.nios_modules.nios_lookup', key1=value1, key2=value2, ...)

参数

注释

extattrs

字典

用于根据可扩展属性进行过滤的字典对象。

filter

字典

用于过滤返回对象的字典对象。

return_fields

列表 / 元素=字符串

要为指定对象返回的字段名称列表。

备注

注意

  • 当关键字和位置参数一起使用时,位置参数必须列在关键字参数之前:lookup('infoblox.nios_modules.nios_lookup', term1, term2, key1=value1, key2=value2)query('infoblox.nios_modules.nios_lookup', term1, term2, key1=value1, key2=value2)

示例

- name: fetch all networkview objects
  ansible.builtin.set_fact:
    networkviews: "{{ lookup('infoblox.nios_modules.nios_lookup', 'networkview', provider={'host': 'nios01', 'username': 'admin', 'password': 'password'}) }}"

- name: fetch the default dns view
  ansible.builtin.set_fact:
    dns_views: "{{ lookup('infoblox.nios_modules.nios_lookup', 'view', filter={'name': 'default'},
                   provider={'host': 'nios01', 'username': 'admin', 'password': 'password'}) }}"

# all of the examples below use credentials that are  set using env variables
# export INFOBLOX_HOST=nios01
# export INFOBLOX_USERNAME=admin
# export INFOBLOX_PASSWORD=admin

- name: fetch all host records and include extended attributes
  ansible.builtin.set_fact:
    host_records: "{{ lookup('infoblox.nios_modules.nios_lookup', 'record:host', return_fields=['extattrs', 'name', 'view', 'comment']}) }}"


- name: use env variables to pass credentials
  ansible.builtin.set_fact:
    networkviews: "{{ lookup('infoblox.nios_modules.nios_lookup', 'networkview') }}"

- name: get a host record
  ansible.builtin.set_fact:
    host: "{{ lookup('infoblox.nios_modules.nios_lookup', 'record:host', filter={'name': 'hostname.ansible.com'}) }}"

- name: get the authoritative zone from a non default dns view
  ansible.builtin.set_fact:
    host: "{{ lookup('infoblox.nios_modules.nios_lookup', 'zone_auth', filter={'fqdn': 'ansible.com', 'view': 'ansible-dns'}) }}"

返回值

描述

obj_type

列表 / 元素=字符串

在 terms 参数中指定的對象類型

返回:始终

obj_field

字符串

一个或多个 obj_type 字段,由 return_fields 参数指定或根据对象类型设置的默认字段集

返回:成功

提示

每个条目类型的配置条目具有从低到高的优先级顺序。例如,列表中较低的变量将覆盖较高的变量。