community.network.ce_sflow 模块 – 在华为 CloudEngine 交换机上管理 sFlow 配置。

注意

此模块是 community.network 集合 (版本 5.1.0) 的一部分。

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

要安装它,请使用: ansible-galaxy collection install community.network

要在 playbook 中使用它,请指定: community.network.ce_sflow

注意

community.network 集合已弃用,并将从 Ansible 12 中移除。有关更多信息,请参阅 讨论主题

已弃用

在以下版本中移除:

6.0.0 版本

原因:

此集合及其中的所有内容均未维护且已弃用。

替代方案:

未知。

概要

  • 配置采样流 (sFlow) 以实时监控接口上的流量,检测异常流量并定位攻击流量的来源,确保网络稳定运行。

别名:network.cloudengine.ce_sflow

参数

参数

注释

agent_ip

字符串

指定 sFlow 代理的 IPv4/IPv6 地址。

collector_datagram_size

字符串

指定 sFlow 代理发送到 sFlow 收集器的 sFlow 数据包的最大长度。值为整数,以字节为单位。范围为 1024 到 8100。默认值为 1400。

collector_description

字符串

指定 sFlow 收集器的描述。值为 1 到 255 个区分大小写的字符组成的字符串,不包含空格。

collector_id

字符串

指定 sFlow 收集器的 ID。此 ID 在您在后续 sFlow 配置中指定收集器时使用。

选项

  • "1"

  • "2"

collector_ip

字符串

指定 sFlow 收集器的 IPv4/IPv6 地址。

collector_ip_vpn

字符串

指定 VPN 实例的名称。值为 1 到 31 个区分大小写的字符组成的字符串,不支持空格。当使用双引号括住字符串时,字符串中允许使用空格。_public_ 值是保留的,不能用作 VPN 实例名称。

collector_meth

字符串

配置设备通过服务接口发送 sFlow 数据包,增强 sFlow 数据包转发能力。增强参数是可选的。无论是否配置增强模式,交换机都根据收集器上的路由信息确定是通过服务卡还是管理端口发送 sFlow 数据包。当值为 meth 时,设备在控制平面转发 sFlow 数据包。当值为 enhanced 时,设备在转发平面转发 sFlow 数据包以增强 sFlow 数据包转发能力。

选项

  • "meth"

  • "enhanced"

collector_udp_port

字符串

指定 sFlow 数据包的 UDP 目的端口号。值为 1 到 65535 之间的整数。默认值为 6343。

counter_collector

字符串

指示计数器收集器的 ID 列表。

counter_interval

字符串

指示计数器采样间隔。值为 10 到 4294967295 之间的整数,以秒为单位。默认值为 20。

export_route

字符串

配置交换机发送的 sFlow 数据包不携带路由信息。

选项

  • "enable"

  • "disable"

sample_collector

字符串

指示收集器的 ID 列表。

sample_direction

字符串

启用入站或出站方向的流量采样。

选项

  • "inbound"

  • "outbound"

  • "both"

sample_length

字符串

指定采样数据包的最大长度。值为整数,范围为 18 到 512 字节。默认值为 128。

sample_rate

字符串

以 1/rate 的格式指定流采样率。值为整数,范围为 1 到 4294967295。默认值为 8192。

sflow_interface

字符串

流量采样或计数器的接口全名。它必须是物理接口、Eth-Trunk 或二层子接口。

source_ip

字符串

指定 sFlow 数据包的源 IPv4/IPv6 地址。

state

字符串

确定配置是否应存在于设备上。

选项

  • "present" ← (默认)

  • "absent"

备注

注意

  • 此模块要求在被管理的远程设备上启用 netconf 系统服务。

  • 推荐连接方式为 netconf

  • 此模块也适用于旧版 playbook 的 local 连接。

示例

---

- name: Sflow module test
  hosts: ce128
  connection: local
  gather_facts: false
  vars:
    cli:
      host: "{{ inventory_hostname }}"
      port: "{{ ansible_ssh_port }}"
      username: "{{ username }}"
      password: "{{ password }}"
      transport: cli

  tasks:
  - name: Configuring sFlow Agent
    community.network.ce_sflow:
      agent_ip: 6.6.6.6
      provider: '{{ cli }}'

  - name: Configuring sFlow Collector
    community.network.ce_sflow:
      collector_id: 1
      collector_ip: 7.7.7.7
      collector_ip_vpn: vpn1
      collector_description: Collector1
      provider: '{{ cli }}'

  - name: Configure flow sampling.
    community.network.ce_sflow:
      sflow_interface: 10GE2/0/2
      sample_collector: 1
      sample_direction: inbound
      provider: '{{ cli }}'

  - name: Configure counter sampling.
    community.network.ce_sflow:
      sflow_interface: 10GE2/0/2
      counter_collector: 1
      counter_interval: 1000
      provider: '{{ cli }}'

返回值

公共返回值已记录在 此处,以下是此模块独有的字段

描述

changed

布尔值

检查设备上是否进行了更改

返回:始终

示例: true

end_state

字典

模块执行后的配置键值对

返回:详细模式

示例: {"agent": {"family": "ipv4", "ipv4Addr": "1.2.3.4", "ipv6Addr": null}}

现有配置

字典

现有配置的键值对

返回:详细模式

示例: {"agent": {}}

建议配置

字典

传递给模块的参数的键值对

返回:详细模式

示例: {"agent_ip": "6.6.6.6", "state": "present"}

更新

列表 / 元素=字符串

发送到设备的命令

返回:始终

示例: ["sflow agent ip 6.6.6.6"]

状态

  • 此模块将在6.0.0版本中移除。[已弃用]

  • 更多信息请参见 已弃用

作者

  • QijunPan (@QijunPan)