Восстановление виртуальной машины Windows с помощью команд восстановления виртуальной машины Azure
Область применения: ✔️ Виртуальные машины Windows
Если виртуальная машина Windows в Azure столкнулась с ошибкой загрузки или диска, может потребоваться восстановить диск в автономном режиме. Например, такая ситуация может возникнуть из-за сбоя обновления приложения, который мешает успешно загрузить виртуальную машину. В этой статье описано, как использовать команды восстановления виртуальной машины Azure для автоматического подключения диска ОС к другой виртуальной машине Windows для автономного восстановления. В этой процедуре диск операционной системы будет автоматически разблокирован на второй виртуальной машине, вызываемой виртуальной машиной восстановления, если диск зашифрован с помощью Шифрование дисков Azure. При подключении диска к виртуальной машине восстановления можно устранить любые ошибки, а затем перестроить исходную виртуальную машину с восстановленным диском.
Внимание
- Скрипты в этой статье применяются только к виртуальным машинам, которые используют Azure Resource Manager.
- Для выполнения скрипта требуется исходящее подключение из виртуальной машины (порт 443).
- Одновременно может выполняться только один скрипт.
- Выполнение скрипта не может быть отменено.
- Максимальное время выполнения скрипта составляет 90 минут, после чего он выдаст ошибку времени ожидания.
- Не изменяйте теги, созданные на виртуальной машине восстановления. Теги необходимы для правильной работы команды восстановления.
- Для виртуальных машин, использующих Шифрование дисков Azure, поддерживаются только управляемые диски, зашифрованные с одним сквозным шифрованием (с или без KEK).
Обзор процесса исправления
Теперь вы можете использовать команды исправления виртуальной машины Azure, чтобы изменить диск операционной системы для виртуальной машины, и вам больше не нужно удалять и повторно создавать виртуальные машины.
В разделе "Пример процесса восстановления" описан следующий процесс:
- Запустите Azure Cloud Shell.
- Запустите
az extension add
илиaz extension update
. - Запустите
az vm repair create
. - Выполните
az vm repair run
или выполните действия по устранению рисков. - Запустите
az vm repair restore
.
Примечание.
Чтобы просмотреть все доступные команды восстановления и параметры виртуальной машины, см . статью az vm repair.
Внимание
Чтобы выполнить команды, вам потребуется роль, которая может создать следующие типы ресурсов в подписке:
- Группы ресурсов
- Виртуальные машины
- Теги ресурсов
- Виртуальные сети
- группы сетевой безопасности;
- Сетевые интерфейсы
- Disks
- Общедоступные IP-адреса (необязательно)
Пример процесса исправления
Запуск Azure Cloud Shell
Azure Cloud Shell — это бесплатная интерактивная оболочка, с помощью которой можно выполнять действия, описанные в этой статье. Она включает предварительно установленные общие инструменты Azure и настроена для использования с вашей учетной записью. Если вы запускаете скрипт, который займет более 20 минут (например, сценарий win-sfc-sf-corruption ), вы можете выполнить команды локально. Для локального выполнения команд требуется Azure CLI версии 2.0.67 или более поздней версии. Чтобы узнать версию, выполните команду
az --version
. Если вам необходимо установить или обновить Azure CLI, см. статью Установка Azure CLI.Чтобы открыть Cloud Shell, выберите Попробовать в правом верхнем углу блока кода. Кроме того, Cloud Shell можно открыть в отдельной вкладке браузера. Для этого перейдите на страницу https://shell.azure.com.
Нажмите кнопку Копировать, чтобы скопировать блоки кода. Вставьте код в Cloud Shell и нажмите клавишу ВВОД, чтобы выполнить его.
Если вы предпочитаете локально устанавливать и использовать ИНТЕРФЕЙС командной строки, для этого краткого руководства требуется Azure CLI версии 2.0.67 или более поздней. Чтобы узнать версию, выполните команду
az --version
. Если вам необходимо установить или обновить Azure CLI, см. статью Установка Azure CLI.Если вам нужно войти в Cloud Shell с другой учетной записью, отличной от учетной записи, вошедшего в систему в портал Azure, можно использовать
az login
az login reference. Чтобы переключиться между подписками, связанными с учетной записью, можно использоватьaz account set --subscription
ссылку az account set.Если вы используете команды
az vm repair
в первый раз, добавьте расширение CLI vm-repair.az extension add -n vm-repair
Если вы ранее использовали команды
az vm repair
, примените все обновления к расширению vm-repair.az extension update -n vm-repair
Запустите
az vm repair create
. Эта команда создает копию диска ОС для неработающей виртуальной машины, создает виртуальную машину для исправления в новой группе ресурсов и подключает копию диска ОС. Виртуальная машина для исправления будет иметь тот же размер и регион, что и неработающая виртуальная машина. Используемые здесь группа ресурсов и имя виртуальной машины относятся к неработающей виртуальной машине. Если виртуальная машина использует Шифрование дисков Azure, используйте--unlock-encrypted-vm
для разблокировки зашифрованного диска, чтобы он был доступен при подключении к виртуальной машине восстановления. Дополнительные сведения см. в статье о том, что ADE включен на диске. Если необходимо устранить неполадки виртуальной машины в вложенной среде Hyper-V, используйте--enable-nested
и восстановите виртуальную машину, которая будет создана с включенной ролью Hyper-V вместе с вложенной виртуальной машиной с помощью копии диска ОС.
Внимание
Команды выполнения и восстановления потребуют ввода всех входных данных с использованием того же дела, что и в команде создания, запишите или обратитесь к тегам на виртуальной машине восстановления, чтобы узнать, что использовалось.
Пример восстановления виртуальной машины
az vm repair create -g MyResourceGroup -n myVM --repair-username username --repair-password 'password!234' --verbose
Восстановление виртуальной машины с помощью примера Вложенных Hyper-V
az vm repair create -g MyResourceGroup -n myVM --repair-username username --repair-password 'password!234' --enable-nested --verbose
Запустите
az vm repair run
. Эта команда запустит указанный скрипт исправления на подключенном диске через виртуальную машину для исправления. Если в руководстве по устранению неполадок, который вы используете, указан идентификатор выполнения, используйте его здесь. В противном случае можно использоватьaz vm repair list-scripts
для просмотра доступных сценариев восстановления. Используемые здесь группа ресурсов и имя виртуальной машины относятся к неработающей виртуальной машине, упоминавшейся на шаге 3. Дополнительные сведения о скриптах восстановления можно найти в библиотеке скриптов восстановления.az vm repair run -g MyResourceGroup -n MyVM --run-on-repair --run-id win-hello-world --verbose
При необходимости можно выполнить все необходимые действия по устранению рисков вручную с помощью виртуальной машины восстановления, а затем перейти к шагу 5.
Запустите
az vm repair restore
. Эта команда поменяет исходный диск ОС виртуальной машины на исправленный. Используемые здесь группа ресурсов и имя виртуальной машины относятся к неработающей виртуальной машине, упоминавшейся на шаге 3.az vm repair restore -g MyResourceGroup -n MyVM --verbose
Проверка и включение диагностики загрузки
В следующем примере на виртуальной машине myVMDeployed
в группе ресурсов myResourceGroup
включается расширение диагностики:
Azure CLI
az vm boot-diagnostics enable --name myVMDeployed --resource-group myResourceGroup --storage https://mystor.blob.core.windows.net/
Следующие шаги
- При возникновении проблем с подключением к виртуальной машине ознакомьтесь со статьей Устранение неполадок с подключением к удаленному рабочему столу на виртуальной машине Azure под управлением Windows.
- Для решения проблем с доступом к приложениям, выполняющимся на виртуальной машине, см. статью Устранение проблем с подключением к приложениям на виртуальных машинах в Azure.
- Дополнительные сведения об использовании Resource Manager вы найдете в статье Общие сведения об Azure Resource Manager.
Свяжитесь с нами для получения помощи
Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.