帮助我们改善您的体验。

让我们了解您的想法。

您是否能抽出两分钟的时间完成一份问卷调查?

close
keyboard_arrow_left
如何配置 NFX350
Table of Contents Expand all
list Table of Contents

机器翻译对您有帮助吗?

starstarstarstarstar
Go to English page
免责声明:

我们将使用第三方机器翻译软件翻译本页面。瞻博网络虽已做出相当大的努力提供高质量译文,但无法保证其准确性。如果对译文信息的准确性有任何疑问,请参阅英文版本. 可下载的 PDF 仅提供英文版.

在 NFX350 设备上配置 VNF

date_range 20-Feb-24

NFX350 设备使您能够从 Junos 控制平面 (JCP) 实例化和管理虚拟化网络功能 (VNF)。JCP 支持创建和管理第三方 VNF。

加载 VNF 映像

要配置 VNF,您必须登录到 JCP:

content_copy zoom_out_map
user@host:~ # cli
user@host> 

要从远程位置在设备上加载 VNF 映像,可以使用 file-copy 命令或使用命令从 USB usb-pass-through 复制映像。

注意:

如果您最多使用两个 VNF,则可以将 VNF 映像保存在 / var/public 目录中。如果您使用两个以上的 VNF,请将文件保存在外部 SSD 上。如果您将外部 SSD 用于 VNF,请确保初始化 SSD 并将其添加到设备。有关更多信息,请参阅 在 NFX350 设备上配置固态磁盘

content_copy zoom_out_map
user@host>  file copy source-address /var/public 

例如:

content_copy zoom_out_map
user@host>  file copy scp://192.0.2.0//tftpboot/centos.img /var/public 

或者,也可以使用 NETCONF 命令 加载 file-putVNF 映像。

要从 USB 复制 VNF 映像,请参阅 支持在 NFX 系列设备上从 USB 传输文件

准备引导程序配置

您可以通过连接 CD-ROM、USB 存储设备或包含自举配置 ISO 文件的配置驱动器来引导 VNF。

有关创建 ISO 文件的示例,请参阅 创建 vSRX 引导 ISO 映像中的过程。该过程可能因用于创建 ISO 文件的操作系统(例如 Linux、Ubuntu)而异。

引导配置文件必须包含一个初始配置,该配置允许从外部控制器访问 VNF,并接受来自外部控制器的 SSH、HTTP 或 HTTPS 连接以进行进一步的运行时配置。

注意:
  • 系统会将引导程序配置 ISO 文件保存在 / var/public 文件夹中。仅当文件夹中的可用空间是文件中内容总大小的两倍以上时,才会保存文件。如果文件夹中的可用空间不足,则在提交配置时会显示错误消息。

  • 重新引导系统时,系统会生成一个新的自举配置 ISO 文件,并将现有 ISO 文件替换为 VNF 上的新 ISO 文件。

为 VNF 分配 CPU

表 1 列出了可用于 NFX350 型号的 VNF 使用的 CPU。

表 1:可用于 VNF 的 CPU

模型

可用于 VNF 的 CPU

吞吐量模式

混合模式

计算模式

自定义模式

弹性模式

性能模式

NFX350-S1

0

8

10

11 6

NFX350-S2

0

10

14

19 10

NFX350-S3

0

14

20

27 12
注意:

的资源 flex 分配和 perf 自定义模式基于默认 Junos 配置中提供的模板。

注意:

更改设备性能模式时,建议检查 VNF 的 CPU 可用性。

要检查 CPU 可用性及其状态,请执行以下操作:

content_copy zoom_out_map
user@host> show system visibility cpu
CPU Statistics (Time in sec)
-------------------------------------------------------------------------------
CPU Id User Time System Time Idle Time Nice Time IOWait Time Intr. Service Time
------ --------- ----------- --------- --------- ----------- ------------------
0      7762      1475        60539     0         84          0
1      191       511         70218     0         10          0
2      102       32          70841     0         12          0
3      0         0           70999     0         0           0
4      0         0           70999     0         0           0
5      0         0           70999     0         0           0
6      70949     0           50        0         0           0
7      9005      532         59602     0         0           0
8      23        7           70966     0         0           0
9      21        7           70969     0         0           0
10     20        6           70969     0         0           0
11     18        6           70970     0         0           0

CPU Usages
----------------
CPU Id CPU Usage
------ ---------
0      17.899999999999999
1      0.0
2      0.0
3      0.0
4      0.0
5      0.0
6      100.0
7      15.199999999999999
8      0.0
9      0.0
10     0.0
11     0.0

CPU Pinning Information
------------------------------------
Virtual Machine             vCPU CPU
--------------------------- ---- ---
vjunos0                     0    0


System Component                CPUs
------------------------------- --------
ovs-vswitchd                    0, 6
content_copy zoom_out_map
user@host> show vmhost mode
Starting network management services: snmpd libvirtMib_subagent.
Synchronizing UEFI key-store:
Failed to get revocation list: 2
Juniper Dev keys are not revoked. Doing nothing
cp: cannot stat '/var/platform/lte_vm_xml_params': No such file or directory
rm: cannot remove '/lib/udev/rules.d/lte_usb.rules': No such file or directory

Mode:
--------
Current Mode: compute

CPU Allocations:
Name                                 Configured                               Used
----------------------------------------------------------------------------------------------------------------------
Junos Control Plane                  8                                        3,8
Juniper Device Manager               8                                        8
LTE                                  8                                        -
NFV Backplane Control Path           8                                        8
NFV Backplane Data Path              1                                        1
Layer 2 Control Path                 -                                        -
Layer 2 Data Path                    -                                        -
Layer 3 Control Path                 0                                        0
Layer 3 Data Path                    2                                        2
CPUs available for VNFs              3,4,5,6,7,11,12,13,14,15                 -
CPUs turned off                      9,10                                     -

Memory Allocations:
Name                                 Configured                               Used
----------------------------------------------------------------------------------------------------------------------
Junos Control Plane (mB)             2048                                     2011
NFV Backplane 1G hugepages           4                                        8
NFV Backplane 2M hugepages           -                                        0
Layer 2 1G hugepages                 -                                        -
Layer 2 2M hugepages                 -                                        -
Layer 3 1G hugepages                 4                                        4
Layer 3 2M hugepages                 5633                                     5377

CPUs available for VNFs输出消息中的部分显示可用于板载 VNF 的 CPU。

注意:

vjunos0 是系统 VNF,您无法修改 vjunos0 的 CPU 分配。

要指定 VNF 所需的虚拟 CPU 数量,请执行以下操作:

  1. 指定 VNF 所需的 CPU 数量:
    content_copy zoom_out_map
    user@host# set virtual-network-functions vnf-name virtual-cpu count number
  2. 将虚拟 CPU 连接到物理 CPU:
    content_copy zoom_out_map
    user@host# set virtual-network-functions vnf-name virtual-cpu vcpu-number physical-cpu pcpu-number
  3. 提交配置:
    content_copy zoom_out_map
    user@host# commit

物理 CPU 编号可以是数字,也可以是数字范围。默认情况下,VNF 会分配一个未连接到任何物理 CPU 的虚拟 CPU。

注意:

VNF 运行时,您无法更改 VNF 的 CPU 配置。您必须重新启动 VNF 才能使更改生效。

从 Junos OS 22.1 R1 版开始,您可以使用以下命令将模拟器固定到特定的物理 CPU:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name emulator physical-cpu cpu-range

不能将 CPU 0 或脱机 CPU 用于模拟器固定。如果未将模拟器固定到特定的物理 CPU,QEMU 会自动将其固定到虚拟 CPU。对模拟器固定的更改会立即在正在运行的 VNF 上生效。

要为 VNF CPU 启用硬件虚拟化或硬件加速,请执行以下操作:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name virtual-cpu features hardware-virtualization

为 VNF 分配内存

默认情况下,会为 VNF 分配一定数量的内存。 表 2 列出了 NFX350 型号的 VNF 使用的可能内存可用性。

表 2:VNF 使用的内存可用性

模型

可用内存总量

在计算、混合和吞吐量模式下使用 VNF 的巨大页面可用性

自定义模式下 VNF 使用的巨大页面可用性

弹性模式

性能模式

NFX350-S1

32 千兆字节

7 个 1G 巨页

24 个 1G 大页面

22 个 1G 大页面

NFX350-S2

64 GB

23 个 1G 巨页

50 个 1G 巨页

49 个 1G 巨页

NFX350-S3

128 千兆字节

62 个 1G 巨页

110 个 1G 大页面

108 个 1G 大页面

注意:

的资源 flex 分配和 perf 自定义模式基于默认 Junos 配置中提供的模板。

要检查可用内存,请执行以下操作:

content_copy zoom_out_map
user@host> show system visibility memory
Memory Information
------------------

Virtual Memory:
---------------
Total       (KiB): 15914364
Used        (KiB): 13179424
Available   (KiB): 3087076
Free        (KiB): 2734940
Percent Used     : 80.6

Huge Pages:
------------
Total 1GiB Huge Pages:      7
Free 1GiB Huge Pages:       5
Configured 1GiB Huge Pages: 5
Total 2MiB Huge Pages:      1376
Free 2MiB Huge Pages:       1
Configured 2MiB Huge Pages: 0

Hugepages Usage:
----------------------------------------------------------------------------------------------------------
Name                              Type                               Used 1G Hugepages  Used 2M Hugepages
--------------------------------- ---------------------------------- ------------------ ------------------
srxpfe                            other process                      1                  1375
ovs-vswitchd                      other process                      2                  0
注意:

vjunos0 是系统 VNF,您无法修改 vjunos0 的内存分配。

要指定 VNF 可以使用的最大主内存,请执行以下操作:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name memory size size
注意:

VNF 运行时,您无法更改 VNF 的内存配置。您必须重新启动 VNF 才能使更改生效。

为 VNF 配置接口和 VLAN

您可以配置 VNF 接口,将 VNF 接口映射到虚拟功能,并将接口连接到物理网卡端口、管理接口或 VLAN,为其分配 VLAN ID,并在其上启用信任模式。

在 Junos OS 21.3R1、21.2R2、21.2R1、21.1R2 和 20.4R3 版本之前,配置 SR-IOV VNF 接口和分配 VLAN ID 的步骤如下:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name interfaces vnf-interface-name mapping interface physical-interface-name virtual-function vlan-id vlan-id

从 Junos OS 版本 21.3R1、21.2R2、21.2R1、21.1R2 和 20.4R3 开始,配置 SR-IOV VNF 接口、分配 VLAN ID 和启用信任模式的步骤如下:

要将 VNF 接口映射到虚拟功能:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name interfaces vnf-interface-name mapping interface physical-interface-name

要使用 SR-IOV 虚拟功能将 VNF 接口连接到物理网卡端口并分配 VLAN ID,请执行以下操作:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name interfaces vnf-interface-name mapping interface virtual-function vlan-id vlan-id

vlan-id 是端口的 VLAN ID,并且是可选值。

要启用信任模式:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name interfaces vnf-interface-name mapping interface virtual-function trust
注意:
  • Junos OS 21.3R1、21.2R2、21.2R1、21.1R2 和 20.4R3 版的 NFX 系列设备支持信任模式。

  • 如果在 VNF SR-IOV 接口上启用信任模式,则 VNF 接口将进入混合模式。

禁用欺骗检查

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name interfaces interface-name mapping interface virtual-function disable-spoof-check

要将 VNF 接口连接到 VLAN:

  • 创建 VLAN:

    content_copy zoom_out_map
    user@host# set vmhost vlan vlan-name
  • 将 VNF 接口连接到 VLAN:

    content_copy zoom_out_map
    user@host# set virtual-network-functions vnf-name interfaces interface-name mapping vlan members list-of-vlans [mode trunk|access]

VNF 接口可以映射到一个或多个物理接口。您可以通过配置虚拟端口对等 (VPP) 功能来启用此功能。您可以配置 VNF 的 OVS 接口与一个或多个前面板接口之间的映射。如果所有映射的物理接口都处于非活动状态,则 VNF 接口将变为非活动状态。即使至少有一个映射的物理接口处于活动状态,VNF 接口也会变为活动状态。

注意:
  • 如果 VNF 接口处于非活动状态,则映射的物理接口不会变为非活动状态。

  • 在将不支持信任模式的软件映像升级到支持信任模式的映像之前,建议从配置中删除所有 VNF 接口到虚拟功能的映射。

  • 在将支持信任模式的软件映像降级为不支持信任模式的映像之前,必须从配置中删除所有 VNF 接口到虚拟功能的映射。否则,设备在降级后进入 失忆 状态。

VNF 的接口是 OVS 端口,此映射在配置中定义。如果映射规则可以在触发操作之前查看多个物理端口,则配置 VPP 功能允许您管理多个冗余物理链路。

您可以配置 VNF 虚拟接口与 JCP 物理接口(ge-0/0/ 和 xe-0/0/xx之间的映射。一个虚拟接口可以映射到一个或多个物理接口。VNF 虚拟接口可以映射到的物理接口数量没有限制。您可以将一个 VNF 虚拟接口映射到所有物理接口,也可以将多个 VNF 接口映射到单个物理接口。

要配置 VPP,请执行以下操作:

content_copy zoom_out_map
root@host# set virtual-network-functions vnf-name interfaces interface-name mapping peer-interfaces physical-interface-name

例如:

content_copy zoom_out_map
root@host# set virtual-network-functions centos1 interfaces eth2 mapping peer-interfaces ge-0/0/6

要查看对等接口的映射,请运行 show system visibility vnf vnf-name 命令。

注意:
  • 连接到 VNF 的接口在 VNF 重新启动后保持不变。

  • 如果 VNF 支持热插拔,则可以在 VNF 运行时连接接口。否则,您必须添加接口,然后重新启动 VNF。

  • VNF 运行时,您无法更改 VNF 接口的映射。

注意:

您可以使用 CLI 选项阻止 VNF 接口发送或接收流量 deny-forwarding

如果在属于交叉连接的接口上启用了该 deny-forwarding 选项,则交叉连接状态将关闭并丢弃所有流量。

content_copy zoom_out_map
set virtual-network-options vnf-name interface interface-name forwarding-options deny-forwarding

要为 VNF 接口指定目标 PCI 地址,请执行以下操作:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name interfaces interface-name pci-address target-pci-address

您可以使用目标 PCI 地址重命名或重组 VNF 中的接口。

例如,基于 Linux 的 VNF 可以使用 VNF 中的 udev 规则,根据 PCI 地址命名接口。

注意:
  • 目标 PCI 地址字符串应采用以下格式:

    0000:00:<slot:>:0,即 domain:bus:slot:function 的值。每个 VNF 接口的插槽值应不同。域、总线和函数的值应为零。

  • VNF 运行时,您无法更改 VNF 接口的目标 PCI 地址。

要删除 VNF 接口:

content_copy zoom_out_map
user@host# delete virtual-network-functions vnf-name interfaces interface-name
user@host# commit
注意:
  • 要删除 VNF 接口,必须停止该 VNF,删除该接口,然后重新启动该 VNF。

  • 附加或分离虚拟功能后,必须重新启动 VNF 才能使更改生效。

  • eth0 和 eth1 是为连接到内部网络和带外管理网络的默认 VNF 接口保留的。因此,可配置的 VNF 接口名称从 eth2 开始。

  • 在 VNF 中,接口名称可以不同,具体取决于客户机操作系统命名约定。在 JCP 中配置的 VNF 接口在 VNF 中的显示顺序可能不同。

  • 您必须使用目标 PCI 地址映射到在 JCP 中配置的 VNF 接口,并且必须相应地对其进行命名。

为 VNF 配置存储设备

NFX350 设备支持 VNF 的以下存储选项:

  • 光盘

  • 磁盘

  • Usb

要添加虚拟 CD 或更新虚拟 CD 的源文件,请执行以下操作:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name storage device-name type cdrom source file file-name

您可以采用 hdx、sd 或 vdxx 格式指定有效的设备名称,例如 hdb、sdc、vdb 等。

要添加虚拟 USB 存储设备:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name storage device-name type usb source file file-name

要附加其他硬盘:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name storage device-name type disk [bus-type virtio | ide] [file-type raw | qcow2] source file file-name

要从 VNF 中删除虚拟 CD、USB 存储设备或硬盘:

content_copy zoom_out_map
user@host# delete virtual-network-functions vnf-name storage device-name
注意:
  • 从 VNF 附加或分离 CD 后,必须重新启动设备才能使更改生效。如果设备正在 VNF 中使用,则 CD 分离操作将失败。

  • VNF 支持一张虚拟 CD、一个虚拟 USB 存储设备和多个虚拟硬盘。

  • 您可以在 VNF 运行时更新 CD 或 USB 存储设备中的源文件。

  • 必须将源文件保存在 / var/public 目录中,并且该文件必须具有所有用户的读写权限。

实例化 VNF

您可以通过配置 VNF 名称和指定映像路径来实例化 VNF。

使用映像实例化 VNF 时,默认情况下会添加两个 VNF 接口。管理和内部网络需要这些接口。

注意:

仅支持 QCOW2、IMG 和 RAW 图像类型。

要使用图像实例化 VNF:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name image file-path
user@host# set virtual-network-functions vnf-name image image-type image-type
user@host# commit
注意:

配置 VNF 时,请勿使用 vnfn 格式的 VNF 名称,例如 vnf1、vnf2 等。包含此类名称的配置无法提交。

(可选)要为 VNF 指定 UUID,请执行以下操作:

content_copy zoom_out_map
user@host# set virtual-network-functions vnf-name [uuid vnf-uuid]

uuid 是一个可选参数。我们建议您允许系统为 VNF 分配 UUID。

注意:

保存并提交配置后,您无法更改 VNF 的映像配置。要更改 VNF 的映像,您必须删除该 VNF,然后重新创建 VNF。

验证 VNF 实例化

要验证 VNF 是否已成功实例化,请执行以下操作:

content_copy zoom_out_map
user@host> show virtual-network-functions 
ID       Name                                              State      Liveliness
--------------------------------------------------------------------------------
1        vjunos0                                           Running    alive
2        centos1                                           Running    alive
3        centos2                                           Running    alive

VNF 的 “活动性 ”字段中的输出指示是否可通过内部管理网络访问 VNF 的 IP 地址。实时网桥的默认 IP 地址为 192.0.2.1/24。请注意,此 IP 地址是设备内部的,用于 VNF 管理。

external-footer-nav