Загрузка…
Этот раздел разбирает стек виртуализации на Linux - KVM, libvirt, QEMU - по слоям. Каждый сценарий показывает одно действие пользователя и одну цепочку вида «пользователь ввёл команду → сервис сделал → QEMU сделал → ядро сделало → что осталось на диске и в памяти».
Эта страница - своего рода эксперимент, в котором автор пытается разобраться, как сервисы виртуализации работают «под капотом» в системе.
Что вы найдёте на этой странице?
- Двадцать действий с виртуальной машиной, разбитых на пять групп: создание и запуск, работа и остановка, снимки, бэкапы, обслуживание;
- Для каждого действия - команда
virsh, вызов libvirt API и, где допустимо, QMP-команда, которой libvirt обращается к QEMU; - Под командой - пошаговое описание процесса, и у каждого шага видно, кто его сделал: пользователь, сервис libvirt, QEMU, KVM, диск или гость;
- Под шагами - четыре карточки: чем закончится действие, какие артефакты появятся и исчезнут, что может сломаться, ссылки на документацию.
Как устроен один сценарий?
- Команда - то, что вводит пользователь, какой вызов уходит в libvirt и что отправляется в QEMU по QMP;
- Пошаговый процесс, где сверху вниз идут пользователь, libvirt, QEMU, KVM, диск и память, гость;
- Итог выполнения команды - чем закончится, что появится и что исчезнет;
- Часто встречающиеся проблемы и источники документации.
Как это использовать?
Для страницы нужен JavaScript: сценарии собираются на стороне браузера. Кнопки под командой управляют проигрыванием процесса - шаг вперёд, шаг назад, автопрокрутка (3-4 секунды на шаг) и возврат в начало.
Стрелки ← и → перемещают по шагам, пробел ставит на паузу или запускает воспроизведение, R переводит демонстрацию в начало сценария, стрелки ↑ и ↓ переключают сценарии. Клик по шагу в ленте открывает именно его.
Прямая ссылка вида #7/3 открывает седьмой сценарий на третьем шаге -
такой ссылкой удобно делиться.
Откуда взята информация?
Сценарии сверены с документацией: KVM API, спецификация QMP, live block operations, формат qcow2, libvirt API и kbase (захват состояния домена, миграция, снимки). Ссылки на конкретные разделы приведены в карточке «Источник» для каждого сценария.