Создание образа виртуальной машины Azure Stack HCI с помощью Azure Marketplace образов

Область применения: Azure Stack HCI, версия 23H2

В этой статье описывается создание образов виртуальных машин для Azure Stack HCI с помощью исходных образов из Azure Marketplace. Вы можете создавать образы виртуальных машин с помощью портал Azure или Azure CLI, а затем использовать эти образы виртуальных машин для создания виртуальных машин Arc в Azure Stack HCI.

Предварительные требования

Прежде чем начать, убедитесь, что выполнены следующие предварительные требования.

  • Обязательно просмотрите и выполните предварительные требования.

  • У вас есть доступ к развернутой системе Azure Stack HCI, которая имеет мост ресурсов Arc и пользовательское расположение.

    • Перейдите на страницу Обзор > сервера в системном ресурсе Azure Stack HCI. Убедитесь, что в Azure Arc отображается значение Подключено. Вы также должны увидеть пользовательское расположение и мост ресурсов Arc для кластера.

      Снимок экрана: страница

Добавление образа виртуальной машины из Azure Marketplace

Вы создаете образ виртуальной машины, начиная с Azure Marketplace образа, а затем используете его для развертывания виртуальных машин в кластере Azure Stack HCI.

Выполните следующие действия, чтобы создать образ виртуальной машины с помощью Azure CLI.

Вход и настройка подписки

  1. Подключитесь к серверу в системе Azure Stack HCI.

  2. Войдите. Тип:

    az login --use-device-code
    
  3. Задайте подписку.

    az account set --subscription <Subscription ID>
    

Задайте некоторые параметры.

  1. Задайте параметры для подписки, группы ресурсов, расположения, типа ОС для образа. Замените параметры в < > соответствующими значениями.

    $subscription = "<Subscription ID>"
    $resource_group = "<Resource group>"
    $customLocationName = "<Custom location name>"
    $customLocationID
    /subscriptions/<Subscription ID>/resourcegroups/$resource_group/providers/microsoft.extendedlocation/customlocations/$customLocationName
    $location = "<Location for your Azure Stack HCI cluster>"
    $osType = "<OS of source image>"
    

    Параметры описаны в следующей таблице.

    Параметр Описание
    subscription Подписка, связанная с кластером Azure Stack HCI.
    resource-group Группа ресурсов для кластера Azure Stack HCI, связанная с этим образом.
    location Расположение кластера Azure Stack HCI. Например, это может быть eastus.
    os-type Операционная система, связанная с исходным образом. Это может быть Windows или Linux.

    Ниже приведен пример выходных данных:

    PS C:\Users\azcli> $subscription = "<Subscription ID>"
    PS C:\Users\azcli> $resource_group = "myhci-rg"
    PS C:\Users\azcli> $customLocationName = "myhci-cl"
    PS C:\Users\azcli> $location = "eastus"
    PS C:\Users\azcli> $ostype = "Windows"
    

Создание образа виртуальной машины из образа Marketplace

  1. Выберите пользовательское расположение для развертывания образа виртуальной машины. Пользовательское расположение должно соответствовать пользовательскому расположению кластера Azure Stack HCI. Получите настраиваемый идентификатор расположения для кластера Azure Stack HCI. Выполните следующую команду:

    $customLocationID=(az customlocation show --resource-group $resource_group --name "<custom location name for Azure Stack HCI cluster>" --query id -o tsv)
    
  2. Создайте образ виртуальной машины, начиная с указанного образа Marketplace. Обязательно укажите предложение, издателя, номер SKU и версию для образа Marketplace. Используйте следующую таблицу, чтобы найти доступные образы Marketplace и их значения атрибутов:

    Имя Издатель ПРЕДЛОЖЕНИЕ номер SKU номер версии;
    Windows 11 Корпоративная многосеансовый + Приложения Microsoft 365 версии 21H2- 2-го поколения microsoftwindowsdesktop office-365 win10-21h2-avd-m365-g2 19044.3570.231010
    Windows 10 Корпоративная многосеансовая версия 21H2 + Приложения Microsoft 365 2-го поколения microsoftwindowsdesktop office-365 win11-21h2-avd-m365 22000.2538.231010
    Windows 10 Корпоративная многосеансовая версия 21H2-2-го поколения microsoftwindowsdesktop windows-10 win10-21h2-avd-g2 19044.3570.231001
    Windows 11 Корпоративная многосеансовая версия 21H2-2-го поколения microsoftwindowsdesktop windows-11 win11-21h2-avd 22000.2538.231001
    Windows 11 Корпоративная многосеансовая версия 22H2 — 2-е поколение microsoftwindowsdesktop windows-11 win11-22h2-avd 22621.2428.231001
    Windows 11 версии 22H2 Enterprise с несколькими сеансами и Приложения Microsoft 365 (предварительная версия) — 2-е поколение microsoftwindowsdesktop windows11preview win11-22h2-avd-m365 22621.382.220810
    Windows Server 2022 Datacenter: Выпуск Azure — 2-е поколение microsoftwindowsserver windowsserver 2022-datacenter-azure-edition 20348.2031.231006
    Windows Server 2022 Datacenter: Azure Edition Core — 2-е поколение microsoftwindowsserver windowsserver 2022-datacenter-azure-edition-core 20348.2031.231006
    Windows Server 2022 Datacenter: Горячее исправление выпуска Azure — 2-е поколение microsoftwindowsserver windowsserver 2022-datacenter-azure-edition-hotpatch 20348.2031.231006
    az stack-hci-vm image create --subscription $subscription --resource-group $resource_group --custom-location $customLocationID --location $location --name "<VM image name>" --os-type $ostype --offer "windowsserver" --publisher "<Publisher name>" --sku "<SKU>" --version "<Version number>" --storage-path-id $storagepathid
    

    Для образа виртуальной машины запускается задание развертывания.

    В этом примере путь к хранилищу был указан с помощью --storage-path-id флага , что гарантирует, что данные рабочей нагрузки (включая виртуальную машину, образ виртуальной машины, диск данных, не относящиеся к ОС) помещаются в указанный путь к хранилищу.

    Если флаг не указан, данные рабочей нагрузки автоматически помещаются в путь к хранилищу с высоким уровнем доступности.

Развертывание образа занимает несколько минут. Время, затраченное на скачивание образа, зависит от размера образа Marketplace и пропускной способности сети, доступной для скачивания.

Ниже приведен пример выходных данных:

PS C:\Users\azcli> $customLocationID=(az customlocation show --resource-group $resource_group --name "myhci-cl" --query id -o tsv)
PS C:\Users\azcli> $customLocationID
/subscriptions/<Subscription ID>/resourcegroups/myhci-rg/providers/microsoft.extendedlocation/customlocations/myhci-cl
PS C:\Users\azcli> az stack-hci-vm image create --subscription $subscription --resource-group $resource_group --custom-location $customLocationID --location $location --name "myhci-marketplaceimage" --os-type $ostype --offer "windowsserver" --publisher "microsoftwindowsserver" --sku "2022-datacenter-azure-edition-core" --version "20348.2031.231006" --storage-path-id $storagepathid
{
  "extendedLocation": {
    "name": "/subscriptions/<Subscription ID>/resourceGroups/myhci-rg/providers/Microsoft.ExtendedLocation/customLocations/myhci-cl",
    "type": "CustomLocation"
  },
  "id": "/subscriptions/<Subscription ID>/resourceGroups/myhci-rg/providers/Microsoft.AzureStackHCI/marketplacegalleryimages/myhci-marketplaceimage",
  "location": "eastus",
  "name": "myhci-marketplaceimage",
  "properties": {
    "identifier": {
      "offer": "windowsserver",
      "publisher": "microsoftwindowsserver",
      "sku": "2022-datacenter-azure-edition-core"
    },
    "imagePath": null,
    "osType": "Windows",
    "provisioningState": "Succeeded",
    "status": {
      "downloadStatus": {
        "downloadSizeInMB": 6750
      },
      "progressPercentage": 98,
      "provisioningStatus": {
        "operationId": "13be90e0-a780-45bf-a84a-ae91b6e5e468*A380D53083FF6B0A3A157ED7DFD00D33F6B3D40D5559D11AEAED6AD68F7F1A4A",
        "status": "Succeeded"
      }
    },
    "storagepathId": "/subscriptions/<Subscription ID>/resourceGroups/myhci-rg/providers/Microsoft.AzureStackHCI/storagecontainers/myhci-storagepath",
    "version": {
      "name": "20348.2031.231006",
      "properties": {
        "storageProfile": {
          "osDiskImage": {
            "sizeInMB": 130050
          }
        }
      }
    }
  },
  "resourceGroup": "myhci-rg",
  "systemData": {
    "createdAt": "2023-10-27T21:43:15.920502+00:00",
    "createdBy": "guspinto@contoso.com",
    "createdByType": "User",
    "lastModifiedAt": "2023-10-27T22:06:15.092321+00:00",
    "lastModifiedBy": "319f651f-7ddb-4fc6-9857-7aef9250bd05",
    "lastModifiedByType": "Application"
  },
  "tags": null,
  "type": "microsoft.azurestackhci/marketplacegalleryimages"
}

PS C:\Users\azcli>

Вывод списка образов виртуальных машин

Чтобы выбрать образ для управления, необходимо просмотреть список образов виртуальных машин.

Выполните следующие действия, чтобы получить список образов виртуальной машины с помощью Azure CLI.

  1. Откройте сеанс PowerShell от имени администратора.

  2. Задайте некоторые параметры.

    $subscription = "<Subscription ID associated with your cluster>"
    $resource_group = "<Resource group name for your cluster>"
    
  3. Выведите список всех образов виртуальных машин, связанных с кластером. Выполните следующую команду:

    az stack-hci-vm image list --subscription $subscription --resource-group $resource_group
    

    В зависимости от используемой команды отображается соответствующий набор образов, связанных с кластером Azure Stack HCI.

    • Если указать только подписку, команда выводит список всех образов в подписке.
    • Если указать подписку и группу ресурсов, команда выводит список всех образов в группе ресурсов.

    К этим изображениям относятся:

    • Образы виртуальных машин из образов Marketplace.
    • Пользовательские образы, которые находятся в учетной записи хранения Azure или находятся в локальной общей папке в кластере или клиенте, подключенном к кластеру.

Ниже приведен пример выходных данных.

PS C:\Users\azcli> az stack-hci-vm image list --subscription "<Subscription ID>" --resource-group "myhci-rg"
Command group 'stack-hci-vm' is experimental and under development. Reference and support levels: https://aka.ms/CLI_refstatus
[
  {
    "extendedLocation": {
      "name": "/subscriptions/<Subscription ID>/resourcegroups/myhci-rg/providers/microsoft.extendedlocation/customlocations/myhci-cl",
      "type": "CustomLocation"
    },
    "id": "/subscriptions/<Subscription ID>/resourceGroups/myhci-rg/providers/microsoft.azurestackhci/marketplacegalleryimages/w
inServer2022Az-01",
    "location": "eastus",
    "name": "winServer2022Az-01",
    "properties": {
      "hyperVGeneration": "V2",
      "identifier": {
        "offer": "windowsserver",
        "publisher": "microsoftwindowsserver",
        "sku": "2022-datacenter-azure-edition-core"
      },
      "imagePath": null,
      "osType": "Windows",
      "provisioningState": "Succeeded",
      "status": {
        "downloadStatus": {
          "downloadSizeInMB": 6710
        },
        "progressPercentage": 100,
        "provisioningStatus": {
          "operationId": "19742d69-4a00-4086-8f17-4dc1f7ee6681*E1E9889F0D1840B93150BD74D428EAE483CB67B0904F9A198C161AD471F670ED",
          "status": "Succeeded"
        }
      },
      "storagepathId": null,
      "version": {
        "name": "20348.2031.231006",
        "properties": {
          "storageProfile": {
            "osDiskImage": {
              "sizeInMB": 130050
            }
          }
        }
      }
    },
    "resourceGroup": "myhci-rg",
    "systemData": {
      "createdAt": "2023-10-30T21:44:53.020512+00:00",
      "createdBy": "guspinto@contoso.com",
      "createdByType": "User",
      "lastModifiedAt": "2023-10-30T22:08:25.495995+00:00",
      "lastModifiedBy": "319f651f-7ddb-4fc6-9857-7aef9250bd05",
      "lastModifiedByType": "Application"
    },
    "tags": {},
    "type": "microsoft.azurestackhci/marketplacegalleryimages"
  }
]
PS C:\Users\azcli>

Просмотр свойств образа виртуальной машины

Прежде чем использовать образ для создания виртуальной машины, может потребоваться просмотреть свойства образов виртуальных машин. Чтобы просмотреть свойства изображения, выполните следующие действия.

Выполните следующие действия, чтобы использовать Azure CLI для просмотра свойств изображения.

  1. Откройте сеанс PowerShell от имени администратора.

  2. Задайте следующие параметры.

    $subscription = "<Subscription ID>"
    $resource_group = "<Cluster resource group>"
    $mktplaceImage = "<Marketplace image name>"
    
  3. Свойства изображения можно просмотреть двумя разными способами: указать идентификатор или указать имя и группу ресурсов. При указании идентификатора образа Marketplace выполните следующие действия.

    1. Задайте следующий параметр.

      $mktplaceImageID = "/subscriptions/<Subscription ID>/resourceGroups/myhci-rg/providers/Microsoft.AzureStackHCI/galleryimages/myhci-marketplaceimage"
      
    2. Выполните следующую команду, чтобы просмотреть свойства.

      az stack-hci-vm image show --ids $mktplaceImageID

      Ниже приведен пример выходных данных для этой команды:

      PS C:\Users\azcli> az stack-hci-vm image show --ids $mktplaceImageID
      Command group 'stack-hci-vm' is experimental and under development. Reference and support levels: https://aka.ms/CLI_refstatus
      {
        "extendedLocation": {
          "name": "/subscriptions/<Subscription ID>/resourcegroups/myhci-rg/providers/microsoft.extendedlocation/customlocations/myhci-cl",
          "type": "CustomLocation"
        },
        "id": "/subscriptions/<Subscription ID>/resourceGroups/myhci-rg/providers/Microsoft.AzureStackHCI/galleryimages/myhci-marketplaceimage",
        "location": "eastus",
        "name": "myhci-marketplaceimage",
        "properties": {
          "containerName": null,
          "hyperVGeneration": null,
          "identifier": null,
          "imagePath": null,
          "osType": "Windows",
          "provisioningState": "Succeeded",
          "status": null,
          "version": null
        },
        "resourceGroup": "myhci-rg",
        "systemData": {
          "createdAt": "2022-08-05T20:52:38.579764+00:00",
          "createdBy": "guspinto@microsoft.com",
          "createdByType": "User",
          "lastModifiedAt": "2022-08-05T20:52:38.579764+00:00",
          "lastModifiedBy": "guspinto@microsoft.com",
          "lastModifiedByType": "User"
        },
        "tags": null,
        "type": "microsoft.azurestackhci/galleryimages"
      }
      PS C:\Users\azcli> 
      

Обновление образа виртуальной машины

Когда новый обновленный образ доступен в Azure Marketplace, образы виртуальных машин в кластере Azure Stack HCI устареют и должны быть обновлены. Операция обновления не является обновлением образа на месте. Вместо этого можно увидеть, для каких образов виртуальных машин доступен обновленный образ, и выбрать образы для обновления. После обновления операция создания образа виртуальной машины использует новый обновленный образ.

Чтобы обновить образ виртуальной машины, выполните следующие действия в портал Azure.

  1. Чтобы узнать, доступно ли обновление, выберите образ виртуальной машины в представлении списка.

    Снимок экрана: обновление образа виртуальной машины доступно для скачивания.

    В колонке Обзор отображается баннер с новым образом виртуальной машины, доступным для скачивания, если он доступен. Чтобы обновить новое изображение, щелкните значок со стрелкой.

    Снимок экрана: новый образ виртуальной машины, доступный для скачивания в сведениях об образе виртуальной машины.

  2. Просмотрите сведения об изображении, а затем выберите Проверить и создать. По умолчанию новый образ использует те же сведения о группе ресурсов и экземпляре, что и предыдущий образ.

    Имя нового образа увеличивается на основе имени предыдущего образа. Например, существующий образ с именем winServer2022-01 будет иметь обновленный образ с именем winServer2022-02.

    Снимок экрана: диалоговое окно

  3. Чтобы завершить операцию, выберите Создать.

    Снимок экрана: диалоговое окно создания образа для нового образа виртуальной машины.

    После создания образа виртуальной машины создайте виртуальную машину с помощью нового образа и убедитесь, что виртуальная машина работает правильно. После проверки можно удалить старый образ виртуальной машины.

    Примечание

    В этом выпуске нельзя удалить образ виртуальной машины, если виртуальная машина, связанная с этим образом, запущена. Остановите виртуальную машину, а затем удалите образ виртуальной машины.

Удаление образа виртуальной машины

Вы можете удалить образ виртуальной машины, если скачивание по какой-либо причине завершается сбоем или если образ больше не нужен. Чтобы удалить образы виртуальных машин, выполните следующие действия.

  1. Откройте сеанс PowerShell от имени администратора.

  2. Задайте следующие параметры.

    $subscription = "<Subscription ID>"
    $resource_group = "<Cluster resource group>"
    $galleryImageName = "<Gallery image name>"    
    
  3. Удалите существующий образ виртуальной машины. Выполните следующую команду:

    az stack-hci-vm image delete --subscription $subscription --resource-group $resource_group --name $mktplaceImage --yes
    

Удалить изображение можно двумя способами:

  • Укажите имя и группу ресурсов.
  • Укажите идентификатор.

После удаления образа можно проверка, что образ удален. Ниже приведен пример выходных данных, когда образ был удален путем указания имени и группы ресурсов.

PS C:\Users\azcli> $subscription = "<Subscription ID>"
PS C:\Users\azcli> $resource_group = "myhci-rg"
PS C:\Users\azcli> $mktplaceImage = "myhci-marketplaceimage"
PS C:\Users\azcli> az stack-hci-vm image delete --name $mktplaceImage --resource-group $resource_group
Command group 'stack-hci-vm' is experimental and under development. Reference and support levels: https://aka.ms/CLI_refstatus
Are you sure you want to perform this operation? (y/n): y
PS C:\Users\azcli> az stack-hci-vm image show --name $mktplaceImage --resource-group $resource_group
Command group 'stack-hci-vm' is experimental and under development. Reference and support levels: https://aka.ms/CLI_refstatus
ResourceNotFound: The Resource 'Microsoft.AzureStackHCI/marketplacegalleryimages/myhci-marketplaceimage' under resource group 'myhci-rg' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
PS C:\Users\azcli>

Дальнейшие действия