netbox.netbox.netbox_vm_interface 模块 – 在 NetBox 中创建或删除虚拟机接口

注意

此模块是 netbox.netbox 集合(版本 3.20.0)的一部分。

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

要安装它,请使用:ansible-galaxy collection install netbox.netbox。您需要进一步的要求才能使用此模块,请参阅要求以了解详细信息。

要在剧本中使用它,请指定:netbox.netbox.netbox_vm_interface

netbox.netbox 0.1.0 中的新增功能

概要

  • 在 NetBox 中创建或删除虚拟机接口

要求

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

  • pynetbox

参数

参数

注释

cert

任何

证书路径

data

字典 / 必需

定义虚拟机接口配置

custom_fields

字典

在 netbox.netbox 3.4.0 中添加

必须存在于 NetBox 中

description

字符串

接口的描述

enabled

布尔值

设置接口是否显示为启用或禁用

选项

  • false

  • true

mac_address

字符串

接口的 MAC 地址

mode

任何

接口的模式

mtu

整数

接口的 MTU

name

字符串 / 必需

要创建的接口的名称

parent_vm_interface

任何

在 netbox.netbox 3.2.0 中添加

虚拟机接口的父接口。

tagged_vlans

任何

要分配给接口的标记 VLAN 列表。模式必须设置为 TaggedTagged All

tags

列表 / elements=any

前缀可能需要关联的任何标签

untagged_vlan

任何

要分配给接口的未标记 VLAN

virtual_machine

任何

与接口关联的虚拟机的名称(区分大小写)

vm_bridge

任何

在 netbox.netbox 3.6.0 中添加

接口连接到的网桥

vrf

任何

在 netbox.netbox 3.7.0 中添加

与接口关联的 VRF

netbox_token

字符串 / 必需

NetBox API 令牌。

netbox_url

字符串 / 必需

NetBox 实例的 URL。

必须可由 Ansible 控制主机访问。

query_params

列表 / elements=string

这可用于覆盖 plugins/module_utils/netbox_utils.py 中定义的 ALLOWED_QUERY_PARAMS 中的指定值,并允许用户控制在其环境中使对象唯一的内容。

在 plugins/module_utils/netbox_utils.py 中定义,并允许用户控制在其环境中使对象唯一的内容。

在 plugins/module_utils/netbox_utils.py 中定义,并允许用户控制在其环境中使对象唯一的内容。

state

字符串

对象的状态。

选项

  • "present" ← (默认)

  • "absent"

validate_certs

任何

如果 no,则不会验证 SSL 证书。

这仅应在个人控制的站点上使用自签名证书时使用。

默认值: true

说明

注意

  • 标签应定义为 YAML 列表

  • 这应使用连接 local 和主机 localhost 运行

示例

- name: "Test NetBox interface module"
  connection: local
  hosts: localhost
  gather_facts: false
  tasks:
    - name: Create interface within NetBox with only required information
      netbox_vm_interface:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          virtual_machine: test100
          name: GigabitEthernet1
        state: present

    - name: Delete interface within netbox
      netbox_vm_interface:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          virtual_machine: test100
          name: GigabitEthernet1
        state: absent

    - name: Create interface as a trunk port
      netbox_vm_interface:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          virtual_machine: test100
          name: GigabitEthernet25
          enabled: false
          untagged_vlan:
            name: Wireless
            site: Test Site
          tagged_vlans:
            - name: Data
              site: Test Site
            - name: VoIP
              site: Test Site
          mtu: 1600
          mode: Tagged
        state: present

    - name: Create bridge interface within NetBox
      netbox_vm_interface:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          virtual_machine: test100
          name: br1000
        state: present

    - name: Connect bridge interface within NetBox
      netbox_vm_interface:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          virtual_machine: test100
          name: br1001
          vm_bridge: br1000
        state: present

返回值

常见的返回值记录在此处,以下是此模块独有的字段

描述

接口

字典

在 NetBox 中创建或已存在的序列化对象

返回:在创建时

msg

字符串

指示失败或有关已完成事项的消息

返回:始终

作者

  • Benjamin Vergnaud (@bvergnaud)