cisco.meraki.devices_switch_routing_interfaces 模块 – 设备_交换机_路由_接口的资源模块

注意

此模块是 cisco.meraki 集合 (版本 2.18.3) 的一部分。

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

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

要在 playbook 中使用它,请指定: cisco.meraki.devices_switch_routing_interfaces

cisco.meraki 2.16.0 中的新增功能

概要

  • 管理资源设备_交换机_路由_接口的创建、更新和删除操作。

  • 为交换机创建一个第 3 层接口。

  • 从交换机删除第 3 层接口。

  • 更新交换机的第 3 层接口。

注意

此模块具有相应的 action 插件

需求

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

  • meraki >= 2.4.9

  • python >= 3.5

参数

参数

注释

defaultGateway

字符串

对于任何不进入直接连接的子网或通过静态路由的流量的下一跳。此 IP 地址必须存在于具有路由接口的子网中。如果这是第一个 IPv4 接口,则需要此参数。

interfaceId

字符串

InterfaceId 路径参数。接口 ID。

interfaceIp

字符串

此交换机将在此 VLAN 或子网上用于第 3 层路由的 IP 地址。这不能与交换机的管理 IP 相同。

ipv6

字典

接口的 IPv6 设置。

address

字符串

接口的 IPv6 地址。如果 assignmentMode 为“static”,则需要此参数。如果 assignmentMode 为“eui-64”,则必须不包含此参数。

assignmentMode

字符串

接口的 IPv6 分配模式。可以是“eui-64”或“static”。

gateway

字符串

接口的 IPv6 默认网关。如果定义了前缀并且这是为交换机配置了 IPv6 的第一个接口,则需要此参数。

prefix

字符串

接口的 IPv6 前缀。如果包含 IPv6 对象,则需要此参数。

meraki_action_batch_retry_wait_time

整数

meraki_action_batch_retry_wait_time (整数),操作批处理并发错误重试等待时间

默认值: 60

meraki_api_key

字符串 / 必需

meraki_api_key (字符串),在仪表板中生成的 API 密钥;也可以设置为环境变量 MERAKI_DASHBOARD_API_KEY

meraki_base_url

字符串

meraki_base_url (字符串),位于所有端点资源之前

默认值: "https://api.meraki.com/api/v1"

meraki_be_geo_id

字符串

meraki_be_geo_id (字符串),用于 API 使用跟踪的可选合作伙伴标识符;也可以设置为环境变量 BE_GEO_ID

默认值: ""

meraki_caller

字符串

meraki_caller (字符串),用于 API 使用跟踪的可选标识符;也可以设置为环境变量 MERAKI_PYTHON_SDK_CALLER

默认值: ""

meraki_certificate_path

字符串

meraki_certificate_path (字符串),如果位于本地代理后面,则用于 TLS/SSL 证书验证的路径

默认值: ""

meraki_inherit_logging_config

布尔值

meraki_inherit_logging_config (布尔值),继承您自己的日志记录器实例

选项

  • false ← (默认)

  • true

meraki_log_file_prefix

字符串

meraki_log_file_prefix (字符串),日志文件名后附加日期和时间戳

默认值: "meraki_api_"

meraki_log_path

字符串

log_path (字符串),输出日志的路径;如果未指定,则默认为脚本的工作目录

默认值: ""

meraki_maximum_retries

整数

meraki_maximum_retries (整数),遇到 429 或其他服务器端错误时最多重试这么多次

默认值: 2

meraki_nginx_429_retry_wait_time

整数

meraki_nginx_429_retry_wait_time (整数),Nginx 429 重试等待时间

默认值: 60

meraki_output_log

布尔值

meraki_output_log (布尔值),创建输出日志文件?

选项

  • false

  • true ← (默认)

meraki_print_console

布尔值

meraki_print_console (布尔值),将日志输出打印到控制台?

选项

  • false

  • true ← (默认)

meraki_requests_proxy

字符串

meraki_requests_proxy (字符串),如果需要,用于 HTTPS 的代理服务器和端口

默认值: ""

meraki_retry_4xx_error

布尔值

meraki_retry_4xx_error (布尔值),如果遇到其他 4XX 错误(除了 429)则重试?

选项

  • false ← (默认)

  • true

meraki_retry_4xx_error_wait_time

整数

meraki_retry_4xx_error_wait_time (整数),其他 4XX 错误重试等待时间

默认值: 60

meraki_simulate

布尔值

meraki_simulate (布尔值),模拟 POST/PUT/DELETE 调用以防止更改?

选项

  • false ← (默认)

  • true

meraki_single_request_timeout

整数

meraki_single_request_timeout (整数),每个 API 调用的最大秒数

默认值: 60

meraki_suppress_logging

布尔值

meraki_suppress_logging (布尔值), 是否禁用所有日志?禁用后将自行承担风险!

选项

  • false ← (默认)

  • true

meraki_use_iterator_for_get_pages

布尔值

meraki_use_iterator_for_get_pages (布尔值), list* 方法将返回一个包含每个对象的迭代器,而不是包含所有项目的完整列表。

选项

  • false ← (默认)

  • true

meraki_wait_on_rate_limit

布尔值

meraki_wait_on_rate_limit (布尔值), 遇到 429 速率限制错误时是否重试?

选项

  • false

  • true ← (默认)

multicastRouting

字符串

如果需要在 VLAN 之间进行多播路由,则启用多播支持。选项为“disabled”(禁用)、“enabled”(启用)或“IGMP snooping querier”(IGMP Snooping 查询器)。默认为“disabled”(禁用)。

name

字符串

接口或 VLAN 的友好名称或描述。

ospfSettings

字典

接口的 OSPF 路由设置。

area

字符串

此接口应所属的 OSPF 区域。可以是“disabled”(禁用)或现有 OSPF 区域的标识符。默认为“disabled”(禁用)。

cost

整数

此接口的路径成本。默认为 1,但可以增加到 65535 以降低优先级。

isPassiveEnabled

布尔值

启用后,OSPF 将不会在此接口上运行,但子网仍将被通告。

选项

  • false

  • true

ospfV3

字典

接口的 OSPFv3 路由设置。

area

字符串

此接口应所属的 OSPFv3 区域。可以是“disabled”(禁用)或现有 OSPFv3 区域的标识符。默认为“disabled”(禁用)。

cost

整数

此接口的路径成本。默认为 1,但可以增加到 65535 以降低优先级。

isPassiveEnabled

布尔值

启用后,OSPFv3 将不会在此接口上运行,但子网仍将被通告。

选项

  • false

  • true

serial

字符串

串口路径参数。

subnet

字符串

此路由接口所在的网络,使用 CIDR 表示法(例如 10.1.1.0/24)。

vlanId

整数

此路由接口所在的 VLAN。VLAN 必须在 1 到 4094 之间。

注释

注意

  • 使用的 SDK 方法为 switch.Switch.create_device_switch_routing_interface、switch.Switch.delete_device_switch_routing_interface、switch.Switch.update_device_switch_routing_interface。

  • 使用的路径为 post /devices/{serial}/switch/routing/interfaces、delete /devices/{serial}/switch/routing/interfaces/{interfaceId}、put /devices/{serial}/switch/routing/interfaces/{interfaceId}。

  • 不支持 check_mode

  • 插件在控制节点上运行,不使用任何 Ansible 连接插件,而是使用 Cisco DNAC SDK 的嵌入式连接管理器。

  • 以 dnac_ 开头的参数由 Cisco DNAC Python SDK 用于建立连接。

另请参阅

另请参阅

Cisco Meraki 文档,关于 switch createDeviceSwitchRoutingInterface

createDeviceSwitchRoutingInterface API 的完整参考。

Cisco Meraki 文档,关于 switch deleteDeviceSwitchRoutingInterface

deleteDeviceSwitchRoutingInterface API 的完整参考。

Cisco Meraki 文档,关于 switch updateDeviceSwitchRoutingInterface

updateDeviceSwitchRoutingInterface API 的完整参考。

示例

- name: Create
  cisco.meraki.devices_switch_routing_interfaces:
    meraki_api_key: "{{meraki_api_key}}"
    meraki_base_url: "{{meraki_base_url}}"
    meraki_single_request_timeout: "{{meraki_single_request_timeout}}"
    meraki_certificate_path: "{{meraki_certificate_path}}"
    meraki_requests_proxy: "{{meraki_requests_proxy}}"
    meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}"
    meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}"
    meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}"
    meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}"
    meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}"
    meraki_maximum_retries: "{{meraki_maximum_retries}}"
    meraki_output_log: "{{meraki_output_log}}"
    meraki_log_file_prefix: "{{meraki_log_file_prefix}}"
    meraki_log_path: "{{meraki_log_path}}"
    meraki_print_console: "{{meraki_print_console}}"
    meraki_suppress_logging: "{{meraki_suppress_logging}}"
    meraki_simulate: "{{meraki_simulate}}"
    meraki_be_geo_id: "{{meraki_be_geo_id}}"
    meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}"
    meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}"
    state: present
    defaultGateway: 192.168.1.1
    interfaceIp: 192.168.1.2
    ipv6:
      address: 1:2:3:4::1
      assignmentMode: static
      gateway: 1:2:3:4::2
      prefix: 1:2:3:4::/48
    multicastRouting: disabled
    name: L3 interface
    ospfSettings:
      area: '0'
      cost: 1
      isPassiveEnabled: true
    ospfV3:
      area: '1'
      cost: 2
      isPassiveEnabled: true
    serial: string
    subnet: 192.168.1.0/24
    vlanId: 100

- name: Delete by id
  cisco.meraki.devices_switch_routing_interfaces:
    meraki_api_key: "{{meraki_api_key}}"
    meraki_base_url: "{{meraki_base_url}}"
    meraki_single_request_timeout: "{{meraki_single_request_timeout}}"
    meraki_certificate_path: "{{meraki_certificate_path}}"
    meraki_requests_proxy: "{{meraki_requests_proxy}}"
    meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}"
    meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}"
    meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}"
    meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}"
    meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}"
    meraki_maximum_retries: "{{meraki_maximum_retries}}"
    meraki_output_log: "{{meraki_output_log}}"
    meraki_log_file_prefix: "{{meraki_log_file_prefix}}"
    meraki_log_path: "{{meraki_log_path}}"
    meraki_print_console: "{{meraki_print_console}}"
    meraki_suppress_logging: "{{meraki_suppress_logging}}"
    meraki_simulate: "{{meraki_simulate}}"
    meraki_be_geo_id: "{{meraki_be_geo_id}}"
    meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}"
    meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}"
    state: absent
    interfaceId: string
    serial: string

- name: Update by id
  cisco.meraki.devices_switch_routing_interfaces:
    meraki_api_key: "{{meraki_api_key}}"
    meraki_base_url: "{{meraki_base_url}}"
    meraki_single_request_timeout: "{{meraki_single_request_timeout}}"
    meraki_certificate_path: "{{meraki_certificate_path}}"
    meraki_requests_proxy: "{{meraki_requests_proxy}}"
    meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}"
    meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}"
    meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}"
    meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}"
    meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}"
    meraki_maximum_retries: "{{meraki_maximum_retries}}"
    meraki_output_log: "{{meraki_output_log}}"
    meraki_log_file_prefix: "{{meraki_log_file_prefix}}"
    meraki_log_path: "{{meraki_log_path}}"
    meraki_print_console: "{{meraki_print_console}}"
    meraki_suppress_logging: "{{meraki_suppress_logging}}"
    meraki_simulate: "{{meraki_simulate}}"
    meraki_be_geo_id: "{{meraki_be_geo_id}}"
    meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}"
    meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}"
    state: present
    defaultGateway: 192.168.1.1
    interfaceId: string
    interfaceIp: 192.168.1.2
    ipv6:
      address: 1:2:3:4::1
      assignmentMode: static
      gateway: 1:2:3:4::2
      prefix: 1:2:3:4::/48
    multicastRouting: disabled
    name: L3 interface
    ospfSettings:
      area: '0'
      cost: 1
      isPassiveEnabled: true
    ospfV3:
      area: '1'
      cost: 2
      isPassiveEnabled: true
    serial: string
    subnet: 192.168.1.0/24
    vlanId: 100

返回值

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

描述

meraki_response

字典

包含 Cisco Meraki Python SDK 返回的响应的字典或列表。

返回:始终

示例: {"defaultGateway": "string", "interfaceId": "string", "interfaceIp": "string", "ipv6": {"address": "string", "assignmentMode": "string", "gateway": "string", "prefix": "string"}, "multicastRouting": "string", "name": "string", "ospfSettings": {"area": "string", "cost": 0, "isPassiveEnabled": true}, "ospfV3": {"area": "string", "cost": 0, "isPassiveEnabled": true}, "subnet": "string", "vlanId": 0}

作者

  • Francisco Munoz (@fmunoz)