Восстановление виртуальной машины Windows с помощью команд восстановления виртуальной машины Azure
Если виртуальная машина Windows в Azure сталкивается с ошибкой загрузки или диска, возможно, потребуется восстановить диск в автономном режиме. Распространенным примером является сбой обновления приложения, которое предотвращает успешную загрузку виртуальной машины. В этой статье описано, как использовать команды восстановления виртуальной машины Azure для автоматического подключения неисправного диска ОС к другой виртуальной машине Windows для восстановления в автономном режиме. С помощью этой процедуры неработованная диск ОС будет автоматически разблокирован на второй виртуальной машине, называемой виртуальной машиной восстановления, если диск зашифрован с помощью шифрования дисков Azure. При подключении диска к виртуальной машине восстановления можно исправить любые ошибки, а затем перестроить исходную виртуальную машину с восстановленным диском.
Важно!
- Скрипты, приведенные в этой статье, применяются только к виртуальным машинам, которые используют Azure Resource Manager.
- Для выполнения скрипта требуется исходящее подключение с виртуальной машины (порт 443).
- Одновременно может выполняться только один скрипт.
- Выполнение скрипта нельзя отменить.
- Максимальное время выполнения скрипта составляет 90 минут, после чего время ожидания истекает.
- Не изменяйте теги, созданные на виртуальной машине восстановления. Теги необходимы для правильной работы команды восстановления.
- Для виртуальных машин, использующих шифрование дисков Azure, поддерживаются только управляемые диски, зашифрованные одним проходным шифрованием (с KEK или без нее).
Общие сведения о процессе восстановления
Теперь вы можете использовать команды восстановления виртуальной машины Azure, чтобы изменить диск ОС для виртуальной машины, и вам больше не нужно удалять и повторно создавать виртуальную машину.
Чтобы устранить проблему с виртуальной машиной, выполните следующие действия.
- Запуск Azure Cloud Shell
- Выполните команду az extension add/update.
- Запустите команду az vm repair create.
- Запустите команду az vm repair run или выполните действия по устранению рисков.
- Запустите команду az vm repair restore.
Чтобы просмотреть все доступные команды и параметры восстановления виртуальной машины, см. раздел az vm repair.
Для выполнения команд требуется роль, которая может создавать следующие типы ресурсов в подписке:
- Группы ресурсов
- Виртуальные машины
- Теги ресурсов
- Виртуальные сети
- Группы безопасности сети
- Сетевые интерфейсы
- диски;
- Общедоступные IP-адреса (необязательно)
Пример процесса восстановления
Запуск Azure Cloud Shell
Cloud Shell Azure — это бесплатная интерактивная оболочка, которую можно использовать для выполнения действий, описанных в этой статье. Он включает стандартные инструменты 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 и нажмите клавишу ВВОД, чтобы запустить его.
Если вы предпочитаете устанавливать и использовать CLI локально, для этого краткого руководства требуется 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 reference.Если вы используете
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 вместе с вложенной виртуальной машиной с помощью копии диска ОС.
Важно!
Для выполнения и восстановления потребуется ввести все входные данные в том же случае, что и в команде create, запишите теги на виртуальной машине восстановления, чтобы узнать, что было использовано.
Пример восстановления виртуальной машины
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/
Дальнейшие действия
- Если у вас возникли проблемы с подключением к виртуальной машине, см. статью Устранение неполадок подключений по протоколу RDP к виртуальной машине Azure.
- Проблемы с доступом к приложениям, запущенным на виртуальной машине, см. в статье Устранение неполадок с подключением приложений на виртуальных машинах в Azure.
- Дополнительные сведения об использовании Resource Manager см. в статье Общие сведения об azure Resource Manager.
Свяжитесь с нами для получения помощи
Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по