Szybki start: wykonywanie wymagań wstępnych dotyczących wdrażania funkcji sieci zwirtualizowanej w programie Azure Operator Service Manager

Przed rozpoczęciem korzystania z programu Azure Operator Service Manager upewnij się, że zarejestrowano wymaganych dostawców zasobów i zainstalowano niezbędne narzędzia do interakcji z usługą.

Wymagania wstępne

  • Aplikacja AOSM została włączona w ramach subskrypcji platformy Azure.

Pobieranie i instalowanie interfejsu wiersza polecenia platformy Azure

Możesz użyć środowiska powłoki Bash w usłudze Azure Cloud Shell. Aby uzyskać więcej informacji, zobacz Szybki start dotyczący powłoki Bash w usłudze Azure Cloud Shell.

Jeśli wolisz uruchamiać polecenia referencyjne interfejsu wiersza polecenia lokalnie, zainstaluj interfejs wiersza polecenia platformy Azure przy użyciu instrukcji Jak zainstalować interfejs wiersza polecenia platformy Azure.

Jeśli jesteś maszyną uruchomioną w systemie Windows lub macOS, rozważ uruchomienie interfejsu wiersza polecenia platformy Azure w kontenerze platformy Docker. Aby uzyskać więcej informacji, zobacz Jak uruchomić interfejs wiersza polecenia platformy Azure w kontenerze platformy Docker.

W przypadku instalacji lokalnej zaloguj się do interfejsu wiersza polecenia platformy az login Azure przy użyciu polecenia .

Aby ukończyć proces uwierzytelniania, wykonaj kroki wyświetlane w terminalu. Aby uzyskać inne opcje logowania, zobacz Logowanie się przy użyciu interfejsu wiersza polecenia platformy Azure.

Logowanie się za pomocą interfejsu wiersza polecenia platformy Azure

Aby zalogować się przy użyciu interfejsu wiersza polecenia platformy Azure, wydaj następujące polecenie.

az login

Wybieranie subskrypcji

Aby zmienić aktywną subskrypcję przy użyciu identyfikatora subskrypcji, wydaj następujące polecenie.

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

Instalowanie rozszerzenia interfejsu wiersza polecenia programu Azure Operator Service Manager (AOSM)

Aby zainstalować rozszerzenie interfejsu wiersza polecenia programu Azure Operator Service Manager, wydaj następujące polecenie.

az extension add --name aosm

Uruchom polecenie az version , aby określić zainstalowaną wersję i biblioteki zależne. Uaktualnij do najnowszej wersji, wydając polecenie az upgrade.

Rejestrowanie niezbędnych dostawców zasobów

Przed rozpoczęciem korzystania z programu Azure Operator Service Manager należy najpierw zarejestrować wymaganych dostawców zasobów, wykonując te polecenia. Proces rejestracji może potrwać do 5 minut.

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

Weryfikowanie stanu rejestracji

Aby sprawdzić stan rejestracji dostawców zasobów, możesz uruchomić następujące polecenia:

# 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}"

Po pomyślnych działaniach zostaną wyświetlone następujące dane wyjściowe:

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

Uwaga

Ukończenie rejestracji dostawcy zasobów może potrwać kilka minut. Po pomyślnym zakończeniu rejestracji możesz rozpocząć korzystanie z menedżera funkcji sieci (NFM) lub menedżera usług operatora platformy Azure.

Wymagania dotyczące funkcji sieci wirtualnej (VNF)

Pobieranie i wyodrębnianie obrazu z systemem Ubuntu

Jeśli masz już obraz z systemem Ubuntu dostępny za pośrednictwem adresu URL sygnatury dostępu współdzielonego w usłudze Azure Blob Storage, możesz zaoszczędzić czas, pomijając ten krok. Pamiętaj, że obraz z systemem Ubuntu można rozsyłać około 650 MB, więc proces transferu może chwilę potrwać.

# 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

Szablon usługi ARM maszyny wirtualnej

Poniższy przykładowy szablon usługi ARM dla maszyny wirtualnej z systemem Ubuntu jest używany w tym przewodniku Szybki start.

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

Zapisz poprzedni plik JSON jako ubuntu-template.json na komputerze lokalnym.

Następne kroki