Condividi tramite


Guida introduttiva: Completare i prerequisiti per distribuire una funzione di rete virtualizzata in Azure Operator Service Manager

Prima di iniziare a usare Azure Operator Service Manager, assicurarsi di aver registrato i provider di risorse necessari e di aver installato gli strumenti necessari per interagire con il servizio.

Prerequisiti

Scaricare e installare l'interfaccia della riga di comando di Azure

È possibile usare l'ambiente Bash in Azure Cloud Shell. Per altre informazioni, vedere Avvio rapido per Bash in Azure Cloud Shell.

Se si preferisce eseguire i comandi di riferimento dell'interfaccia della riga di comando in locale, installare l'interfaccia della riga di comando di Azure usando Come installare l'interfaccia della riga di comando di Azure.

Se si esegue un computer in Windows o macOS, è consigliabile eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker. Per altre informazioni, vedere Come eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker.

Per l'installazione locale, accedere all'interfaccia della riga di comando di Azure usando il az login comando .

Per completare il processo di autenticazione, seguire la procedura visualizzata nel terminale. Per altre opzioni di accesso, vedere Accedere con l'interfaccia della riga di comando di Azure.

Accedere tramite l'interfaccia della riga di comando di Azure

Per accedere con l'interfaccia della riga di comando di Azure, eseguire il comando seguente.

az login

Selezionare la sottoscrizione

Per modificare la sottoscrizione attiva usando l'ID sottoscrizione, eseguire il comando seguente.

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

Installare l'estensione dell'interfaccia della riga di comando di Azure Operator Service Manager (AOSM)

Per installare l'estensione dell'interfaccia della riga di comando di Azure Operator Service Manager, eseguire il comando seguente.

az extension add --name aosm

Eseguire az version per determinare la versione e le librerie dipendenti installate. Eseguire l'aggiornamento alla versione più recente eseguendo il comando az upgrade.

Registrare i provider di risorse necessari

Prima di usare Azure Operator Service Manager, è prima necessario registrare i provider di risorse necessari eseguendo questi comandi. Il processo di registrazione potrebbe richiedere fino a 5 minuti.

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

Verificare lo stato di registrazione

Per verificare lo stato di registrazione dei provider di risorse, è possibile eseguire i comandi seguenti:

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

Al termine dell'operazione, viene visualizzato l'output seguente:

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

Nota

Il completamento della registrazione del provider di risorse può richiedere alcuni minuti. Al termine della registrazione, è possibile iniziare a usare Network Function Manager (NFM) o Azure Operator Service Manager.

Requisiti della funzione Rete virtuale (VNF)

Scaricare ed estrarre l'immagine Ubuntu

Se l'immagine Ubuntu è già accessibile tramite un URL di firma di accesso condiviso nell'archivio BLOB di Azure, è possibile risparmiare tempo omettendo questo passaggio. Tenere presente che l'immagine Ubuntu è ridimensionabile, circa 650 MB, in modo che il processo di trasferimento possa richiedere del tempo.

# 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

Modello di Resource Manager della macchina virtuale

In questa guida di avvio rapido viene usato il modello di Resource Manager di esempio seguente per la macchina virtuale Ubuntu.

{
  "$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')))]"
      ]
    }
  ]
}

Salvare il file JSON precedente come ubuntu-template.json nel computer locale.

Passaggi successivi