cisco.meraki.devices_switch_ports 模块 – 设备交换机端口资源模块

注意

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

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

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

要在剧本中使用它,请指定:cisco.meraki.devices_switch_ports

cisco.meraki 2.16.0 中的新增功能

概要

  • 管理资源设备交换机端口的操作更新。

  • 更新交换机端口。

注意

此模块具有相应的 action 插件

要求

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

  • meraki >= 2.4.9

  • python >= 3.5

参数

参数

注释

accessPolicyNumber

整数

要在交换机端口上配置的自定义访问策略的编号。仅当“accessPolicyType”为“自定义访问策略”时适用。

accessPolicyType

字符串

交换机端口的访问策略类型。仅适用于接入端口。可以是“开放”、“自定义访问策略”、“MAC 允许列表”或“粘性 MAC 允许列表”之一。

adaptivePolicyGroupId

字符串

将用于标记通过此交换机端口的流量的自适应策略组 ID。此 ID 必须在配置期间预先存在,否则需要使用 adaptivePolicy/groups API 创建。不能应用于绑定到配置文件的交换机上的端口。

allowedVlans

字符串

交换机端口上允许的 VLAN。仅适用于中继端口。

daiTrusted

布尔值

如果为真,则此端口的 ARP 数据包将被视为可信,并且动态 ARP 检查将允许流量。

选项

  • false

  • true

enabled

布尔值

交换机端口的状态。

选项

  • false

  • true

flexibleStackingEnabled

布尔值

对于支持的交换机(例如 MS420/MS425),端口是否启用了灵活堆叠。

选项

  • false

  • true

isolationEnabled

布尔值

交换机端口的隔离状态。

选项

  • false

  • true

linkNegotiation

字符串

交换机端口的链路速度。

macAllowList

列表 / 元素=字符串

只有 MAC 地址在此列表中指定的设备才能访问此端口。最多可以定义 20 个 MAC 地址。仅当“accessPolicyType”为“MAC 允许列表”时适用。

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 ← (默认)

name

字符串

交换机端口的名称。

peerSgtCapable

布尔值

如果为真,则为通过此交换机端口的流量启用对等 SGT。仅适用于中继端口,不适用于接入端口。不能应用于绑定到配置文件的交换机上的端口。

选项

  • false

  • true

poeEnabled

布尔值

交换机端口的 PoE 状态。

选项

  • false

  • true

portId

字符串

PortId 路径参数。端口 ID。

portScheduleId

字符串

端口计划的 ID。值为 null 将清除端口计划。

profile

字典

配置文件属性。

enabled

布尔值

启用后,使用端口配置文件覆盖此端口的配置。

选项

  • false

  • true

id

字符串

启用后,用于覆盖端口配置的端口配置文件的 ID。

iname

字符串

启用后,配置文件的 IName。

rstpEnabled

布尔值

快速生成树协议状态。

选项

  • false

  • true

serial

字符串

串口路径参数。

stickyMacAllowList

列表 / 元素=字符串

粘性MAC地址允许列表的初始列表。仅当“accessPolicyType”为“粘性MAC地址允许列表”时适用。

stickyMacAllowListLimit

整数

粘性MAC地址允许列表的最大MAC地址数量。仅当“accessPolicyType”为“粘性MAC地址允许列表”时适用。

stormControlEnabled

布尔值

交换机端口的风暴控制状态。

选项

  • false

  • true

stpGuard

字符串

STP保护的状态(“disabled”,“root guard”,“bpdu guard”或“loop guard”)。

tags

列表 / 元素=字符串

交换机端口的标签列表。

type

字符串

交换机端口的类型(“trunk”或“access”)。

udld

字符串

检测到单向链路时要采取的操作(仅限警报,强制执行)。默认配置为仅限警报。

vlan

整数

交换机端口的VLAN。对于Trunk端口,这是本机VLAN。空值将清除为Trunk端口设置的值。

voiceVlan

整数

交换机端口的语音VLAN。仅适用于接入端口。

注释

注意

  • 使用的SDK方法是switch.Switch.update_device_switch_port,

  • 使用的路径是put /devices/{serial}/switch/ports/{portId},

  • 不支持 check_mode

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

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

另请参见

另请参见

有关交换机updateDeviceSwitchPort的Cisco Meraki文档

updateDeviceSwitchPort API的完整参考。

示例

- name: Update by id
  cisco.meraki.devices_switch_ports:
    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
    accessPolicyNumber: 2
    accessPolicyType: Sticky MAC allow list
    adaptivePolicyGroupId: '123'
    allowedVlans: 1,3,5-10
    daiTrusted: false
    enabled: true
    flexibleStackingEnabled: true
    isolationEnabled: false
    linkNegotiation: Auto negotiate
    macAllowList:
    - 34:56:fe:ce:8e:b0
    - 34:56:fe:ce:8e:b1
    name: My switch port
    peerSgtCapable: false
    poeEnabled: true
    portId: string
    portScheduleId: '1234'
    profile:
      enabled: false
      id: '1284392014819'
      iname: iname
    rstpEnabled: true
    serial: string
    stickyMacAllowList:
    - 34:56:fe:ce:8e:b0
    - 34:56:fe:ce:8e:b1
    stickyMacAllowListLimit: 5
    stormControlEnabled: true
    stpGuard: disabled
    tags:
    - tag1
    - tag2
    type: access
    udld: Alert only
    vlan: 10
    voiceVlan: 20

返回值

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

描述

meraki_response

字典

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

返回:始终

示例: {"accessPolicyNumber": 0, "accessPolicyType": "string", "adaptivePolicyGroupId": "string", "allowedVlans": "string", "daiTrusted": true, "enabled": true, "flexibleStackingEnabled": true, "isolationEnabled": true, "linkNegotiation": "string", "linkNegotiationCapabilities": ["string"], "macAllowList": ["string"], "mirror": {"mode": "string"}, "module": {"model": "string"}, "name": "string", "peerSgtCapable": true, "poeEnabled": true, "portId": "string", "portScheduleId": "string", "profile": {"enabled": true, "id": "string", "iname": "string"}, "rstpEnabled": true, "stickyMacAllowList": ["string"], "stickyMacAllowListLimit": 0, "stormControlEnabled": true, "stpGuard": "string", "tags": ["string"], "type": "string", "udld": "string", "vlan": 0, "voiceVlan": 0}

作者

  • Francisco Munoz (@fmunoz)