Поделиться через


Управление локальными виртуальными машинами Azure, подключенными к Azure Arc

Область применения: Azure Local 2311.2 и более поздних версий

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

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

  • Доступ к локальному экземпляру Azure, который развернут и зарегистрирован. Развертывание локального экземпляра Azure включает создание моста ресурсов Azure Arc и пользовательской локации.

    Перейдите в группу ресурсов в Azure. Отображаемая информация включает в себя пользовательское расположение и мост ресурсов Azure Arc, созданный для Azure Local. Запишите данные о подписке, группе ресурсов и пользовательском расположении. Их можно использовать позже в этом сценарии.

  • Одна или несколько локальных виртуальных машин Azure, работающих в локальном экземпляре Azure. Дополнительные сведения см. в статье "Создание локальных виртуальных машин Azure".

  • Для включения гостевого управления виртуальная машина Azure должна иметь доступ к общедоступному сетевому подключению.

Включение гостевого управления

Важно понимать два агента в контексте гостевого управления: гостевой агент виртуальной машины и агент подключенного компьютера Azure. Каждая локальная виртуальная машина Azure, созданная на портале Azure или с помощью Azure CLI, подготавливается с гостевым агентом (также называемым mocguestagent) на ней.

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

Ниже приведены некоторые ключевые аспекты для включения управления гостевыми системами на виртуальной машине после её настройки:

  • Убедитесь, что локальный экземпляр Azure работает под управлением 2311.2 или более поздней версии.
  • Включение гостевого управления после подготовки виртуальных машин не поддерживается для Windows Server 2012 и Windows Server 2012 R2.
  • Действия по включению гостевого управления зависят от того, работает ли гостевой агент на локальной виртуальной машине Azure.

Убедитесь, что гостевой агент работает

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

  1. Подключитесь к компьютеру.

  2. Выполните следующую команду:

    az stack-hci-vm show --name "<VM name>" --resource-group "<Resource group name>"
    

    Ниже приведен образец выходных данных примера, показывающий, что гостевой агент запущен. Найдите statuses под vmAgent в выходных данных.

    "instanceView": {
      "vmAgent": {
        "statuses": [
          {
            "code": "ProvisioningState/succeeded",
            "displayStatus": "Connected",
            "level": "Info",
            "message": "Successfully established connection with mocguestagent",
            "time": "2024-01-13T00:57:39Z"
          },
          {
            "code": "ProvisioningState/succeeded",
            "displayStatus": "Connected",
            "level": "Info",
            "message": "New mocguestagent version detected 'v0.13.0-3-gd13b4794",
            "time": "2024-01-13T00:57:39Z"
          }
        ],
        "vmConfigAgentVersion": "v0.13.0-3-gd13b4794"
      }
    }
    

    Гостевой агент работает, когда statuses указывает code в качестве ProvisioningState/succeeded и указывает displayStatus в качестве Connected.

    Если вы используете старую версию, statuses указывает code как OK и указывает displayStatus как Active.

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

Включение гостевого управления на виртуальной машине при запуске гостевого агента

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

  1. Выполните следующую команду, которая задает для параметра enable-agent значение true:

    az stack-hci-vm update --name "mylocal-vm" --enable-agent true --resource-group "mylocal-rg"
    

    Включение управления гостями должно занять несколько минут.

  2. Убедитесь, что управление гостевыми клиентами включено. Выполните действия, описанные в убедитесь, что управление гостевыми клиентами включено на портале Azure.

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

Гостевой агент не запускается в двух сценариях: когда состояние Connecting и когда состояние равно null. В следующих разделах описаны эти сценарии и соответствующие шаги.

Состояние отображается как «Подключение»

В этом примере выходных фрагментов кода отображается состояние Connecting:

"instanceView": {
      "vmAgent": {
        "statuses": [
          {
            "code": "ProvisioningState/InProgress",
            "displayStatus": "Connecting",
            "level": "Info",
            "message": "Waiting for connection with mocguestagent",
            "time": "2024-01-19T01:41:15Z"
          }
        ]
      }
    },

Гостевой агент не работает, когда statuses указывает code как ProvisioningState/InProgress и указывает displayStatus как Connecting.

Если вы используете старую версию, statuses указывает code как OK, displayStatus как Activeи message как Successfully started HyperV listener.

Выполните следующие действия:

  1. Подключитесь к виртуальной машине с помощью действий, относящихся к ОС. Запустите Azure PowerShell от имени администратора.

  2. Выполните одну из следующих команд, чтобы включить гостевой агент на виртуальной машине на основе типа ОС.

    Используйте следующую команду для Linux:

    sudo -- sh -c 'mkdir /mociso && mount -L mocguestagentprov /mociso && bash /mociso/install.sh && umount /mociso && rm -df /mociso && eject LABEL=mocguestagentprov'
    

    Используйте следующую команду для Windows:

    $d=Get-Volume -FileSystemLabel mocguestagentprov;$p=Join-Path ($d.DriveLetter+':\') 'install.ps1';powershell $p
    

    Ниже приведен пример выходных данных для виртуальной машины Linux, которая показывает успешную установку гостевого агента.

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

  3. Подключитесь к одному из компьютеров. Выполните следующую команду, чтобы включить управление гостевыми клиентами:

    az stack-hci-vm update --name "mylocal-vm" --enable-agent true --resource-group "mylocal-rg"
    
  4. Убедитесь, что управление гостевыми клиентами включено. Выполните действия, описанные в убедитесь, что управление гостевыми клиентами включено на портале Azure.

Состояние, отображаемое как null

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

"instanceView": {
      "vmAgent": {
        "statuses": []
      }
    },

Выполните следующие действия:

  1. Подключитесь к компьютеру.

  2. Выполните следующую команду:

    az stack-hci-vm update --name "<VM Name>" --resource-group "<Resource group name>" --enable-vm-config-agent true
    

    Параметр enable-vm-config-agent монтирует требуемый iso для гостевого агента.

  3. Подождите несколько минут и повторите az stack-hci-vm show команду. Когда состояние отображается Connecting, выполните действия, описанные в состояние, отображаемое как подключение.

Убедитесь, что управление гостевыми клиентами включено на портале Azure

  1. Перейдите на портал Azure.

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

  3. На странице Обзор на вкладке Свойства перейдите в раздел Конфигурация. Менеджмент гостей должен отображать Включено (Подключено).

    снимок экрана портала Azure, на котором показана область проверки включения гостевого управления.

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

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

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

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

    снимок экрана виртуальной машины, выбранной из списка виртуальных машин.

  3. На странице Обзор выберите вкладку Свойства, чтобы просмотреть свойства вашей виртуальной машины.

    Снимок экрана: свойства выбранной локальной виртуальной машины Azure.

Запуск виртуальной машины

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

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

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

  3. На странице Обзор виртуальной машины на панели команд выберите «Пуск».

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

  4. В диалоговом окне подтверждения нажмите кнопку "Да".

  5. Убедитесь, что виртуальная машина запущена.

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

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

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

  2. В списке виртуальных машин выберите виртуальную машину, остановленную и которую вы хотите перезапустить.

  3. На странице Обзор для виртуальной машины в командной строке выберите Перезапустить.

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

  4. В диалоговом окне подтверждения нажмите кнопку "Да".

  5. Убедитесь, что виртуальная машина перезапущена.

Остановка виртуальной машины

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

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

  2. В списке виртуальных машин выберите виртуальную машину, которая работает, и ее нужно остановить.

  3. На странице Обзор виртуальной машины на панели команд выберите Остановить.

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

  4. В диалоговом окне подтверждения нажмите кнопку "Да".

  5. Убедитесь, что виртуальная машина остановлена.

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

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

Вы можете приостановить работу только виртуальных машин. После приостановки виртуальной машины его можно возобновить позже.

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

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

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

  3. На странице обзора виртуальной машины на панели команд нажмите кнопку "Приостановить".

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

  4. В диалоговом окне подтверждения нажмите кнопку "Да".

  5. Убедитесь, что состояние виртуальной машины изменено на "Приостановлено".

Сохранение виртуальной машины

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

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

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

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

  3. На странице обзора виртуальной машины на панели команд нажмите кнопку "Сохранить".

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

  4. В диалоговом окне подтверждения нажмите кнопку "Да".

  5. Убедитесь, что состояние виртуальной машины изменено на "Сохранено".

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

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

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

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

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

  3. На странице обзора виртуальной машины на панели команд выберите Удалить.

  4. В диалоговом окне подтверждения нажмите кнопку "Да".

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

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

  6. Найдите связанные ресурсы, такие как сетевые интерфейсы и диски данных, и удалите их. Может потребоваться выбрать Показать скрытые типы для просмотра ресурсов, связанных с этой виртуальной машиной, которые не были удалены.

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

Изменение пароля локальной учетной записи

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

Изменение пароля локальной учетной записи для виртуальных машин Windows

  1. Войдите на локальную виртуальную машину Azure.

  2. Выполните следующую команду Azure PowerShell:

    # Define the username
    $username = "AccountName"
    
    # Prompt the user to enter the new password
    $newPassword = Read-Host -AsSecureString "Enter the new password for $username"
    
    # Prompt the user to re-enter the new password for verification
    $verifyPassword = Read-Host -AsSecureString "Re-enter the new password for verification"
    
    # Convert the secure strings to plain text for comparison
    $plainPassword = [Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($newPassword))
    $plainVerifyPassword = [Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($verifyPassword))
    
    # Check if the passwords match, and change the password if they match. Fail if the passwords don't match.
    if ($plainPassword -eq $plainVerifyPassword) {
        $account = [ADSI]"WinNT://./$username,user"
        $account.SetPassword($plainPassword)
        $account.SetInfo()
    
        Write-Host "Password for user $username has been reset successfully." -ForegroundColor Green
    } else {
        Write-Host "The passwords do not match. Please try again." -ForegroundColor Red
    }    
    

Изменение пароля локальной учетной записи для виртуальных машин Linux

Если Bash находится в другом каталоге, обязательно измените строку #!/bin/bash соответствующим образом.

  1. Войдите на локальную виртуальную машину Azure.

  2. Выполните следующий сценарий, из которого установлен Bash:

    #!/bin/bash
    
    # Define the username
    username="AccountName"
    
    # Prompt the user to enter the new password
    echo -n "Enter the new password for $username: "
    read -s newPassword
    echo
    
    # Prompt the user to re-enter the new password for verification
    echo -n "Re-enter the new password for verification: "
    read -s verifyPassword
    echo
    
    # Check if the passwords match
    if [ "$newPassword" == "$verifyPassword" ]; then
        # Reset the password for the local account
        echo "$username:$newPassword" | sudo chpasswd
        echo -e "\e[32mPassword for user $username has been reset successfully.\e[0m"
    else
        echo -e "\e[31mThe passwords do not match. Please try again.\e[0m"
    fi
    

Выполнение динамической миграции локальных виртуальных машин Azure

Динамическая миграция локальных виртуальных машин Azure на локальных узлах Azure поддерживается с помощью локальных средств, таких как диспетчер отказоустойчивых кластеров или Windows Admin Center. Динамическая миграция хранилища виртуальных машин не поддерживается.

Изменение ядер и памяти

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

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

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

  3. В меню Параметры выберите Размер. Измените число виртуальных процессоров или размер памяти (МБ), чтобы поменять количество ядер или размер памяти для виртуальной машины. Для памяти можно изменить только размер. После создания виртуальной машины невозможно изменить тип памяти.

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

Изменение динамической памяти

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

--hardware-profile vm-size="Custom" processors=1 memory-mb=1024 maximum-memory-mb=2048 minimum-memory-mb=1024 target-memory-buffer=20

Обратите внимание, что minimum-memory-mb меньше или memory-mb равно и maximum-memory-mb больше или равно memory-mb.

Ниже приведен пример скрипта:

az stack-hci-vm create --name "my_dynmemory" -g my_registration" --admin-username "admin" --admin-password "" --custom-location "/subscriptions/my_subscription/resourceGroups/my_registration/providers/Microsoft.ExtendedLocation/customLocations/my_customlocation" --location "eastus2euap" --image "/subscriptions/my_subscription/resourceGroups/my_registration/microsoft.azurestackhci/marketplacegalleryimages/2022-datacenter-azure-edition-core-01" --hardware-profile vm-size="Custom" processors=1 memory-mb=1024 maximum-memory-mb=2048 minimum-memory-mb=1024 target-memory-buffer=20 --enable-agent true --nics "dynnic"

Поддержка возможности управления гостями

Следующие операционные системы (ОС) поддерживают включение гостевого управления:

ОС Windows

  • Windows Server 2025 г.
  • Windows Server 2022
  • Windows Server2019
  • Windows Server 2016
  • Windows 10
  • Windows 11

ОС Linux