Восстановление виртуальной машины Linux с помощью команд восстановления виртуальной машины Azure
Если виртуальная машина Linux в Azure сталкивается с ошибкой загрузки или диска, возможно, потребуется выполнить устранение неполадок на самом диске. Распространенным примером является сбой обновления приложения, которое предотвращает успешную загрузку виртуальной машины. В этой статье описано, как использовать команды восстановления виртуальной машины Azure для подключения диска к другой виртуальной машине Linux, чтобы устранить ошибки, а затем перестроить исходную виртуальную машину.
Важно!
- Скрипты, приведенные в этой статье, применяются только к виртуальным машинам, которые используют 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 минут, вы можете выполнить команды локально. Для локального выполнения команд требуется 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 на диске.
Важно!
Для выполнения и восстановления потребуется ввести все входные данные в том же случае, что и в команде create, запишите теги на виртуальной машине восстановления, чтобы узнать, что было использовано.
Пример восстановления виртуальной машины
az vm repair create -g MyResourceGroup -n myVM --repair-username username --repair-password password1234 --verbose
Запустите
az vm repair run
. Эта команда запустит указанный скрипт восстановления на подключенном диске через виртуальную машину восстановления. Если в руководстве по устранению неполадок, который вы используете, указан идентификатор выполнения, используйте его здесь. В противном случае можно использовать дляaz vm repair list-scripts
просмотра доступных скриптов восстановления. Группа ресурсов и имя виртуальной машины, используемые здесь, относятся к нефункциональным виртуальным машинам, используемым на шаге 3. Дополнительные сведения о скриптах восстановления можно найти в библиотеке скриптов восстановления.az vm repair run -g MyResourceGroup -n MyVM --run-on-repair --run-id lin-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 как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по