Share via


Quickstart: Voltooi de vereisten voor het implementeren van een gevirtualiseerde netwerkfunctie in Azure Operator Service Manager

Voordat u Azure Operator Service Manager gaat gebruiken, moet u ervoor zorgen dat u de vereiste resourceproviders hebt geregistreerd en de benodigde hulpprogramma's hebt geïnstalleerd om met de service te communiceren.

Vereisten

  • U hebt AOSM ingeschakeld voor uw Azure-abonnement.

Azure CLI downloaden en installeren

U kunt de Bash-omgeving in Azure Cloud Shell gebruiken. Zie quickstart voor Bash in Azure Cloud Shell voor meer informatie.

Als u liever CLI-referentieopdrachten lokaal uitvoert, installeert u de Azure CLI met behulp van De Azure CLI installeren.

Als u een computer gebruikt in Windows of macOS, kunt u Overwegen Om Azure CLI uit te voeren in een Docker-container. Zie De Azure CLI uitvoeren in een Docker-container voor meer informatie.

Meld u voor lokale installatie aan bij Azure CLI met behulp van de az login opdracht.

Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Zie Aanmelden met de Azure CLI voor andere aanmeldingsopties.

Aanmelden met Azure CLI

Voer de volgende opdracht uit om u aan te melden met Azure CLI.

az login

Abonnement selecteren

Als u het actieve abonnement wilt wijzigen met behulp van de abonnements-id, voert u de volgende opdracht uit.

az account set --subscription "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

Cli-extensie (Azure Operator Service Manager) (AOSM) installeren

Voer de volgende opdracht uit om de CLI-extensie van Azure Operator Service Manager te installeren.

az extension add --name aosm

Voer deze az version opdracht uit om te bepalen welke versie en afhankelijke bibliotheken zijn geïnstalleerd. Voer een upgrade uit naar de nieuwste versie door de opdracht az upgradeuit te geven.

Benodigde resourceproviders registreren

Voordat u Azure Operator Service Manager gebruikt, moet u eerst de vereiste resourceproviders registreren door deze opdrachten uit te voeren. Het registratieproces kan maximaal 5 minuten duren.

# Register Resource Provider
az provider register --namespace Microsoft.ContainerRegistry
az provider register --namespace Microsoft.ContainerInstance

Registratiestatus verifiëren

Als u de registratiestatus van de resourceproviders wilt controleren, kunt u de volgende opdrachten uitvoeren:

# Query the Resource Provider
az provider show -n Microsoft.ContainerRegistry --query "{RegistrationState: registrationState, ProviderName: namespace}"
az provider show -n Microsoft.ContainerInstance --query "{RegistrationState: registrationState, ProviderName: namespace}"

Bij succes wordt de volgende uitvoer weergegeven:

{
  "ProviderName": "Microsoft.ContainerRegistry",
  "RegistrationState": "Registered"
}
{
  "ProviderName": "Microsoft.ContainerInstance",
  "RegistrationState": "Registered"
}

Notitie

Het kan enkele minuten duren voordat de registratie van de resourceprovider is voltooid. Zodra de registratie is geslaagd, kunt u beginnen met het gebruik van Network Function Manager (NFM) of Azure Operator Service Manager.

VF-vereisten (Virtual Network Function)

Ubuntu-installatiekopie downloaden en extraheren

Als u de Ubuntu-installatiekopie al hebt die toegankelijk is via een SAS-URL in Azure Blob Storage, kunt u tijd besparen door deze stap weg te laten. Houd er rekening mee dat de Ubuntu-installatiekopie te groot is, ongeveer 650 MB, zodat het overdrachtsproces enige tijd kan duren.

# Download the Ubuntu image
wget https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64-azure.vhd.tar.gz

# Extract the downloaded image
tar -xzvf jammy-server-cloudimg-amd64-azure.vhd.tar.gz

ARM-sjabloon voor virtuele machine (VM)

De volgende ARM-voorbeeldsjabloon voor Ubuntu Virtual Machine (VM) wordt gebruikt in deze quickstart.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.21.1.54444",
      "templateHash": "2626436546580286549"
    }
  },
  "parameters": {
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    },
    "subnetName": {
      "type": "string"
    },
    "ubuntuVmName": {
      "type": "string",
      "defaultValue": "ubuntu-vm"
    },
    "virtualNetworkId": {
      "type": "string"
    },
    "sshPublicKeyAdmin": {
      "type": "string"
    },
    "imageName": {
      "type": "string"
    }
  },
  "variables": {
    "imageResourceGroup": "[resourceGroup().name]",
    "subscriptionId": "[subscription().subscriptionId]",
    "vmSizeSku": "Standard_D2s_v3"
  },
  "resources": [
    {
      "type": "Microsoft.Network/networkInterfaces",
      "apiVersion": "2021-05-01",
      "name": "[format('{0}_nic', parameters('ubuntuVmName'))]",
      "location": "[parameters('location')]",
      "properties": {
        "ipConfigurations": [
          {
            "name": "ipconfig1",
            "properties": {
              "subnet": {
                "id": "[format('{0}/subnets/{1}', parameters('virtualNetworkId'), parameters('subnetName'))]"
              },
              "primary": true,
              "privateIPAddressVersion": "IPv4"
            }
          }
        ]
      }
    },
    {
      "type": "Microsoft.Compute/virtualMachines",
      "apiVersion": "2021-07-01",
      "name": "[parameters('ubuntuVmName')]",
      "location": "[parameters('location')]",
      "properties": {
        "hardwareProfile": {
          "vmSize": "[variables('vmSizeSku')]"
        },
        "storageProfile": {
          "imageReference": {
            "id": "[extensionResourceId(format('/subscriptions/{0}/resourceGroups/{1}', variables('subscriptionId'), variables('imageResourceGroup')), 'Microsoft.Compute/images', parameters('imageName'))]"
          },
          "osDisk": {
            "osType": "Linux",
            "name": "[format('{0}_disk', parameters('ubuntuVmName'))]",
            "createOption": "FromImage",
            "caching": "ReadWrite",
            "writeAcceleratorEnabled": false,
            "managedDisk": "[json('{\"storageAccountType\": \"Premium_LRS\"}')]",
            "deleteOption": "Delete",
            "diskSizeGB": 30
          }
        },
        "osProfile": {
          "computerName": "[parameters('ubuntuVmName')]",
          "adminUsername": "azureuser",
          "linuxConfiguration": {
            "disablePasswordAuthentication": true,
            "ssh": {
              "publicKeys": [
                {
                  "path": "/home/azureuser/.ssh/authorized_keys",
                  "keyData": "[parameters('sshPublicKeyAdmin')]"
                }
              ]
            },
            "provisionVMAgent": true,
            "patchSettings": {
              "patchMode": "ImageDefault",
              "assessmentMode": "ImageDefault"
            }
          },
          "secrets": [],
          "allowExtensionOperations": true
        },
        "networkProfile": {
          "networkInterfaces": [
            {
              "id": "[resourceId('Microsoft.Network/networkInterfaces', format('{0}_nic', parameters('ubuntuVmName')))]"
            }
          ]
        }
      },
      "dependsOn": [
        "[resourceId('Microsoft.Network/networkInterfaces', format('{0}_nic', parameters('ubuntuVmName')))]"
      ]
    }
  ]
}

Sla het voorgaande json-bestand op als ubuntu-template.json op uw lokale computer.

Volgende stappen