Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

在 Contrail 上安装 vMX

阅读本主题,了解如何在瞻博网络 Contrail 环境中安装虚拟 MX 路由器。

在 Contrail 上安装 vMX

准备 OpenStack 环境后,我们需要为 VCP 和 VFP 虚拟机创建 nova 功能和一览图像。脚本根据启动配置文件中提供的信息创建功能和映像。

设置 vMX 配置文件

配置 vMX 所需的参数在启动配置文件 (vmx.conf) 中定义。

要设置配置文件:

  1. 从 vMX 下载软件页面下载 vMX KVM 软件包并解压软件包。

    tar xvf package-name

  2. 将目录更改为文件的位置。

    cd package-location/openstack/scripts

  3. 使用文本编辑器编辑 vmx.conf 文本文件,为单个 vMX 实例创建功能。

    根据您的要求,确保在 vMX 配置文件中正确设置了以下参数:

    • re-flavor-name

    • pfe-flavor-name

    • vcpus

    • memory-mb

    vMX 启动配置文件示例

    以下是适用于 OpenStack 的 vMX 启动配置文件示例:

指定 vMX 配置文件参数

配置 vMX 所需的参数在启动配置文件 (vmx.conf) 中定义。启动配置文件会生成一个用于创建功能的文件。要使用不同的功能或memory-mb参数创建新功能vcpus,必须先更改相应的re-flavor-namepfe-flavor-name参数,然后才能创建新功能。

要自定义配置,请执行以下操作:

配置主机

要配置主机,请导航至 HOST 并指定以下参数:

  • virtualization-type—操作模式;必须是 openstack

  • cpu-pinning- 指定是否将 VCP 和 VFP 固定到主机上的 vCPU。默认情况下, cpu-pinning 处于开启状态,推荐使用此设置。

  • compute-(可选)以逗号分隔的列表中运行 vMX 实例的计算节点的名称。如果指定了参数,则它必须是有效的计算节点。如果指定了该参数,则仅会以特定方式启动的 vMX 实例在指定的计算节点上运行。

    如果未指定参数,命令输出 nova hypervisor-list 将提供运行 vMX 实例的计算节点列表。

配置 VCP 虚拟机

要配置 VCP VM,必须提供功能名称。

注意:

我们建议为参数提供唯一值, re-flavor-name 因为 OpenStack 可以创建多个同名条目。

要配置 VCP VM,请导航至 CONTROL_PLANE 并指定以下参数:

  • re-flavor-name-nova 风格的名称。

  • vcpus—VCP 的 vCPU 数;最小为 2。

  • memory-mb-VCP 的内存量;最小为 4 GB。

配置 VFP 虚拟机

要配置 VFP 虚拟机,必须提供功能名称。根据您的要求,您可能需要更改 vCPU 的内存和数量。请参阅 硬件要求 ,了解最低硬件要求。

要配置 VFP VM,请导航至 FORWARDING_PLANE 并指定以下参数:

  • pfe-flavor-name-nova 风格的名称。

  • memory-mb-VFP 的内存量;最小为 12 GB(性能模式)和 4 GB(精简模式)。

  • vcpus—VFP 的 vCPU 数;最小为 7(性能模式)和 3(精简模式)。

    注意:

    如果指定的 vCPU 少于 7 个,VFP 会自动切换到精简模式。

创建 OpenStack 功能

要创建 VCP 和 VFP 功能,必须在 vMX 启动配置文件 (vmx.conf) 上执行脚本。

要创建 OpenStack 功能:

  1. 通过 vmx_osp_create_flavor.py 启动配置文件运行以生成 vmx_osp_flavors.sh 可创建功能的文件。

    ./vmx_osp_create_flavor.py vmx.conf

  2. 执行以 vmx_osp_flavors.sh 创建功能。

    sh vmx_osp_flavors.sh

注意:

如果您在 DPDK 模式下的 vRouter 上运行,则必须使用 nova flavor-key re-flavor-name set hw:mem_page_size=2048 命令为 VCP 功能启用大页面。

安装 vMX 映像

要为 VCP 和 VFP 安装 vMX 软件映像,可执行 vmx_osp_images.sh 脚本。该脚本以 qcow2 格式添加 VCP 映像,以 vmdk 格式添加 VFP 文件。

要安装 VCP 和 VFP 映像:

  1. 从 vMX 页面下载 vMX KVM 软件包并解压软件包。

    tar xvf package-name

  2. 验证未压缩的 vMX 软件包中的软件映像的位置。请参阅 vMX 软件包内容

    ls package-location/images

  3. 将目录更改为 vMX OpenStack 脚本文件的位置。

    cd package-location/openstack/scripts

  4. vmx_osp_images.sh运行脚本以安装概览图像。

    sh vmx_osp_images.sh vcp-image-name vcp-image-location vfp-image-name vfp-image-location

    注意:

    您必须按此顺序指定参数。

    • vcp-image-name-概览图像的名称。

    • vcp-image-location-用于启动 VCP 的 junos-vmx-x86-64*.qcow2 文件的绝对路径。

    • vfp-image-name-概览图像的名称。

    • vfp-image-location-用于启动 VFP 的 vFPC-*.img 文件的绝对路径。

例如,此命令将 VCP 映像安装为 /var/tmp/junos-vmx-x86-64-17.3R1.8.qcow2 文件的重新测试,并将 VFP 映像安装为 /var/tmp/vFPC-20170817.img 文件中的 fpc-test

sh vmx_osp_images.sh re-test /var/tmp/junos-vmx-x86-64-17.3R1.8.qcow2 fpc-test /var/tmp/vFPC-20170817.img

要查看概览图像,请使用 glance image-list 命令。

启动 vMX 实例

要启动 vMX 实例,请执行以下操作:

修改初始 Junos OS 配置

启动 vMX 实例时,将加载 脚本/openstack/vmx-templates/liberty/vmx_baseline.conf 中找到的 Junos OS 配置文件。如果需要更改此配置,请在此文件中进行更改,然后再启动 vMX。

注意:

如果您创建自己的 vmx_baseline.conf 文件或移动了文件,请确保 脚本/openstack/vmx-templates/liberty/re.yaml 引用正确的路径。

启动 vMX 实例

要创建和启动 vMX 实例,

  1. 在相应的环境文件中修改这些参数进行配置。从适用于 Contrail 4.0 的 Junos OS 17.4R1 版开始,请使用 v2 版本的 Heat 模板。
    • net_id1-用于 WAN 端口的现有 neutron 网络的网络 ID。 neutron net-list 使用命令显示网络 ID。

    • public_network-用于管理 (fxp0) 端口的现有 neutron 网络的网络 ID。 neutron net-list | grep public 使用命令显示网络 ID。

    • fpc_img- VFP 的概览图像名称;与 vfp-image-name 运行安装 vMX 映像的脚本时指定的参数相同。

    • fpc_flav-VFP 的新风格名称;与 pfe-flavor-name vMX 配置文件中指定的参数相同。

    • junos_flav-VCP 的新风格名称;与 re-flavor-name vMX 配置文件中指定的参数相同。

    • junos_img— VCP 的概览图像名称;与 vcp-image-name 运行安装 vMX 映像的脚本时指定的参数相同。

    • project_name- 任何项目名称。所有资源都将使用此名称作为前缀。

    • gateway_ip-网关 IP 地址。

  2. 使用 heat stack-create –f 1vmx_contrail.yaml –e 1vmx_contrail.env vmx-name 命令启动 vMX 实例。

    此示例配置使用一个 WAN 端口和一个 FPC 启动单个 vMX 实例。

  3. 验证是否已使用 heat stack-list | grep vmx-name 命令创建 vMX 实例。
  4. 验证命令中是否存在 nova-list VCP 和 VFP 虚拟机。
  5. 使用 nova get-vnc-console nova-id novnc 命令访问 VCP 虚拟机,其中 nova-id 是 WAN 网络上实例的 ID。
注意:

在使用 request system halt 命令重新启动主机服务器之前,必须关闭 vMX 实例。

谨慎:

部署支持 DPDK 的 vRouter 的 vMX 实例时,重新启动 vRouter 服务后,virtio 接口(int 接口)可能会关闭。

解决 方案:

  • 在 vMX 实例部署期间预先定义可调和的元数据。对新 tuanable 的支持从 Junos OS 19.4 版开始提供。

  • 在 RE yaml 文件或 FPC yaml 文件中添加元数据变量。示例:要更新 RE yaml 文件,请导航至 package_location/vmx/openstack/vmx-components/vms/re.yaml 并设置变量,如下所示:

    例子:

    在此示例中,锁定超时值设置为 10 秒。您可以设置 10 到 1000 秒范围内的值。

版本历史记录表
释放
描述
17.4R1
从适用于 Contrail 4.0 的 Junos OS 17.4R1 版开始,请使用 v2 版本的 Heat 模板。