在此页面上
设置 Junos 节点切片
在继续执行 Junos 节点切片设置任务之前,如果您使用的是外部服务器模型,则必须已完成 准备 Junos 节点切片设置一章中所述的过程。
将 MX 系列路由器配置为在 BSYS 模式下运行(外部服务器型号)
确保 MX 系列路由器已连接到 x86 服务器,如 连接服务器和路由器中所述。
Junos 节点切片需要 MX 系列路由器充当基本系统 (BSYS)。
使用以下步骤将 MX 系列路由器配置为在 BSYS 模式下运行:
BSYS 模式下的路由器不应运行 Junos 节点切片中运行基本管理功能所需的功能以外的功能。例如,BSYS 不应具有与系统中安装的线卡相关联的接口配置。相反,访客网络功能 (GNF) 将具有成熟的路由器配置。
在运行 RHEL(外部服务器模型)的 x86 服务器上安装 JDM RPM 软件包
在为 x86 服务器安装 JDM RPM 软件包之前,请确保已安装其他软件包,如 为 JDM 安装其他软件包中所述。
下载并安装适用于运行 RHEL 的 x86 服务器的 JDM RPM 软件包,如下所示:
要在运行 RHEL 的 x86 服务器上安装软件包,请在每台服务器上执行以下步骤:
对第二台服务器重复上述步骤。
在运行 Ubuntu 20.04 的 x86 服务器上安装 JDM Ubuntu 软件包(外部服务器模型)
在为 x86 服务器安装 JDM Ubuntu 软件包之前,请确保已安装其他软件包。有关更多详细信息,请参阅 为 JDM 安装其他包。
下载并安装 适用于运行 Ubuntu 20.04 的 x86 服务器的 JDM Ubuntu 软件包,如下所示:
要在运行 Ubuntu 20.04 的 x86 服务器上安装 JDM 软件包,请在每台服务器上执行以下步骤:
对第二台服务器重复上述步骤。
在 x86 服务器上配置 JDM(外部服务器模型)
使用以下步骤在每个 x86 服务器上配置 JDM。
在 JDM 中配置非根用户(Junos 节点切片)
在外部服务器模型中,您可以从 Junos OS 18.3R1 版开始,在瞻博网络设备管理器 (JDM) 上为 Junos 节点切片创建非 root 用户。您需要一个根帐户来创建非根用户。非 root 用户可以使用 JDM 控制台或通过 SSH 登录 JDM。将为每个非 root 用户提供一个用户名,并分配一个预定义的登录类。
非 root 用户可以执行以下功能:
与 JDM 交互。
编排和管理访客网络功能 (GNF)。
使用 JDM CLI 命令监视 JDM、主机服务器和 GNF 的状态。
非 root 用户帐户仅在 JDM 内部运行,而不在主机服务器上运行。
要在 JDM 中创建非 root 用户:
表 1 包含 JDM 为非 root 用户支持的预定义登录类:
登录类 |
权限 |
---|---|
超级用户 |
|
算子 |
|
只读 |
与运算符类类似,不同之处在于用户无法在 JDM 中重新启动守护程序。 |
未经 授权 |
Ping 和路由跟踪操作。 |
配置 JDM 接口(外部服务器模型)
如果要修改在 JDM 中配置的服务器接口,请执行以下步骤:
在 JDM 中,您必须配置:
连接到 MX 系列路由器的两个 10-Gbps 服务器端口。
要用作 JDM 管理端口的服务器端口。
要用作 GNF 管理端口的服务器端口。
因此,在开始配置端口之前,您需要在每台服务器上确定以下内容:
连接到
CB0
CB1
MX 系列路由器及其上的服务器接口(例如和p3p1
p3p2
)。要用于 JDM 管理和 GNF 管理的服务器接口(例如和
em2
em3
)。
有关详细信息,请参阅 图连接服务器和路由器。
对于 和
server1
都需要server0
此信息。这些接口仅在 Linux 主机上可见。
要在 JDM 中配置 x86 服务器接口,请在两台服务器上执行以下步骤:
有关示例 JDM 配置,请参阅 Junos 节点切片的示例配置。
如果要修改在 JDM 中配置的服务器接口,则需要删除 GNF(如果已配置),如上所述配置接口,从 shell 重新启动 JDM,重新配置并激活 GNF,然后提交更改,
从 Junos OS 19.2R1 版开始,Junos 节点切片支持为 GNF 分配全局唯一的 MAC 地址范围(由瞻博网络提供)。
将 MX 系列路由器配置为在机箱内模式下运行
要配置机箱内 Junos 节点切片,MX 系列路由器必须安装以下类型的路由引擎之一:
-
RE-S-X6-128G(用于 MX480 和 MX960 路由器)
-
REMX2K-X8-128G(用于 MX2010 和 MX2020 路由器)
-
REMX2008-X8-128G(用于 MX2008 路由器)
-
在机箱内型号中,基本系统 (BSYS)、瞻博网络设备管理器 (JDM) 和所有访客网络功能 (GNF) 在 MX 系列路由器的路由引擎内运行。BSYS 和 GNF 作为虚拟机 (VM) 在主机上运行。您需要首先减少独立 MX 系列路由器的资源占用量,如下所示:
配置语句set vmhost resize vjunos compact
后重新启动 VM 主机时,将删除 /var/ 位置中的所有文件,包括日志文件 (/var/log) 和核心文件 (/var/crash)。如果要将它们用作参考,则必须先保存当前位于 /var/log 或 /var/crash 中的所有文件,然后才能继续执行 VM 主机大小调整配置。
为机箱内型号安装和配置 JDM
本主题中列出的步骤仅适用于机箱内 Junos 节点切片配置。
在 MX 系列路由器上安装 JDM RPM 软件包(机箱内型号)
在 MX 系列路由器上安装瞻博网络设备管理器 (JDM) RPM 软件包之前,必须将 MX 系列路由器配置为在机箱内 BSYS 模式下运行。有关更多信息,请参阅 将 MX 系列路由器配置为在机箱内模式下运行。
RPM 软件包 jns-jdm-vmhost
用于机箱内 Junos 节点切片部署,而 RPM 软件包 jns-jdm
用于基于 Junos 节点切片的外部服务器部署。
配置 JDM(机箱内型号)
使用以下步骤在 MX 系列路由器的两个路由引擎上配置 JDM:
在机箱内 Junos 节点切片中,您无法在同一路由引擎的管理接口之间 ping 或发送流量(例如,从 GNF1 的路由引擎 0 到 GNF2 的路由引擎 0,或从 GNF1 的路由引擎 0 到 JDM)。
在机箱内模式下,您无法在 BSYS 和 JDM 管理接口之间执行
scp
操作。在尝试步骤 8 之前,您必须按照步骤 7 中所述完成 ssh 密钥交换。如果在未完成步骤 7 的情况下尝试执行步骤 8,系统将显示一条错误消息,如以下示例所示:
Failed to fetch JDM software version from server1. If authentication of peer server is not done yet, try running request server authenticate-peer-server.
从 Junos OS 19.2R1 版开始,Junos 节点切片支持为 GNF 分配全局唯一的 MAC 地址范围(由瞻博网络提供)。
将 MAC 地址分配给 GNF
从 Junos OS 19.2R1 版开始,Junos 节点切片支持为 GNF 分配全局唯一的 MAC 地址范围(由瞻博网络提供)。
要接收 GNF 的全球唯一 MAC 地址范围,请联系您的瞻博网络代表并提供您的 GNF 许可证 SSRN(软件支持参考号),该编号将在您购买 GNF 许可证时以电子方式发送给您。要在 GNF 许可证中找到 SSRN,请参阅瞻博网络知识库文章 KB11364。
对于每个 GNF 许可证,您将获得一个“增强型 SSRN”,其中包括瞻博网络为该 GNF 许可证分配的全球唯一 MAC 地址范围。然后,您必须在 JDM CLI 中配置此增强型 SSRN,如下所示:
root@jdm#set system vnf-license-supplement vnf-id gnf-id license-supplement-string augmented-ssrn-string
root@jdm#commit
增强型 SSRN 只能用于一个 GNF ID。在 JDM 中,GNF 虚拟机称为虚拟网络功能 (VNF)。GNF ID 是其属性之一。VNF 的属性在后续配置 访客网络功能部分中有完整描述。
默认情况下,将验证增强的 SSRN。如果需要跳过此验证,可以在 CLI 中使用 no-validate 属性,如下所示:示例:
set system vnf-license-supplement vnf-id gnf-id license-supplement-string augmented-ssrn-string [no-validate]
。
仅当 GNF 未运行且尚未配置时,您才能为 GNF ID 配置增强型 SSRN。在配置 GNF 之前,您必须先为 GNF ID 配置增强型 SSRN。如果已配置 GNF ID,则必须先在两台服务器(如果是外部服务器型号)或两个路由引擎(如果是机箱内 Junos 节点切片型号)上删除该 GNF ID 的 GNF,然后再配置增强型 SSRN。
同样,您必须先删除两台服务器(如果是外部服务器型号)或两个路由引擎(如果是机箱内 Junos 节点切片型号)上给定 GNF ID 的 GNF,然后再删除 GNF ID 的增强型 SSRN。
您无法将增强型 SSRN 应用于基于 Junos OS 19.1R1 或更低版本的 GNF。
要确认已应用为 GNF 分配的 MAC 地址范围,当 GNF 开始运行时,请使用 Junos CLI 命令
show chassis mac-addresses
- 输出将与增强型 SSRN 的子字符串匹配。
配置访客网络功能
配置访客网络功能 (GNF) 包括两项任务,一项在 BSYS 执行,另一项在 JDM 执行。
- 在尝试创建 GNF 之前,必须确保已将提交同步配置为 JDM 配置的一部分,以便 JDM 实例生成的随机 MAC 前缀同步。要检查随机 MAC 前缀是否同步,请使用 CLI 命令
show server connections
或在show system random-mac-prefix
JDM 上。如果随机 MAC 前缀不同步,软件将发出以下主要警报:Mismatched MAC address pool between GNF RE0 and GNF RE1
。要查看警报,请使用显示系统警报命令。 -
在尝试创建 GNF 之前,必须确保服务器(如果是机箱内型号,则为路由引擎)有足够的资源(CPU、内存、存储)用于该 GNF。
-
您需要为每个 GNF 分配一个 ID。此 ID 在 BSYS 和 JDM 中必须相同。
在 BSYS 上,通过应用以下示例中所示的配置,通过为其分配 ID 和一组线卡来指定 GNF:
user@router# set chassis network-slices guest-network-functions gnf 1 fpcs 4
user@router# commit
在 JDM 中,GNF 虚拟机称为虚拟网络功能 (VNF)。VNF 具有以下属性:
VNF 名称。
GNF ID。此 ID 必须与 BSYS 中使用的 GNF ID 相同。
MX 系列平台类型。
-
用于 GNF 的 Junos OS 映像,可从瞻博网络 下载 页面下载。
从 下载 页面中,选择 所有产品 > Junos 节点切片 - 访客网络功能 ,下载 GNF 的 Junos 映像。
VNF 服务器资源模板。
在 JDM 上,要配置 VNF,请执行以下步骤:
使用 JDM shell 命令
scp
检索 GNF 的 Junos OS 节点切片映像,并将其放在 JDM 本地目录 /var/jdm-usr/gnf-images 中(重复此步骤以检索 GNF 配置文件)。root@jdm:~#
scp source-location-of-the-gnf-image /var/jdm-usr/gnf-images
root@jdm:~#scp source-location-of-the-gnf-configuration-file /var/jdm-usr/gnf-config
使用 JDM CLI 命令将此映像分配给 GNF,如以下示例所示:
root@test-jdm-server0>
request virtual-network-functions test-gnf add-image /var/jdm-usr/gnf-images/junos-install-ns-mx-x86-64-17.4R1.10.tgz all-servers
Server0: Added image: /vm-primary/test-gnf/test-gnf.img Server1: Added image: /vm-primary/test-gnf/test-gnf.img-
通过应用配置语句配置 VNF,如以下示例所示:
root@test-jdm-server0#
set virtual-network-functions
test-gnf
id
1
root@test-jdm-server0#
set virtual-network-functions
test-gnf
chassis-type mx2020
root@test-jdm-server0#
set virtual-network-functions
test-gnf
resource-template
2core-16g
root@test-jdm-server0#
set system vnf-license-supplement vnf-id 1 license-supplement-string RTU00023003204-01-AABBCCDDEE00-1100-01-411C
对于机箱内型号,请勿配置平台类型 (
set virtual-network-functions
test-gnf
chassis-type mx2020
)。它将被自动检测到。从 Junos OS 19.2R1 版开始,Junos 节点切片支持为 GNF 分配全局唯一的 MAC 地址范围(由瞻博网络提供)。
还要为 GNF 指定基准或初始 Junos OS 配置,请在服务器(server0 和server1)上为外部服务器型号准备 GNF 配置文件(例如: /var/jdm-usr/gnf-config/test-gnf.conf),在机箱内型号的两个路由引擎(re0 和 re1)上准备 GNF 配置文件(例如:/var/jdm-usr/gnf-config/test-gnf.conf),并在语句中
base-config
指定文件名作为参数,如下所示:root@test-jdm-server0#
set virtual-network-functions test-gnf base-config /var/jdm-usr/gnf-config/test-gnf.conf
root@test-jdm-server0#
commit synchronize
注意:确保:
-
您可以使用与之前在 BSYS 中指定的 GNF ID 相同的 GNF ID。
-
两个服务器/路由引擎上的基线配置文件名(带路径)相同。
-
基线文件内容的语法采用 Junos OS 配置格式。
-
此处使用的 GNF 名称与步骤 2 中分配给 GNF 的 Junos OS 映像的 GNF 名称相同。
-
要验证是否已创建 VNF,请运行以下 JDM CLI 命令:
root@test-jdm-server0>
show virtual-network-functions test-gnf
通过发出以下 JDM CLI 命令登录到 VNF 的控制台:
root@test-jdm-server0>
request virtual-network-functions test-gnf console
注意:请记住在完成配置任务后注销 VNF 控制台。建议使用命令
set system login idle-timeout minutes
设置空闲超时。否则,如果用户忘记注销 VNF 控制台会话,其他用户无需提供访问凭据即可登录。有关详细信息,请参阅系统登录(Junos 节点切片)。VNF 的配置 VNF 的方式与配置 MX 系列路由引擎的方式相同。
机箱内型号的 CLI 提示符为
root@jdm#
。有关示例配置,请参阅 Junos 节点切片的示例配置。
对于外部服务器模型,如果您之前从 Linux shell 关闭了任何物理 x86 CB 接口或 GNF 管理接口(通过使用命令
ifconfig interface-name down
),这些将在 GNF 启动时自动启动。
在一对 GNF 之间配置抽象交换矩阵接口
在两个访客网络功能 (GNF) 之间创建抽象结构 (af
) 接口涉及基本系统 (BSYS) 和 GNF 上的配置。基于 BSYS 配置在 GNF 上创建抽象的结构接口,然后将其发送到这些 GNF。
-
一对 GNF 之间只能配置一个
af
接口。 - 在 Junos 节点切片设置中,每个 GNF 都分配有一个 FPC,如果分配给远程 GNF 的 FPC 的数据包转发引擎无法通过交换矩阵访问,则关联的抽象结构接口将关闭。可能导致此行为的错误示例包括 pfe 结构可访问性错误和导致
pfe disable
操作的 cmerror 事件(有关详细信息,请使用show chassis fpc errors
命令)。如果为 GNF 分配了多个 FPC,则报告所有对等数据包转发引擎关闭的本地 FPC 将从确定抽象结构接口状态时移除。
要在一对 GNF 之间配置 af
接口,请执行以下操作:
-
在 BSYS 中,应用以下示例中所示的配置:
user@router#
set chassis network-slices guest-network-functions gnf 2 af4 peer-gnf id 4
user@router#set chassis network-slices guest-network-functions gnf 2 af4 peer-gnf af2
user@router#set chassis network-slices guest-network-functions gnf 4 af2 peer-gnf id 2
user@router#set chassis network-slices guest-network-functions gnf 4 af2 peer-gnf af4
在此示例中,
af2
是抽象结构接口实例 2 和af4
抽象结构接口实例 4。注意:允许
af
的接口值范围从af0
到af9
。GNF
af
接口将可见且已打开。您可以采用配置任何其他接口的方式来配置af
接口。 在 GNF 上,应用配置,如以下示例所示:
user@router-gnf-b#
set interfaces af4 unit 0 family inet address 10.10.10.1/24
user@router-gnf-d#set interfaces af2 unit 0 family inet address 10.10.10.2/24
如果要在接口上
af
应用 MPLS 系列配置,可以在配置接口的两个af
GNF 上应用命令set interfaces af-name unit logical-unit-number family mpls
。有关示例
af
配置,请参阅 Junos 节点切片的示例配置。
抽象交换矩阵接口上的服务等级
服务等级 (CoS) 数据包分类根据数据包的转发类将传入数据包分配给输出队列。有关更多详细信息,请参阅 CoS 配置指南 。
以下各节介绍转发类到队列的映射,以及抽象结构 (af
) 接口上支持的行为聚合 (BA) 分类器和重写。
转发类到队列的映射
af
接口是模拟 WAN 接口,具有任何其他接口的大多数功能,但指定给远程数据包转发引擎的流量仍必须通过两个交换矩阵队列(低/高优先级队列)。
目前, af
接口仅在 2 队列模式下运行。因此,所有基于队列的功能(如调度、监管和整形)在接口上 af
都不可用。
接口上的 af
数据包继承结构队列,该队列由为数据包所属的转发类配置的结构优先级决定。例如,请参阅以下转发类到队列映射配置:
[编辑]
user@router# show class-of-service forwarding-classes
class Economy queue-num 0 priority low; /* Low fabric priority */
class Stream queue-num 1;
class Business queue-num 2;
class Voice queue-num 3;
class NetControl queue-num 3;
class Business2 queue-num 4;
class Business3 queue-num 5;
class VoiceSig queue-num 6 priority high; /* High fabric priority */
class VoiceRTP queue-num 7;
如前面的示例所示,当数据包被分类为转发类 VoiceSig
时,转发路径中的代码将检查该转发类的结构优先级,并决定为此数据包选择哪个结构队列。在这种情况下,选择高优先级结构队列。
BA 分类器和重写
行为聚合 (BA) 分类器将服务等级 (CoS) 值映射到转发类和丢失优先级。转发等级和丢失优先级组合决定了在路由器中给予数据包的 CoS 处理方式。支持以下 BA 分类器和重写:
Inet-优先级分类器和重写
DSCP 分类器和重写
MPLS EXP 分类器和重写
您还可以对进入 MPLS 隧道的 IP 数据包应用重写,并重写 EXP 和 IPv4 类型的服务 (ToS) 位。此方法的工作方式与在其他普通接口上相同。
针对 IP v6 流量的 DSCP v6 分类器和重写器
不支持以下各项:
IEEE 802.1 分类和重写
IEEE 802.1AD (QinQ) 分类和重写
有关 CoS BA 分类器的详细信息,请参阅 CoS 配置指南 。
优化抽象交换矩阵接口的结构路径
通过配置交换矩阵路径优化模式,您可以优化两个访客网络功能 (GNF) 之间抽象交换矩阵 (af) 接口上的流量。此功能可在数据包最终到达目标数据包转发引擎之前防止任何额外的结构跃点(将流量从一个数据包转发引擎切换到另一个数据包转发引擎),从而降低交换矩阵带宽消耗。MX2008、MX2010 和 MX2020 采用 MPC9E 和 MX2K-MPC11E 支持结构路径优化,只能防止抽象交换矩阵接口负载平衡导致的单个额外流量跃点。
您可以配置以下结构路径优化模式之一:
monitor
— 如果配置此模式,对等方 GNF 将监控流量,并向源 GNF 发送有关流量当前转发到的数据包转发引擎以及可以提供优化流量路径的所需数据包转发引擎的信息。在此模式下,源 GNF 不会将流量转发到所需的数据包转发引擎。optimize
— 如果配置此模式,对等方 GNF 将监控流量,并向源 GNF 发送有关流量当前转发到的数据包转发引擎以及可以提供优化流量路径的所需数据包转发引擎的信息。然后,源 GNF 将流量转发到所需的数据包转发引擎。
要配置结构路径优化模式,请在 BSYS 使用以下 CLI 命令。
user@router#set chassis network-slices guest-network-functions gnf id af-name collapsed-forward (monitor | optimize)
user@router#commit
配置结构路径优化后,您可以使用 GNF 中的命令 show interfaces af-interface-name
查看当前在最佳/非最佳路径上流动的数据包数。
参见
SNMP 陷阱支持:配置 NMS 服务器(外部服务器模型)
瞻博网络设备管理器 (JDM) 支持以下 SNMP 陷阱:
JDM 接口的 LinkUp 和 LinkDown 陷阱。
将生成标准链路上行/链路下行 SNMP 陷阱。使用默认社区字符串
jdm
。主机接口的链路向上/链路向下陷阱。
将生成标准
linkUp/linkDown
SNMP 陷阱。使用默认社区字符串host
。JDM 到 JDM 连接丢失/重新获得陷阱。
JDM 到 JDM 连接丢失/重新获得陷阱使用通用系统日志陷阱 (jnxSyslogTrap) 通过主机管理接口发送。
当 JDM 无法通过或
cb1
链接与其他cb0
服务器上的对等 JDM 通信时,将发送 JDM 连接向下陷阱JDM_JDM_LINK_DOWN
。请参阅以下示例:{ SNMPv2c C=host { V2Trap(296) R=1299287309 .1.3.6.1.2.1.1.3.0=42761992 .1.3.6.1.6.3.1.1.4.1.0=.1.3.6.1.4.1.2636.4.12.0.1 .1.3.6.1.4.1.2636.3.35.1.1.1.2.1="JDM_JDM_LINK_DOWN" .1.3.6.1.4.1.2636.3.35.1.1.1.3.1="" .1.3.6.1.4.1.2636.3.35.1.1.1.4.1=5 .1.3.6.1.4.1.2636.3.35.1.1.1.5.1=24 .1.3.6.1.4.1.2636.3.35.1.1.1.6.1=0 .1.3.6.1.4.1.2636.3.35.1.1.1.7.1="jdmmon" .1.3.6.1.4.1.2636.3.35.1.1.1.8.1="JDM-HOST" .1.3.6.1.4.1.2636.3.35.1.1.1.9.1="JDM to JDM Connection Lost" .1.3.6.1.6.3.1.1.4.3.0.0=”” } }
当 或
cb1
链路启动时cb0
,将发送 JDM 到 JDM 连接启动JDM_JDM_LINK_UP
陷阱,并且两台服务器上的 JDM 都能够再次通信。请参阅以下示例:{ SNMPv2c C=host { V2Trap(292) R=998879760 .1.3.6.1.2.1.1.3.0=42762230 .1.3.6.1.6.3.1.1.4.1.0=.1.3.6.1.4.1.2636.4.12.0.1 .1.3.6.1.4.1.2636.3.35.1.1.1.2.1="JDM_JDM_LINK_UP" .1.3.6.1.4.1.2636.3.35.1.1.1.3.1="" .1.3.6.1.4.1.2636.3.35.1.1.1.4.1=5 .1.3.6.1.4.1.2636.3.35.1.1.1.5.1=24 .1.3.6.1.4.1.2636.3.35.1.1.1.6.1=0 .1.3.6.1.4.1.2636.3.35.1.1.1.7.1="jdmmon" .1.3.6.1.4.1.2636.3.35.1.1.1.8.1="JDM-HOST" .1.3.6.1.4.1.2636.3.35.1.1.1.9.1="JDM to JDM Connection Up" .1.3.6.1.6.3.1.1.4.3.0.0="" } }
VM(GNF) up/down—
libvirtGuestNotif
通知。对于 GNF 启动/关闭事件,将生成标准
libvirtGuestNotif
通知。有关libvirtMIB
通知详细信息,请参阅此 网页。另请参阅以下示例:HOST [UDP: [127.0.0.1]:53568->[127.0.0.1]]: Trap , DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (636682) 1:46:06.82, SNMPv2-MIB::snmpTrapOID.0 = OID: LIBVIRT-MIB::libvirtGuestNotif, LIBVIRT-MIB::libvirtGuestName.0 = STRING: "gnf1", LIBVIRT-MIB::libvirtGuestUUID.1 = STRING: 7ad4bc2a-16db-d8c0-1f5a-6cb777e17cd8, LIBVIRT-MIB::libvirtGuestState.2 = INTEGER: running(1), LIBVIRT-MIB::libvirtGuestRowStatus.3 = INTEGER: active(1)
SNMP 陷阱被发送到目标 NMS 服务器。要在JDM中配置目标网管服务器的详细信息,请参见以下示例:
[编辑]
root@jdm#show snmp | display set
root@jdm#set snmp name name
root@jdm#set snmp description description
root@jdm#set snmp location location
root@jdm#set snmp contact user's email
root@jdm#set snmp trap-group tg-1 targets target ip address1
root@jdm#set snmp trap-group tg-1 targets target ip address2
JDM 不会将任何配置写入主机 snmp 配置文件 (/etc/snmp/snmpd.conf)。因此,JDM 安装和后续配置不会对主机 SNMP 产生任何影响。JDM 中的 SNMP 配置 CLI 命令仅用于配置 JDM 的 snmpd.conf 文件,该文件存在于容器中。要生成 linkUp/Down 陷阱,必须手动将配置(如以下示例所示)包含在主机服务器的 snmpd.conf 文件 (/etc/snmp/snmpd.conf) 中:
createUser trapUser iquerySecName trapUser rouser trapUser defaultMonitors yes notificationEvent linkUpTrap linkUp ifIndex ifAdminStatus ifOperStatus ifDescr notificationEvent linkDownTrap linkDown ifIndex ifAdminStatus ifOperStatus ifDescr monitor -r 10 -e linkUpTrap "Generate linkUp" ifOperStatus != 2 monitor -r 10 -e linkDownTrap "Generate linkDown" ifOperStatus == 2 trap2sink <NMS-IP> host
在上述示例中,将 <NMS-IP> 替换为网络管理站 (NMS) 的 IP 地址。
BSYS 和 GNF 的机箱配置层次结构
在 Junos 节点切片中,BSYS 拥有路由器的所有物理组件,包括线卡和交换矩阵,而 GNF 在其各自的线卡上维护转发状态。根据这种责任划分,层次结构下的 chassis
Junos CLI 配置(如果有)应在 BSYS 或 GNF 上应用,如下所示:
配置层次结构下的
chassis
物理级参数应在 BSYS 上应用。例如,用于在 FPC 上处理物理错误的配置是物理级参数,因此应在 BSYS 上应用。At BSYS Junos CLI: [edit] user@router#
set chassis fpc fpc slot error major threshold threshold value action alarm
配置层次结构下的
chassis
逻辑或功能级参数应应用于与 FPC 关联的 GNF。例如,每个线卡的最大队列数配置是一个逻辑级参数,因此应在 GNF 上应用。At GNF Junos CLI: [edit] user@router#
set chassis fpc fpc slot max-queues value
作为例外,配置层次结构下的
chassis
以下两个参数应同时应用于 BSYS 和 GNF:At both BSYS and GNF CLI: [edit] user@router#
set chassis network-services network services mode
user@router#set chassis fpc fpc slot flexible-queueing-mode
配置子线卡并将其分配给 GNF
有关子线卡的概述,请参阅 子线卡概述。
-
此功能适用于基于外部服务器的 Junos 节点切片设置中使用的 MX2010 和 MX2020 路由器上的 MPC11E 线卡(型号:MX2K-MPC11E)。
-
确保所有 GNF 和 BSYS 的每个路由引擎都运行 Junos OS 21.2R1 或更高版本。
要将 MPC11E 进一步划分为子线卡 (SLC),必须在 BSYS 中的层次结构下set chassis network-slices guest-network-functions gnf
使用 fpc-slice
CLI 选项。
在提交配置之前,必须配置线卡支持的所有 SLC,并将所有必需的资源(如核心、DRAM 和数据包转发引擎)分配给 SLC。一个 MPC11E 线卡支持两个 SLC。
GNF 支持以下全线卡和 SLC 组合:
-
GNF 与 MPC11E SLC
-
GNF 与 MPC11E SLC 和 MPC9
-
GNF 与 MPC11E SLC 和 MPC11E
-
GNF with MPC11E SLC、MPC9、MPC11E
要配置 SLC 并将其分配给 GNF,请使用以下步骤:
-
您必须一次为所有 SLC 配置以下所有 CLI 语句(如以下步骤所示)。以后对此配置的任何修改都会导致整个线卡重新启动。
- 如果配置任何不正确的值(例如,不受支持的数据包转发引擎范围、CPU 内核或 DRAM 值),配置提交将失败,并显示相应的消息来指示错误。
参见
Junos 节点切片的示例配置
本节提供 Junos 节点切片的示例配置。
JDM 配置示例(外部服务器模型)
root@test-jdm-server0> show configuration
groups {
server0 {
system {
host-name test-jdm-server0;
}
server {
interfaces {
cb0 p3p1;
cb1 p3p2;
jdm-management em2;
vnf-management em3;
}
}
interfaces {
jmgmt0 {
unit 0 {
family inet {
address 10.216.105.112/21;
}
}
}
}
routing-options {
static {
route {
0.0.0.0/0 next-hop 10.216.111.254;
}
}
}
}
server1 {
system {
host-name test-jdm-server1;
}
server {
interfaces {
cb0 p3p1;
cb1 p3p2;
jdm-management em2;
vnf-management em3;
}
}
interfaces {
jmgmt0 {
unit 0 {
family inet {
address 10.216.105.113/21;
}
}
}
routing-options {
static {
route {
0.0.0.0/0 next-hop 10.216.111.254;
}
}
}
}
}
}
apply-groups [ server0 server1 ];
system {
root-authentication {
encrypted-password "..."; ## SECRET-DATA
}
services {
ssh;
netconf {
ssh;
rfc-compliant;
}
}
}
virtual-network-functions {
test-gnf {
id 1;
chassis-type mx2020;
resource-template 2core-16g;
base-config /var/jdm-usr/gnf-config/test-gnf.conf;
}
}
JDM 配置示例(机箱内型号)
root@test-jdm-server0> show configuration
groups {
server0 {
system {
host-name test-jdm-server0;
}
interfaces {
jmgmt0 {
unit 0 {
family inet {
address 10.216.105.112/21;
}
}
}
}
routing-options {
static {
route {
0.0.0.0/0 next-hop 10.216.111.254;
}
}
}
}
server1 {
system {
host-name test-jdm-server1;
}
interfaces {
jmgmt0 {
unit 0 {
family inet {
address 10.216.105.113/21;
}
}
}
routing-options {
static {
route {
0.0.0.0/0 next-hop 10.216.111.254;
}
}
}
}
}
}
apply-groups [ server0 server1 ];
system {
root-authentication {
encrypted-password "..."; ## SECRET-DATA
}
services {
ssh;
netconf {
ssh;
rfc-compliant;
}
}
}
virtual-network-functions {
test-gnf {
id 1;
resource-template 2core-16g;
base-config /var/jdm-usr/gnf-config/test-gnf.conf;
}
}
具有抽象交换矩阵接口的 BSYS 配置示例
user@router> show configuration chassis
network-slices {
guest-network-functions {
gnf 1 {
af2 {
peer-gnf id 2 af1;
}
af4 {
peer-gnf id 4 af1;
}
description gnf-a;
fpcs [ 0 19];
}
gnf 2 {
af1 {
peer-gnf id 1 af2;
}
af4 {
peer-gnf id 4 af2;
}
description gnf-b;
fpcs [ 1 6 ];
}
gnf 4 {
af1 {
peer-gnf id 1 af4;
}
af2 {
peer-gnf id 2 af4;
}
description gnf-d;
fpcs [ 3 4 ];
}
}
}
具有服务等级的 GNF 抽象结构配置示例
假设 GNF1 和 GNF2 之间有一个抽象的结构 (af
) 接口。以下示例配置说明了在流量从 GNF1 到 GNF2 的情况下,如何在 GNF1 的接口上应用重写 af
并在 GNF2 上的接口上 af
应用分类器:
GNF1 Configuration
interfaces { xe-4/0/0 { unit 0 { family inet { address 22.1.2.2/24; } } } af2 { unit 0 { family inet { address 32.1.2.1/24; } } } } class-of-service { classifiers { dscp testdscp { forwarding-class assured-forwarding { loss-priority low code-points [ 001001 000000 ]; } } } interfaces { xe-4/0/0 { unit 0 { classifiers { dscp testdscp; } } classifiers { dscp testdscp; } } af1 { unit 0 { rewrite-rules { dscp testdscp; /*Rewrite rule applied on egress AF interface on GNF1.*/ } } } } rewrite-rules { dscp testdscp { forwarding-class assured-forwarding { loss-priority low code-point 001001; } } } }
GNF2 Configuration
interfaces { xe-3/0/0:0 { unit 0 { family inet { address 42.1.2.1/24; } } } af1 { unit 0 { family inet { address 32.1.2.2/24; } } } } class-of-service { classifiers { dscp testdscp { forwarding-class network-control { loss-priority low code-points 001001; } } } interfaces { af1 { unit 0 { classifiers { dscp testdscp; /*Classifier applied on AF at ingress of GNF2*/ } } } } }
GNF 上抽象结构接口状态的示例输出
user@router-gnf-b> show interfaces af9 Physical interface: af9, Enabled, Physical link is Up Interface index: 209, SNMP ifIndex: 527 Type: Ethernet, Link-level type: Ethernet, MTU: 1514, Speed: 370000mbps Device flags : Present Running Interface flags: Internal: 0x4000 Link type : Full-Duplex Link flags : None Current address: 00:90:69:2b:00:4c, Hardware address: 00:90:69:2b:00:4c Last flapped : 2018-09-12 01:44:01 PDT (00:01:02 ago) Input rate : 0 bps (0 pps) Output rate : 0 bps (0 pps) Bandwidth : 370 Gbps Peer GNF id : 9 Peer GNF Forwarding element(FE) view : FPC slot:FE num FE Bandwidth(Gbps) Status Transmit Packets Transmit Bytes 6:0 130 Up 0 0 12:0 120 Up 0 0 12:1 120 Up 0 0 Residual Transmit Statistics : Packets : 0 Bytes : 0 Fabric Queue Statistics : FPC slot:FE num High priority(pkts) Low priority(pkts) 6:0 0 0 12:0 0 0 12:1 0 0 FPC slot:FE num High priority(bytes) Low priority(bytes) 6:0 0 0 12:0 0 0 12:1 0 0 Residual Queue Statistics : High priority(pkts) Low priority(pkts) 0 0 High priority(bytes) Low priority(bytes) 0 0 Logical interface af9.0 (Index 332) (SNMP ifIndex 528) Flags: Up SNMP-Traps 0x4004000 Encapsulation: ENET2 Input packets : 0 Output packets: 13 Protocol inet, MTU: 1500
子线卡配置示例
本节提供子线卡 (SLC) 的示例配置。
对称子线卡配置文件的示例配置
在对称配置文件中,只能使用一种资源组合。
以下是在对称子线卡配置文件中对 FPC 1 (MPC11E) 进行切片的示例配置:
set chassis network-slices guest-network-functions gnf 1 fpc-slice fpc 1 slc 1 pfe-id-list 0-3
set chassis network-slices guest-network-functions gnf 1 fpc-slice fpc 1 slc 1 cores 4
set chassis network-slices guest-network-functions gnf 1 fpc-slice fpc 1 slc 1 dram 13
set chassis network-slices guest-network-functions gnf 2 fpc-slice fpc 1 slc 2 pfe-id-list 4-7
set chassis network-slices guest-network-functions gnf 2 fpc-slice fpc 1 slc 2 cores 4
set chassis network-slices guest-network-functions gnf 2 fpc-slice fpc 1 slc 2 dram 13
此配置如下所示:
root@bsys> show chassis network-slices guest-network-functions
gnf 1{
fpc-slice {
fpc 1{
slc 1{
pfe-id-list 0-3;
cores 4;
dram 13;
}
}
}
}
gnf 2{
fpc-slice {
fpc 1{
slc 2{
pfe-id-list 4-7;
cores 4;
dram 13;
}
}
}
}
非对称子线卡配置文件的配置示例
在非对称配置文件中,可以使用两种配置,具体取决于 PFE 或数据包转发引擎 [0-7] 在两个 SLC 之间的分配方式。在一个示例配置中,前两个数据包转发引擎 [0-1] 分配给一个 SLC,其余数据包转发引擎 [2-7] 分配给另一个 SLC。在另一个示例配置中,最后两个数据包转发引擎 [6-7] 分配给一个 SLC,其余数据包转发引擎 [0-5] 分配给另一个 SLC。
下面的示例配置是 [0-1 2-7] 拆分的示例。
在下面的示例中,SLC 的 CPU 核心和 DRAM 分配与“非对称配置文件”资源组合下的一列匹配,如子线卡概述页面上的 MPC11E 支持的 SLC 配置文件表所示。
set chassis network-slices guest-network-functions gnf 1 fpc-slice fpc 1 slc 1 pfe-id-list 0-1
set chassis network-slices guest-network-functions gnf 1 fpc-slice fpc 1 slc 1 cores 4
set chassis network-slices guest-network-functions gnf 1 fpc-slice fpc 1 slc 1 dram 17
set chassis network-slices guest-network-functions gnf 2 fpc-slice fpc 1 slc 2 pfe-id-list 2-7
set chassis network-slices guest-network-functions gnf 2 fpc-slice fpc 1 slc 2 cores 4
set chassis network-slices guest-network-functions gnf 2 fpc-slice fpc 1 slc 2 dram 9
此配置如下所示:
root@bsys> show chassis network-slices guest-network-functions
gnf 1{
fpc-slice {
fpc 1{
slc 1{
pfe-id-list 0-1;
cores 4;
dram 17;
}
}
}
}
gnf 2{
fpc-slice {
fpc 1{
slc 2{
pfe-id-list 2-7;
cores 4;
dram 9;
}
}
}
}