NVIDIA 用户体验 (NVUE) 速查表
NVUE 是一个面向对象、模式驱动的完整 Cumulus Linux 系统模型,提供强大的 API,允许多个接口查看和配置系统内的任何元素。
您可以通过 NVUE 的 CLI 或 API 使用 NVUE。由于 NVUE 是一个对象模型,CLI 和 REST API 接口都具有等效的功能,并且可以并行工作,同时保持所有管理操作的一致性;例如,CLI show
命令会反映您通过 REST API 运行的任何 PATCH
操作。
NVUE 遵循声明式模型,消除了特定于上下文的命令和设置。它被构建为表示整个系统状态的大树(如文件系统路径)。树的底部是表示对象的高级分支,例如路由器和接口。在每个分支下,还有其他分支,当您浏览树时,您会获得更具体的对象上下文。树的叶子是实际属性,表示为键值对。
本速查表可帮助您快速上手使用 Cumulus Linux 和 NVUE CLI。
本速查表涵盖了某些 Cumulus Linux 元素、特性和协议的最常用和最有用的命令。有关更多信息以及其他特定配置,请参阅 Cumulus Linux 用户指南。
有关使用 NVUE REST API 的信息,请参阅 NVUE API 文档。
NVUE CLI 命令语法
所有 NVUE 命令都以 nv
开头,并分为四种语法类别之一
- 配置 (
nv set
和nv unset
) - 监控 (
nv show
) - 配置管理 (
nv config
) - 操作 (
nv action
)
与所有行业标准 CLI 一样,NVUE CLI 包括使用 TAB 键进行命令补全、使用问号 (?
) 显示命令信息以及命令缩写以加快 CLI 交互。此外,您可以使用 -h
或 --help
选项获取命令语法帮助,并通过运行 nv list-commands
列出所有命令。
入门
在您将 NVIDIA Spectrum 交换机上架并通电后,连接串行控制台线缆,以便您可以开始配置。所有交换机在出厂时都配备了用于控制台连接的 RJ45 串行端口,并设置为 115200 波特率。如果您的交换机未预装 NOS,您可以安装新的 Cumulus Linux 镜像。
系统管理和服务
使用以下命令在交换机上配置管理网络和系统服务。
命令语法 | 描述和示例 |
---|---|
nv set system hostname <name> | 配置系统主机名。默认主机名为 cumulus 。$ nv set system hostname leaf01 |
nv set interface eth0 ip address <ip-address/mask> nv set interface eth0 ip gateway <ip-address> | 在 OOB 管理接口 (eth0) 上配置静态 IP 地址和默认网关。默认情况下,OOB 管理接口设置为使用 DHCPv4 获取 IP 地址。$ nv set interface eth0 ip address 192.168.200.2/24 |
nv set service ntp <vrf-name> server <url> iburst on | 添加 NTP 服务器。Cumulus Linux 在启动时启用 NTP 服务并使用默认服务器。有关更多信息,请参阅 NTP 文档。 示例中的 VRF 名称为 default 。您必须指定 VRF。$ nv set service ntp default server 4.cumulusnetworks.pool.ntp.org iburst on 如果您不使用 NTP,请使用 Linux date 命令设置系统时间和日期。 |
nv set system timezone <timezone> | 配置系统时区。默认情况下,Cumulus Linux 使用 UTC 时区。$ nv set system timezone US/Eastern |
nv set service dns <vrf-name> server <ip-address) | 配置 DNS 查找服务器。示例中的 VRF 名称为 mgmt 。您可以使用此命令,无论是否使用 VRF。$ nv set service dns mgmt server 198.51.100.31 |
nv set service syslog <vrf-name> server <ip-address> port <port> nv set service syslog <vrf-name> server <ip-address> protocol <protocol> | 配置远程 Syslog 服务器,以便交换机发送 syslog 消息。示例中的 VRF 名称为 default 。您必须指定 VRF。您可以为协议指定 udp 或 tcp 。$ nv set service syslog default server 192.168.0.254 port 514 |
使用接口
使用以下命令配置物理、分拆、环回以及逻辑第 2 层和第 3 层接口。
物理接口
命令语法 | 描述和示例 |
---|---|
nv set interface <interface> nv set interface <interface-range> | 以管理方式启用交换机上的物理接口。 除 eth0 外,所有物理接口默认情况下都处于禁用状态;您必须启用它们才能使其运行。 要禁用接口,请使用 nv unset 命令。您还可以同时启用或禁用所有或一系列接口。 $ nv set interface swp1 |
nv set interface <interface> link state <state> | 配置接口链路状态:up 或 down 。启用接口后,链路状态将自动设置为 up 。注意: 将链路状态设置为 down 不会像 nv unset interface <interface> 命令那样从系统中禁用接口。$ nv set interface swp1 link state down |
nv set interface <interface> link speed <speed> | 配置接口速度。如果启用了自动协商(默认设置),则它优先于链路速度设置。$ nv set interface swp1 link speed 50G |
nv set interface <interface> link mtu <mtu> | 配置接口 MTU。Cumulus Linux 中的所有接口默认都设置为 9216B MTU。$ nv set interface swp1 link mtu 1500 |
分拆接口
要增加 NVIDIA Spectrum 交换机上的端口数量,您可以将物理接口分拆为两个或四个较低速度的端口。
分拆配置因平台而异,有关更多信息,请参阅 分拆端口 部分的 交换机端口属性 文档。
命令语法 | 描述和示例 |
---|---|
nv set interface <interface> link breakout <breakout-mode> nv set interface <interface> link breakout disabled | 在物理接口上配置分拆模式。 某些平台要求您禁用相邻端口才能分拆接口。有关更多信息,请参阅此知识库文章。 $ nv set interface swp1 link breakout 4x25G |
nv unset interface <breakout-interface> nv unset interface <interface> link breakout | 以管理方式从系统中禁用分拆端口。当您分拆物理端口时,Cumulus Linux 会在系统中创建新的逻辑端口;例如,当您将接口 swp1 分拆为四个新端口时,Cumulus Linux 会创建 swp1s0、swp1s1、swp1s2 和 swp1s3。要从接口中删除分拆配置,您必须以管理方式禁用所有分拆端口,然后从物理接口中 unset 分拆配置。$ nv unset interface swp1s0 |
环回接口
Cumulus Linux 具有预配置的环回接口。当交换机启动时,名为 lo
的环回接口处于 up
状态,并分配了 IP 地址 127.0.0.1
。
命令语法 | 描述和示例 |
---|---|
nv set interface lo ip address <ip-address> | 在环回接口 (lo) 上配置 IP 地址。环回接口必须始终存在并处于 up 状态。 lo 不需要子网掩码;它会自动设置为 /32 前缀。您可以为环回接口配置多个 IP 地址。$ nv set interface lo ip address 10.10.10.1 |
第 2 层接口
在 Cumulus Linux 中启用物理接口后,该接口将被路由(第 3 层)。要将接口设置为交换机端口(第 2 层),您必须将其添加到网桥。
网桥和 VLAN
Cumulus Linux 支持两种网桥配置模式
- VLAN 感知网桥
- 传统网桥
默认网桥 br_default
是 VLAN 感知网桥。有关更多信息,请参阅 以太网桥接 - VLAN 文档。
命令语法 | 描述和示例 |
---|---|
nv set interface <interface> bridge domain br_default | 将物理接口添加到默认 br_default 网桥。您可以将一系列接口添加到网桥。当您将接口添加到网桥时,Cumulus Linux 会自动将接口设置为干线模式(标记-dot1Q),并允许所有网桥 VLAN。 $ nv set interface swp1 bridge domain br_default |
nv set interface <interface> bridge domain br_default untagged none | 配置接口(不是网桥)以丢弃所有未标记的流量。untagged none 命令从接口中删除 PVID。$ nv set interface swp2 bridge domain br_default untagged none |
nv set bridge domain br_default vlan <vlan-id> | 在默认网桥 (br_default ) 上配置 VLAN。您添加到网桥的所有新 VLAN 都会自动添加到其所有干线端口。您还可以添加一系列或列表中的 VLAN。$ nv set bridge domain br_default vlan 10,20 |
nv set interface <interface> bridge domain br_default access <vlan-id> | 将接口配置为特定 VLAN 中的接入(未标记)端口。$ nv set interface swp1 bridge domain br_default access 10 |
nv set bridge domain br_default untagged <vlan-id> | 配置默认 br_default 网桥的 PVID。默认 PVID 为 1。仅使用此命令更改(或重置)默认 PVID。$ nv set bridge domain br_default untagged 100 |
生成树协议 (STP)
VLAN 感知网桥 (br_default
) 仅在 RSTP 模式下运行。
命令语法 | 描述和示例 |
---|---|
nv set bridge domain br_default stp priority <priority> | 设置默认网桥 (br_default ) 的生成树优先级。默认 STP 优先级为 32768。$ nv set bridge domain br_default stp priority 8192 |
nv set interface <interface> bridge domain br_default stp admin-edge on nv set interface <interface> bridge domain br_default stp bpdu-guard on nv set interface <interface> bridge domain br_default stp auto-edge on | 将接口设置为边缘 (PortFast) 模式。NVIDIA 建议您在边缘端口上设置 BPDU 防护以消除环路。 Cumulus Linux 默认启用自动边缘 auto-edge 端口检测。您可以使用 off 选项禁用 auto-edge 。$ nv set interface swp5 bridge domain br_default stp admin-edge on |
有关更多信息,请参阅 生成树和快速生成树 - STP 文档。
第 3 层接口
在您以管理方式启用 Cumulus Linux 接口后,它将成为路由端口(第 3 层)。
命令语法 | 描述和示例 |
---|---|
nv set interface <interface> ip address <ip-address> | 在物理接口 (swp) 上配置 IPv4 或 IPv6 地址。$ nv set interface swp10 ip address 10.1.0.5/24 |
nv set interface <svi> ip address <ip-address> | 在 SVI(VLAN 接口)上配置 IPv4 或 IPv6 地址。 SVI 仅在其 VLAN 存在且接口分配给它(标记或未标记)时才运行。 $ nv set interface vlan100 ip address 100.1.0.2/24 |
链路聚合接口
Cumulus Linux 中的链路聚合 (LAG) 接口称为 bond。您可以将 bond 配置为第 2 层或第 3 层接口。
命令语法 | 描述和示例 |
---|---|
nv set interface <bond-name> bond member <bonded-interface> nv set interface <bond-name> type bond | 配置 bond 接口并设置物理端口。如果您使用的 bond 名称以 bond 开头,则类型将自动设置为 bond 。否则,您必须手动将接口类型设置为 bond 。$ nv set interface bond1 bond members swp1-4 |
nv set interface <bond-name> bond mode <mode> | 配置 bond 接口操作模式。 默认情况下,Cumulus Linux 中的 bond 设置为 LACP (802.3ad) 模式。 您可以使用 static 选项将模式更改为 Balance-xor。要将 bond 模式重置为 LACP,请使用 lacp 选项。$ nv set interface bond1 bond mode static |
nv set interface <bond-name> bond lacp-rate <rate> | 配置 bond 接口 LACP PDU 传输速率。 默认情况下,Cumulus Linux 中的 bond 设置为 fast 模式(每 3 秒传输一次)。要将速率设置为 30 秒,请使用 slow 模式。$ nv set interface bond1 bond lacp-rate slow |
使用网络协议
本速查表包含一些配置主要数据中心协议的基本命令。要配置其他协议,请参阅其他配置命令、示例和更详细的信息,请参阅 Cumulus Linux 用户指南。
第 2 层协议
多机箱链路聚合 - MLAG
MLAG 提供第 2 层冗余和更高的系统吞吐量。要配置 MLAG,您必须满足以下要求
- 只有两台交换机可以共享 MLAG 配置。但是,您可以在网络中拥有多个(不同的)MLAG 对。
- MLAG 对中的两台交换机必须直接连接。这通常是一个 bond,以提高可靠性和带宽。
- MLAG 对中的两台交换机必须是相同的 Spectrum 型号,并且运行相同的 Cumulus Linux 版本。
- 双连接设备(服务器或交换机)可以使用 LACP 或静态 bond 模式。MLAG 交换机必须进行相应的设置。
本速查表包含基本的 MLAG 配置命令。有关更多信息,请参阅 多机箱链路聚合 - MLAG 文档。
命令语法 | 描述和示例 |
---|---|
nv set interface <bond-name> bond member <bonded-interface> | 配置 bond 接口并设置其物理端口。您必须创建 bond 接口,以便将其设置为 MLAG 端口。$ nv set interface bond1 bond members swp1 |
nv set interface <bond-name> bond mlag id <mlag-id> | 设置 bond 接口的 MLAG ID。您必须为每台对等交换机上的每个双连接 bond 指定唯一的 MLAG ID。该值在两个 MLAG 对等体上必须相同。$ nv set interface bond1 bond mlag id 1 |
nv set interface <bond-name> bridge domain br_default | 将 MLAG 端口设置为默认网桥 br_default 。$ nv set interface bond1 bridge domain br_default |
nv set interface peerlink bond member bonded-interface> | 配置用于 MLAG 操作的机箱间 bond。peerlink 是机箱间链路的保留名称。当您创建对等链路时,Cumulus Linux 会自动创建一个名为 peerlink.4094 的第 3 层子接口,以确保此链路上的 VLAN 独立操作。$ nv set interface peerlink bond member swp31-32 |
nv set mlag mac-address <address> | 配置 MLAG 系统 MAC 地址,该地址在所有控制协议的 PDU 中设置,以将 MLAG 对表示为单个交换机。MLAG MAC 地址在两个 MLAG 对等体上必须相同,但在网络中必须唯一,并且在 MLAG 对之间必须不同(Cumulus Linux 提供了一个特殊的保留范围)。$ nv set mlag mac-address 44:38:39:BE:EF:AA |
nv set mlag peer-ip linklocal | 配置 MLAG 对等 IP 地址。对等 IP 地址基于 peerlink.4094 链路本地地址(点对点)。$ nv set mlag peer-ip linklocal |
nv set mlag backup <ip-address> | 配置 MLAG 备份 IP 地址,该地址用于在对等链路断开时在 MLAG 对等体之间进行通信。nv set mlag backup 10.10.10.2如果需要,您可以在特定 VRF 中指定备份 IP。 $ nv set mlag backup 10.10.10.2 vrf mgmt |
虚拟路由器冗余 - VRR
VRR 为第 2 层 MLAG 域启用活动-活动网关。两个 MLAG 对等体都必须具有 SVI,每个 VLAN 具有唯一的 IP 地址。然后,您必须在两个 MLAG 对等体上设置相同的 VRR 实例(每个子网一个实例)。VRR 实例在 SVI 上配置,并保存虚拟 IP 和 MAC 地址。两个对等体都响应来自主机的 ARP 请求,但如果一个对等体发生故障,则第二个对等体仍然充当网关。
命令语法 | 描述和示例 |
---|---|
nv set interface <svi> ip vrr address <ip-address> | 配置 VRR 实例的虚拟 IP 地址。此地址必须在 SVI 子网内。$ nv set interface vlan10 ip vrr address 10.1.10.1/24 |
nv set system global fabric-mac <mac-address> nv set system global fabric-id <id> | 配置全局 fabric MAC 地址,以确保跨 VRR 交换机的 fabric 范围内的 MAC 一致性。MAC 地址主要用于多 fabric EVPN 环境。Cumulus Linux 使用默认 VRR MAC 地址 00:00:5E:00:01:01;您可以全局更改此 MAC 地址,也可以更改默认 fabric ID (fabric_id=1 ),该 ID 将添加到 MAC 地址。$ nv set system global fabric-mac 00:00:5E:00:01:FF |
nv set interface <svi> ip vrr mac-address <mac-address> | 为特定 VLAN 配置 VRR 实例虚拟 MAC 地址(如果您想覆盖全局默认设置)。$ nv set interface vlan10 ip vrr mac-address 00:00:5E:00:01:00 |
有关更多信息,请参阅 虚拟路由器冗余 - VRR 和 VRRP 文档。
第 3 层协议
虚拟路由和转发 - VRF
VRF(也称为 VRF-Lite)使您能够使用多个独立的路由表,这些路由表在同一交换机上同时工作。VRF 在多租户环境中非常有用。
本速查表包含基本的 VRF 命令。有关将自定义 VRF 和 mgmt
VRF 与不同协议一起使用的更多信息,请参阅 虚拟路由和转发 - VRF 和 管理 VRF 文档。
命令语法 | 描述和示例 |
---|---|
nv set vrf <vrf-name> table <id> | 配置新的 VRF 并分配表 ID。您可以使用 auto 表分配或手动设置 ID(ID 必须介于 1001-1255 之间)。$ nv set vrf BLUE table auto |
nv set interface <interface> ip vrf <vrf-name> | 将第 3 层接口添加到 VRF。$ nv set interface swp1 ip vrf BLUE |
静态路由
如果您不需要动态路由协议(如 BGP 或 OSPF)的复杂性,如果您有不经常更改且目标只有一两条路径的路由,则可以使用静态路由。
命令语法 | 描述和示例 |
---|---|
nv set vrf <vrf-name> router static <ip-address> via <ip-address> | 通过 VRF 内指定的下一跳配置到目标网络的静态路由。您必须在下一跳子网中具有本地 IP 地址。$ nv set vrf default router static 10.10.10.101/32 via 10.0.1.1 |
边界网关协议 - BGP
BGP 是运行 Internet 的路由协议。BGP 通过交换路由和可达性信息来管理数据包如何在网络之间路由。
Cumulus Linux 通过 Auto BGP 和 BGP Unnumbered 使数据中心中的 BGP 配置更加容易。NVIDIA 建议使用这些功能来消除对 ASN 和点对点 IP 地址分配的需求,并减少人为错误。
本速查表包含基本的 BGP 配置命令。有关更多信息,请参阅 边界网关协议 - BGP 文档。
命令语法 | 描述和示例 |
---|---|
nv set router bgp autonomous-system <asn> | 使用 ASN 配置 BGP。您可以使用 auto BGP leaf 或 spine 关键字让 Cumulus Linux 自动设置 ASN,或者手动设置一个数字。$ nv set router bgp autonomous-system 65101 |
nv set router bgp router-id <ip-address> nv set vrf <vrf-name> router bgp router-id <ip-address> | 配置 BGP 路由器 ID。默认情况下,BGP 将环回 IP 地址分配为路由器 ID。如果您没有设置环回或想要覆盖此设置,则需要手动设置。您可以全局或按 VRF 设置路由器 ID。$ nv set router bgp router-id 10.10.10.1 |
nv set vrf <vrf-name> router bgp neighbor <neighbor> remote-as <remote-as> | 配置 BGP 邻居对等体。您可以将邻居设置为 internal (用于 iBGP)或 external (用于 eBGP)。默认 VRF 名称为 default 。您必须在此 VRF 中设置邻居。$ nv set vrf default router bgp neighbor 10.0.1.1 remote-as internal |
nv set vrf <vrf-name> router bgp neighbor <neighbor> address-family ipv6-unicast enable on | 启用 IPv6 前缀通告。Cumulus Linux 默认启用 IPv4 地址族。要通告 IPv6 路由,您需要启用 IPv6 地址族。要使用 IPv6 下一跳通告 IPv4 前缀,请参阅使用 IPv6 下一跳通告 IPv4 前缀。$ nv set vrf default router bgp neighbor 2001:db8:0002::0a00:0002 address-family ipv6-unicast enable on |
nv set vrf <vrf-name> router bgp address-family <address-family> network <prefix> | 指定要始发的前缀。$ nv set vrf default router bgp address-family ipv4-unicast network 10.1.10.0/24 |
nv set vrf <vrf-name> router bgp address-family <address-family> redistribute <value> enable on | 将前缀重新分发到 IPv4 或 IPv6 地址族中。您可以指定 connected 、static 或 ospf 。您还可以将路由重分发与路由映射和 BGP 指标选项结合使用。有关更多信息,请参阅路由过滤和重分发。$ nv set vrf default router bgp address-family ipv4-unicast redistribute static enable on |
网络虚拟化
VXLAN 是一种用于逻辑虚拟网络的标准叠加协议。它使用类似 VLAN 的封装技术,将第 2 层以太网段封装在第 3 层网络之上。封装发生在 VTEP 上,VTEP 建立到远程 VTEP 设备的叠加 UDP 隧道。与 VLAN 不同,VXLAN 可扩展到 1600 万个网段(VXLAN 标头中的 24 位 VXLAN 网络标识符 (VNI ID)),以实现多租户。有关更多信息,请参阅网络虚拟化文档。
VXLAN 设备和静态隧道
Cumulus Linux 支持单 VXLAN 设备和传统 VXLAN 设备。NVUE 允许您仅在 VLAN 感知网桥中使用单个 VXLAN 设备(单 VTEP)。对于单个 VXLAN 设备(NVE 接口),您需要指定 VLAN 到 VNI 的映射。
当设置为多个 VLAN 感知网桥时,Cumulus Linux 支持多个单 VXLAN 设备。确保不要跨设备复制 VNI。
此速查表包含一些用于静态 VXLAN 隧道的基本配置命令。有关更多信息和附加配置,请参阅网络虚拟化文档。
命令语法 | 描述和示例 |
---|---|
nv set bridge domain br_default vlan <vlan-id> vni <vni-id> | 将 VLAN 映射到 VNI,并创建 VXLAN 设备 (NVE) 并将其添加到网桥。Cumulus Linux 中的单个 VXLAN 设备名称为 vxlan48 。$ nv set bridge domain br_default vlan 10 vni 10 |
nv set bridge domain br_default vlan <vlan-id> vni auto | 自动将 VLAN 映射到 VNI 以简化配置。您还可以在 VLAN 范围或列表上配置自动 VNI 映射。自动 VLAN 到 VNI 映射仅适用于 EVPN 结构。$ nv set bridge domain br_default vlan 10,20,30,40,50 vni auto |
nv set bridge domain br_default vlan-vni-offset <value> | 使用值偏移自动将 VLAN 映射到 VNI。$ nv set bridge domain br_default vlan-vni-offset 10000 |
nv set nve vxlan mac-learning on | 在 NVE 设备上启用 MAC 学习。您必须为非 EVPN 结构设置此命令。您可以为所有 VNI 全局设置 MAC 学习,也可以为每个 VNI 设置(使用 bridge 命令)。$ nv set nve vxlan mac-learning on |
nv set nve vxlan arp-nd-suppress on | 如果 NVE 已有远程 MAC 地址,则启用 NVE 回复本地 ARP 请求。这可以防止不必要的广播流量发送到所有远程 VTEP。$ nv set nve vxlan arp-nd-suppress on |
nv set nve vxlan source address <ip-address> | 配置 VTEP (NVE) 源 IP 地址以形成叠加隧道。Cumulus Linux 使用环回 IP 地址作为隧道源。$ nv set nve vxlan source address 10.10.10.1 |
nv set nve vxlan mlag shared-address <ip-address> | 将 MLAG 任播虚拟 IP 地址配置为 VXLAN 隧道目的地。两个 MLAG 对等体必须具有相同的地址。$ nv set nve vxlan mlag shared-address 10.0.1.34 |
nv set bridge domain br_default vlan <vlan-id> vni <vni-id> flooding head-end-replication <ip-address> nv set nve vxlan flooding head-end-replication <ip-address> | 为 HER 配置远程 VTEP 以处理 BUM 流量。您必须在非 EVPN 结构中配置远程 VTEP。您可以为每个 VNI 或为所有 VNI 全局设置远程 VTEP。$ nv set bridge domain br_default vlan 10 vni 10 flooding head-end-replication 10.10.10.2 |
nv set bridge domain br_default vlan <vlan-id> vni <vni-id> flooding multicast-group <ip-address> nv set nve vxlan flooding multicast-group <ip-address> | 为 EVPN 结构配置用于处理 BUM 流量的多播组(HER 是默认设置)。您可以为每个 VNI 或全局设置洪泛组。NVIDIA 建议为每个 VNI 设置唯一的多播组。此配置需要在底层网络上使用 PIM-SM。 有关更多信息,请参阅带有 PIM-SM 的 EVPN BUM 流量。 $ nv set bridge domain br_default vlan 10 vni 10 flooding multicast-group 239.1.1.110 |
以太网虚拟专用网络 - EVPN
EVPN 是一种基于标准的控制平面,它依赖于多协议 BGP (MP-BGP),并允许大规模构建和部署 VXLAN。EVPN 支持子网内桥接和子网间路由,包括多租户支持。
此速查表包含基本的 EVPN 配置命令。有关更多信息和附加配置,请参阅以太网虚拟专用网络 - EVPN 文档。
命令语法 | 描述和示例 |
---|---|
nv set evpn enable on | 在交换机上全局启用 EVPN 功能。您无需为每个 VRF 启用 EVPN,它是自动设置的。$ nv set evpn enable on |
nv set vrf <vrf-name> router bgp neighbor <neighbor> address-family l2vpn-evpn enable on | 在 BGP 邻居之间激活 EVPN 地址族。您需要在 default VRF 中设置 EVPN 邻居。$ nv set vrf default router bgp neighbor swp51 address-family l2vpn-evpn enable on |
nv set evpn route-advertise default-gateway on | 在使用 EVPN 集中式路由时,启用将默认网关通告到 EVPN 中。您可以为每个 VNI 设置此项,但 NVIDIA 建议全局设置。$ nv set evpn route-advertise default-gateway on |
nv set vrf <vrf-name> evpn vni <vni-id> | 在使用 EVPN 对称路由时,为租户 VRF 创建第 3 层 VNI。首先,确保创建租户 VRF 并向其添加 SVI。$ nv set vrf RED vni 4001 |
nv set vrf <vrf-name> router bgp address-family ipv4-unicast route-export to-evpn enable on | 启用交换机以安装来自 VRF BGP RIB 的 EVPN type-5 路由。首先,确保创建租户 VRF 并为其设置第 3 层 VNI。$ nv set vrf RED router bgp address-family ipv4-unicast route-export to-evpn enable on |
nv set evpn multihoming enable on | 在交换机上启用 EVPN 多宿主 (EVPN-MH)。$ nv set evpn multihoming enable on |
nv set interface <bond-name> evpn multihoming segment local-id <id> | 在 bond 接口上配置 EVPN-MH ESI。每个 ES 在整个结构中必须具有相同的 ESI。您必须在交换机上的每个 bond 接口上设置唯一的 ESI。$ nv set interface bond2 evpn multihoming segment local-id 2 |
nv set interface <bond-name> evpn multihoming segment mac-address <mac-address> | 为每个 bond 接口配置 EVPN-MH ES MAC 地址。ES MAC 地址和 ESI 生成唯一的 EVPN type-3 路由。ES MAC 地址在所有面向同一服务器的接口上必须相同。$ nv set interface bond1 evpn multihoming segment mac-address 44:38:39:BE:EF:AA |
nv set interface <bond-name> evpn multihoming segment df-preference <value> | 配置 EVPN-MH ES DF。DF 处理通过 VXLAN 隧道接收到本地 ES 的洪泛流量。默认 DF 值为 32767。NVIDIA 建议设置 DF 优先级以避免不可预测的故障情况。$ nv set interface bond1 evpn multihoming segment df-preference 50000 |
nv set interface <interface> evpn multihoming uplink on | 配置 EVPN-MH 上行链路端口。当所有 ES 上行链路端口都关闭时,所有 bond 都将进入错误禁用状态,以防止出现没有 VXLAN 叠加隧道的活动 MH bond。$ nv set interface swp51-54 evpn multihoming uplink on |
Cumulus Linux 用户指南的配置示例部分提供了 EVPN 第 2 层路由、集中式路由、对称路由和 EVPN-MH 的示例。
您还可以使用 Air Marketplace 中的这些预构建模拟来检查和尝试 EVPN 最佳实践
访问控制列表 - ACL
Cumulus Linux 中的 ACL 基于 Linux iptables 和 ebtables,具有以下默认行为
- 没有隐式拒绝。ACL 必须以
match any
和action deny
规则结尾,以丢弃所有不匹配的流量。 - 不支持通配符掩码。您必须单独列出子网。
除了 NVUE 命令之外,您还可以通过设置 ebtable 和 iptable 规则来配置 ACL。您还可以使用内置的 ACL 管理工具 cl-acltool
。有关更多信息,请参阅Netfilter - ACL 文档。
命令语法 | 描述和示例 |
---|---|
nv set acl <acl-name> type <type> | 创建 IPv4、IPv6 或 MAC 访问列表。您必须设置 ACL 类型。$ nv set acl DENY_TCP_HTTP type ipv4 |
nv set acl <cl-name> rule <rule-id> match <match> | 将 ACL 规则设置为 match 某些参数。您必须根据 ACL 类型设置参数。例如,您不能为 IPv4 ACL 类型设置 match mac X:X:X:X:X:X 。$ nv set acl DENY_TCP_HTTP rule 10 match ip protocol tcp |
nv set acl <acl-name> rule <rule-id> action <action> | 为匹配的流量设置 ACL 规则操作(permit 、deny 、set 、span 、erspan 、police 或 log )。除了基本的 permit 和 deny 操作之外,您还可以使用 ACL 修改和操作匹配的流量。$ nv set acl DENY_TCP_HTTP rule 10 action drop |
nv set interface <interface> acl <acl-name> <direction> | 在接口上应用 ACL。您需要选择 ACL 绑定方向,inbound 用于入口流量,outbound 用于出口流量。$ nv set interface swp1 acl DENY_TCP_HTTP inbound |
nv set interface <interface> acl <acl-name> <direction> control-plane | 在控制平面上应用 ACL 并绑定到接口(在 inbound 或 outbound 方向上)。$ nv set interface swp1 acl deny_icmp inbound control-plane |
监控命令
NVUE 监控命令显示您的网络配置方式。监控命令分为类别(对象),其中包括子命令。通用命令语法为 nv show <category> <subcommand> <subcommand> <...>
。您可以使用 TAB 键完成来浏览命令。
命令语法 | 描述 |
---|---|
nv show acl <name> | 显示访问列表配置。 |
nv show action | 显示有关重置计数器和消除冲突的操作命令的信息。 |
nv show bridge | 显示网桥域配置。 |
nv show evpn | 显示 EVPN 配置。 |
nv show interface | 显示接口配置。 |
nv show mlag | 显示 MLAG 配置。 |
nv show nve | 显示网络虚拟化配置,例如 VXLAN 特定的 MLAG 配置和 VXLAN 洪泛。 |
nv show platform | 显示平台配置,例如硬件和软件组件。 |
nv show qos | 显示 QoS RoCE 配置。 |
nv show router | 显示路由器配置,例如路由器策略、全局 BGP 和 OSPF 配置、PBR、PIM、IGMP、VRR 和 VRRP 配置。 |
nv show service | 显示 DHCP 中继和服务器、NTP、PTP、LLDP 和 Syslog 配置。 |
nv show system | 显示全局系统设置,例如 PBR 的保留路由表范围和第 3 层 VNI 的保留 VLAN 范围。您还可以查看系统登录消息和交换机重启历史记录。 |
nv show vrf | 显示 VRF 配置。 |
NVUE 为 nv show
命令提供了其他选项。这些选项可以使用命令标志获得。
命令语法 | 描述 |
---|---|
--applied | 显示所示对象的已应用配置。 |
--operational | 显示所示对象的运行配置。applied 和 operational 配置必须相同。 |
--color | 显示带颜色或不带颜色的输出。 |
--help | 显示命令的帮助。此选项也适用于 nv set 和 nv unset 命令。 |
--output | 以 json 或 yaml 格式显示输出。 |
--paginate | 分页输出。 |
--pending | 显示对象的待处理配置。已 set 和 unset 但尚未应用或保存的配置。 |
--rev <revision> | 显示分离的待处理配置(使用 nv detach 命令)。 |
--startup | 显示交换机启动配置(使用 nv config save 命令)。 |
--view | 显示以下不同视图:brief 、lldp 、mac 、pluggables 和 small 。此选项仅适用于 nv show interface 命令。例如,nv show interface --view=small 命令显示交换机上接口的列表,而 nv show interface --view=brief 命令显示有关交换机上每个接口的信息,例如接口类型、速度、远程主机和端口。 |
以下是一些有用的 show 命令
命令语法 | 描述 |
---|---|
nv show interface | 显示所有接口的状态。您可以指定一个接口以显示其配置和运行状态。对于每个特定接口信息,请在命令中使用接口名称。 |
nv show platform hardware | 显示交换机硬件相关信息,例如 ASIC 型号、CPU、内存、序列号等。 |
nv show platform environment | 显示交换机风扇、LED、PSU 和传感器信息。 |
nv show platform software | 显示已安装的系统软件包及其版本。 |
nv show system cpu | 显示系统 CPU 信息和利用率。 |
nv show system memory | 显示系统内存信息和利用率。 |
nv show service ntp | 显示 NTP 服务配置和状态。 |
nv show system wjh packet-buffer | 显示交换机上的 刚刚发生 (WJH) 配置和丢包事件。 |
nv show bridge domain br_default mac-table | 显示网桥 MAC 地址表。 |
nv show bridge domain br_default stp | 显示网桥生成树状态。 |
nv show bridge domain br_default vlan | 显示网桥 VLAN 列表和 VNI 映射(如果已配置)。 |
nv show interface swp1 bridge domain br_default | 显示接口的 VLAN 和生成树状态。 |
nv show interface swp1 bridge domain br_default | 显示接口的 VLAN 和生成树状态。 |
nv show mlag | 显示 MLAG 配置和运行状态。 |
nv show mlag consistency-checker | 显示 MLAG 对等体之间的配置一致性和冲突。 |
nv show mlag vni | 显示两个 MLAG 对等体上的 VNI 配置。 |
nv show nve | 显示 NVE 接口 (VTEP) 配置和运行状态。 |
nv show acl | 显示访问列表配置。 |
操作命令
NVUE 操作命令重置接口的计数器并消除 protodown MLAG bond 的冲突。
命令语法 | 描述 |
---|---|
nv action clear interface <interface> qos roce counters | 重置接口 RoCE 计数器。$ nv action clear interface swp1 qos roce counters |
nv action clear interface <bond-name> bond mlag lacp-conflict | 消除 protodown MLAG bond 中的重复伙伴 MAC 地址或伙伴 MAC 地址不匹配冲突。$ nv action clear interface bond1 bond mlag lacp-conflict |
配置管理
NVUE 利用 Git 引擎来管理配置,以便您可以像处理代码一样处理配置。
命令语法 | 描述 |
---|---|
nv config apply | 应用待处理的配置。-y 或 --assume-yes 标志自动回复 yes 到所有提示(使用 --assume-no 标志回复 no )。配置 apply 不会将配置保存为启动配置,您需要运行 nv config save 。您可以使用 --confirm 标志来利用 commit-confim 功能(--confirm-status 显示确认剩余时间)。 |
nv config detach | 删除当前的待处理配置。 |
nv config diff <revision-a> <revision-b> nv config diff <revision> <revision> -o commands | 显示两个配置修订之间的差异,例如 pending 和 applied 配置,或 detached 和 pending 配置。如果您使用 -o commands ,则 show 命令以 NVUE 命令语法显示信息。 |
nv config history <nvue-file> | 显示配置修订(文件)的应用历史记录。 |
nv config patch <nvue-file> | 使用指定的 YAML 配置文件更新待处理的配置。有关更多信息,请参阅 NVUE 代码片段。 |
nv config replace <nvue-file> | 将待处理的配置替换为指定的 YAML 配置文件。 |
nv config save | 使用已应用的配置覆盖启动配置(写入 /etc/nvue.d/startup.yaml )。此配置在重启后仍然保留。 |
nv config show nv config show -o commands | 以 yaml 格式显示当前已应用的配置。如果您使用 -o commands ,则 show 命令以 NVUE 命令语法显示信息。 |