Автоматическое восстановление Linux в Azure (ALAR) для исправления виртуальной машины Linux
Область применения: ✔️ виртуальные машины Linux
При следующем выполнении восстановления на виртуальной машине Linux Azure можно автоматизировать задание, поместив скрипты автоматического восстановления Azure (ALAR) для работы. Вам больше не нужно запускать задание вручную. Эти сценарии упрощают процесс восстановления и позволяют даже неопытным пользователям легко восстановить виртуальную машину Linux.
ALAR использует расширение восстановления виртуальной машины, описанное в разделе "Восстановление виртуальной машины Linux" с помощью команд восстановления виртуальной машины Azure.
ALAR охватывает следующие сценарии восстановления:
- Ошибка неправильно сформированного /etc/fstab синтаксиса отсутствует диск
- Поврежденная строка инициализации или отсутствует в строке /boot/grub/grub.cfg
- Последнее установленное ядро не загружается
- Последовательная консоль и сериал GRUB неправильно настроены или отсутствуют
- Повреждена установка или конфигурация GRUB/EFI
Действия ALAR
fstab
Это действие удаляет строки в файле /etc/fstab , которые не нужны для загрузки системы. Во-первых, копия исходного файла создается для ссылки. При запуске ОС администратор может изменить fstab, чтобы исправить ошибки, которые не позволили перезагрузке системы раньше.
Дополнительные сведения о проблемах с неправильно сформированным файлом /etc/fstab см. в разделе "Устранение неполадок с виртуальной машиной Linux" из-за ошибок fstab.
Backports
Это действие изменяет ядро по умолчанию. Скрипт заменяет сломанное ядро ранее установленной версией.
Дополнительные сведения о сообщениях, которые могут быть зарегистрированы в последовательной консоли для событий запуска, связанных с ядром, см. в статье "Как восстановить виртуальную машину Linux Azure из проблем с загрузкой, связанных с ядром".
initrd
Это действие можно использовать для исправления инициализации или инициализации, поврежденной или неправильно созданной.
Чтобы правильно создать initrd или initramfs, добавьте модули hv_vmbus
и hv_netvsc
hv_storvsc
образ.
Проблемы запуска, связанные с initrd, могут отображаться в виде следующих зарегистрированных симптомов.
В обоих случаях перед записью ошибок регистрируется следующая информация.
serialconsole
Это действие исправляет неправильную или неправильно сформированную конфигурацию последовательной консоли для ядра Linux или GRUB. Мы рекомендуем выполнить это действие в следующих случаях:
- Меню GRUB не отображается при запуске виртуальной машины.
- Сведения, связанные с операционной системой, не записываются в последовательную консоль.
grubfix
Это действие можно использовать для переустановки GRUB и повторного создания файла grub.cfg .
efifix
Это действие можно использовать для переустановки необходимого программного обеспечения для загрузки с виртуальной машины 2-го поколения. Файл grub.cfg также повторно создается.
аудит
Если виртуальная машина завершает работу сразу после запуска из-за конфигурации управляющей программы аудита, используйте это действие. Это действие изменяет конфигурацию управляющей программы аудита (в файле /etc/audit/auditd.conf ), изменив HALT
значение, настроенное для любых action
параметров SYSLOG
, что не заставляет систему завершить работу. В среде диспетчера логических томов (LVM), если логический том, содержащий журналы аудита, заполнен и в группе томов есть доступное пространство, логический том также будет расширен на 10 % от текущего размера. Однако если вы не используете среду LVM или нет свободного места, изменится только файл конфигурации.
Внимание
Это действие изменит состояние безопасности виртуальной машины, изменив конфигурацию управляющей программы аудита, чтобы устранить проблему завершения работы виртуальной машины. После запуска и доступности виртуальной машины необходимо вернуть конфигурацию управляющей программы аудита в исходное состояние. Для этого создается резервная копия файла auditd.conf в файле /etc/audit с помощью действия ALAR.
Использование ALAR
Скрипты ALAR используют команду расширения run
восстановления и ее --run-id
параметр. Значение параметра автоматического --run-id
восстановления.linux-alar2
Чтобы исправить виртуальную машину Linux с помощью скрипта ALAR, выполните следующие действия.
Создайте виртуальную машину спасения:
az vm repair create --verbose -g RG-NAME -n VM-NAME --repair-username RESCUE-UID --repair-password RESCUE-PASS --copy-disk-name DISK-COPY
Запустите сценарий с одним из действий ALAR на виртуальной машине спасения:
az vm repair run --verbose -g RG-NAME -n VM-NAME --run-id linux-alar2 --parameters ACTION --run-on-repair
Переключите диски ОС и удалите временные ресурсы:
az vm repair restore --verbose -g RG-NAME -n VM-NAME
Примечание.
Исходные и новые диски не будут удалены.
Ниже приведены объяснения параметров в приведенных выше командах:
RG-NAME
: имя группы ресурсов, содержащей сломанную виртуальную машину.VM-NAME
: имя неисправной виртуальной машины.RESCUE-UID
: пользователь, созданный на виртуальной машине восстановления для входа. Это эквивалент пользователя, созданного на новой виртуальной машине в портал Azure.RESCUE-PASS
: пароль дляRESCUE-UID
, заключенный в одинарные кавычки. Например:'password!234'
.DISK-COPY
: имя копии диска ОПЕРАЦИОННОй системы, которая будет создана на неисправной виртуальной машине.ACTION
: выполняемая скриптом задача, напримерinitrd
илиfstab
.Примечание.
Вы можете передать один или несколько операций восстановления. Для нескольких операций очертите их с помощью запятых без пробелов, таких как
fstab,initrd
.
Ограничение
Классические виртуальные машины не поддерживаются.
Следующие шаги
Если вы испытываете ошибку или хотите запросить улучшение средства ALAR, опубликуйте комментарий на GitHub.
Вы также можете найти последние сведения о средстве ALAR на GitHub.
Свяжитесь с нами для получения помощи
Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.