你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

快速入门:为 Ubuntu 虚拟机 (VM) 设计网络服务设计 (NSD) 作为虚拟化网络功能 (VNF)

本快速入门介绍如何使用 az aosm Azure CLI 扩展创建和发布基本网络服务设计。

先决条件

需要一个具有活动订阅的 Azure 帐户。 如果没有 Azure 订阅,请在开始之前按照此处的说明开始免费创建帐户。

还假设你遵循快速入门:将 Ubuntu 虚拟机 (VM) 发布为虚拟网络功能 (VNF) 中的先决条件。

创建输入文件

创建用于发布网络服务设计的输入文件。 执行以下命令,以生成网络服务设计 (NSD) 的输入配置文件。

az aosm nsd generate-config

执行此命令后,会生成一个 input.json 文件。

注意

编辑 input.json 文件,将其替换为示例中显示的值。 将文件另存为 input-vnf-nsd.json

{
    "location": "uksouth",
    "publisher_name": "ubuntu-publisher",
    "publisher_resource_group_name": "ubuntu-publisher-rg",
    "acr_artifact_store_name": "ubuntu-acr",
    "network_functions": [
        {
            "name": "ubuntu-vm-nfdg",
            "version": "1.0.0",
            "publisher_offering_location": "uksouth",
            "type": "vnf",
            "multiple_instances": false,
            "publisher": "ubuntu-publisher",
            "publisher_resource_group": "ubuntu-publisher-rg"
        }
    ],
    "nsd_name": "ubuntu-nsdg",
    "nsd_version": "1.0.0",
    "nsdv_description": "Plain ubuntu VM"
}
变量 说明
publisher_name 要将定义发布到的发布服务器资源的名称。 如果它不存在,则创建它。
publisher_resource_group_name 发布服务器资源的资源组。 如果它不存在,则创建它。
acr_artifact_store_name ACR 项目存储资源的名称。 如果它不存在,则创建它。
location 创建资源时要使用的 Azure 位置。
network-functions publisher:以其名义发布此 NFDV 的发布者的名称。
publisher_resource_group:托管发布者的资源组。
name:要使用此 NSD 进行部署的现有网络函数定义组的名称。
version:要基于此 NSD 的现有网络函数定义的版本。 此 NSD 能够部署带有与此版本兼容的部署参数的任何 NFDV。
publisher_offering_location:NFDV 发布到的区域。
type:网络功能的类型。 有效值为 cnf 或 vnf。
multiple_instances:有效值为 true 或 false。 控制 NSD 是否应允许使用此类 NF 的任意数字。 如何设为 false,则仅允许单个实例。 仅在 VNF 上受支持。 对于 CNF,请将此项设置为 false。
nsd_name 网络服务设计组名称。 网络服务设计版本的集合。 如果它不存在,则创建它。
nsd_version 要创建的 NSD 的版本。 格式应为 A.B.C。
nsdv_description NSDV 的说明。

生成网络服务设计 (NSD)

使用以下命令启动网络服务定义 (NSD) 的生成过程:

az aosm nsd build -f input-vnf-nsd.json

生成过程完成后,请查看下面这些生成的文件,以深入了解 NSD 的体系结构和结构。

这些文件创建在名为 nsd-bicep-templates 的子目录中:

文件 说明
artifact_manifest.bicep 用于创建发布服务器和项目存储的 bicep 模板。
configMappings 一个目录,其中包含的文件将配置组值输入转换为每个 NF 所需的部署参数。
nsd_definition.bicep 用于创建 NSDV 本身的 bicep 模板。
schemas 一个目录,其中包含的文件定义此 NSDV 配置组值中所需的输入。
ubuntu-vm-nfdg_nf.bicep 用于部署 NF 的 bicep 模板。 上传到项目存储。

发布网络服务设计 (NSD)

要发布网络服务设计 (NSD) 及其关联的项目,请发出以下命令:

az aosm nsd publish -f input-vnf-nsd.json

发布过程完成后,导航到发布服务器资源组,以观察并查看生成的资源和项目。

将创建以下资源:

资源名称 资源类型
ubuntu-nsdg 网络服务设计。
1.0.0 (ubuntu-nsdg/1.0.0) 网络服务设计版本。
ubuntu-vm-nfdg-nf-acr-manifest-1-0-0 发布服务器项目清单。
ubuntu_nsdg_ConfigGroupSchema 配置组架构。

后续步骤: