Истории успеха наших клиентов — лучшие проекты
Вход/ Регистрация

IP-KVM через QEMU

1922
7 минут чтения
Средний рейтинг статьи: 2

Работать с серверами без KVM иногда затруднительно. Например, когда приходится разбираться со сбоями операционной системы. В подобных ситуациях помогает решение KVM-over-IP, с которым упрощаются такие операции, как перезагрузка сервера, проверка корректности работы ОС или даже BIOS удаленного компьютера. Все операции осуществляются даже при недоступности внешнего IP по протоколам RDP и SSH (используется специально выделенный адрес).

IP Kvm Через Qemu

Немного терминологии

Гипервизор KVM (Kernel-based Virtual Machine) – это отдельный модуль, своеобразный менеджер виртуальной машины. Он позволяет запускать различный софт, «скрывая» от него все аппаратное обеспечение сервера. Фактически это «прокладка» между «железом» и программами, которые при такой схеме работы являются гостевыми. Зато у самого KVM есть низкоуровневый доступ ко всем ресурсам – центральному процессору, оперативной памяти, накопителям.

В связке KVM+QEMU удобно пользоваться QEMU Monitor, текстовым интерфейсом, через который пользователь получает данные по запущенным виртуальным машинам и может менять их параметры в процессе эксплуатации.

В паре с ним часто используют относительно «легкий» эмулятор QEMU. Он позволяет запускать операционные системы, разработанные под «другую» архитектуру. Например, решения под DOS или Windows устанавливать на устройства с процессором ARM или инсталлировать программное обеспечение, которое рассчитано на поддержку Intel VT-x/AMD SVM на устаревших процессорах, разработанных еще до появления этих технологий.

Подключаемся к удаленному KVM

Вариант хорош еще и тем, что доступ к графическому интерфейсу виртуальной машины работает через QEMU VNC, защищенный канал с передачей данных в зашифрованном виде. Чтобы получить его, достаточно воспользоваться штатными средствами IPMI или Intel vPro. Правда, более надежен способ с подключением внешних устройств типа IP-KVM. С ними проще исправлять критические ошибки благодаря функции KVM-over-IP, позволяющей контролировать «железо» сервера.

Особенности:

  1. Образ восстановления, которым восстанавливают работоспособность, является системой с полноценным функционалом.
  2. Он позволяет запускать любые категории приложений, включая виртуальные машины с предустановленной платформой Linux.
  3. В качестве дисков для виртуальной машины указывают реальные накопители сервера, где под работу автоматически резервируется часть объема.

В операционных системах на базе Linux последние представлены блочными устройствами вида dev/sdX. С ними пользователь обращается как со стандартными файлами системы. Если использованы гипервизоры QEMU или VirtualBox, появляется возможность обращения напрямую к физическим накопителям на сервере. Правда, такой способ требует относительно больших аппаратных ресурсов, например не менее 4 ГБ оперативной памяти.

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

Прежде чем появится возможность воспользоваться функцией восстановления, необходимо создать образ восстановления. Предварительно желательно обновить компоненты операционной системы и установить программное обеспечение QEMU (предпочтительно использовать в паре с аппаратной виртуализацией в режиме KVM QEMU). Рассмотрим пример на базе FreeBSD, в которой имеется пакетный менеджер Pacman.

Последовательность действий:

  1. Ввести команду pacman -Suy – проверка обновлений ОС.
  2. Ввести команду pacman -S qemu – инсталляция модуля QEMU.

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

Запускаем виртуальную машину

Особенность виртуализации состоит в том, что пользователь самостоятельно выбирает количество ресурсов, выделяемых для работы виртуальной машины. Главное, чтобы значения не превышали физических параметров. Этот момент уточняется в условиях тарифов timeweb.cloud, где арендуется сервер. В нашем тесте выделим под ВМ 2 процессорных ядра, 2 ГБ оперативной памяти и 2 накопителя, расположенных по пути /dev/sda и /dev/sdb.

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

    

 Если процесс запуска прошел без сбоев, на экране компьютера отразится надпись:

    

Перед первым подключением к виртуальной машине KVM понадобится установить пароль доступа к системе. В случае с модулем QEMU придется ограничить набор символов количеством 8, более длинные пароли программное обеспечение не поддерживает. Выполняется настройка такой командой:

    

На практике следует заменить звездочки собственной комбинацией. После сохранения изменений к серверу получится подключиться через любую утилиту для удаленного доступа, например Remmina, которая оптимальна при использовании VNC-канала. В настройках достаточно указать прямой IP-адрес и пароль для подключения к серверу. Встроенный функционал потенциально позволить увидеть все ошибки, возникающие при запуске операционной системы.

Инсталлируем операционную систему

В рамках подготовки сервера для создания образа для восстановления остается установить систему, на платформе которой впоследствии предстоит работать (устанавливать прикладные приложения и обрабатывать пользовательские данные). На QEMU в Linux можно установить любую, хоть Linux-совместимую, хоть Windows, смотря какие задачи предстоит решать пользователю. Оборудование вроде KN9108, 8-портового KVM Over the NET, позволит управлять минимум 8 серверами.

Последовательность действий по установке ОС:

1. Выделить побольше оперативной памяти, чтобы вместился создаваемый образ:

    

2. Загрузить установочный образ операционной системы.

    

3. Запустить виртуальную машину:

    

Если теперь подключиться через VNC-клиент, пользователь увидит загрузочное меню образа. Он будет подключен как привод D согласно команде boot d. Все система готова к эксплуатации, в том числе инсталляции прикладных приложений, загрузке пользовательских данных. Примерно та же последовательность действий применяется, если система KVM ставится на Windows Server 2019 и другие платформы. 

Заключение

Приведенный пример создания FreeBSD KVM Host использует минимальные ресурсы сервера, не предъявляет особых требований к арендованным мощностям (не зависит от выбранного тарифа) и одновременно представляет собой эффективное решение для управления удаленной машиной при возникновении нештатных ситуаций.

1922
7 минут чтения
Средний рейтинг статьи: 2

Читайте также

Хотите внести свой вклад?
Участвуйте в нашей контент-программе за
вознаграждение или запросите нужную вам инструкцию
img-server