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

列表 / elements=string

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

说明

注意

  • 当关键字参数和位置参数一起使用时,位置参数必须在关键字参数之前列出: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

列表 / elements=string

terms 参数中指定的对象类型

返回: 始终

obj_field

字符串

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

返回: 成功

提示

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