![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Поскольку приходится на работе активно пользоваться виртуальными машинами, допинал до более менее полной задуманной фукциональности свою легковесную обертку над qemu/kvm.
Хотя и позиционировалось оно как Virtual Workstation, возможность закрыть GUI не закрывая виртуальной машины
(или запустить машину, не стартуя сразу GUI) есть. В качестве GUI-протокола используется SPICE а в качестве клиента - remote viewer.
Основная идея - никаких лишних процессов и прочих эксцессов, а для копирования виртуальной машины с хоста на хост нужно просто скопировать каталог со стартовым скриптом и образами дисков.
Практика показала, что встроенная создавалка VM все же нужна. Дописать полноэкранного текстового визарда я не дописал, но создание машины с более-менее осмысленной конфиуграцией по умолчанию и возможность её модифицировать, указывая опции командной строки есть. Можно при создании указать готовый образ диска. Он будет скопирован.
Есть возможность запуска QEMU c ключиком -snapshot, когда образ диска не изменяется, а все изменения пишутся во временный файл, стираемый при шатдауне виртуальной машины.
Просто работа со снапшотами дисков тоже есть.
Возможнсоть цеплять-отцеплять iso-образ к виртуальному CDROM на ходу.
Работа с USB-девайсами, с которой все начиналась, оказалась наименее востребованной, поэтому самая сырая и недоотлаженная. (в смысле сам я, если надо пользуюсь usb redirection в spice-клиенте)
Зато есть возможность записывать воспроизводимое виртуальной машиной аудио и делать скриншоты даже с машины, к которой в текущий момент spice-клиент не прицеплен.
Поддерживается два варианта работы с сетью - user network и цепляние к существующему bridge.
Чего не доделано, но планируется:
1. При обнаружении при запуске сохраненного состояния VM восстановления на него (аналог гибернации, но средствами qemu)
2. Подключение образа диска к VM в качестве USB-флэшки (благо QEMU такое умеет).
3. Создание виртуальной машины путем копирования конфигурации с имеющейся
4. Добавление жесткого диска (при этом команды работы со снапшотами уже имеют в виду что дисков у машины может быть много, и пользователь может в стартовый скрипт вписать второй диск руками, если знает что делает.
5. Добавление сетевой карты - аналогично
6. Массовые операции с vm - автостарт и шатдаун всей пачки при завершении шатдауне хоста.
7. Брать параметры создаваемой VM по умолчанию из конфигурационного файла, а не прошитые в коде.
8. Документация
Обитает оно на https://www.wagner.pp.ru/fossil/vws
Сертификат УЦ, которым подписан сертификат сайта берут здесь, а gpg ключ которым подписан фингерпритнт сертификата УЦ - на обычных keyserver-ах.
Хотя и позиционировалось оно как Virtual Workstation, возможность закрыть GUI не закрывая виртуальной машины
(или запустить машину, не стартуя сразу GUI) есть. В качестве GUI-протокола используется SPICE а в качестве клиента - remote viewer.
Основная идея - никаких лишних процессов и прочих эксцессов, а для копирования виртуальной машины с хоста на хост нужно просто скопировать каталог со стартовым скриптом и образами дисков.
Практика показала, что встроенная создавалка VM все же нужна. Дописать полноэкранного текстового визарда я не дописал, но создание машины с более-менее осмысленной конфиуграцией по умолчанию и возможность её модифицировать, указывая опции командной строки есть. Можно при создании указать готовый образ диска. Он будет скопирован.
Есть возможность запуска QEMU c ключиком -snapshot, когда образ диска не изменяется, а все изменения пишутся во временный файл, стираемый при шатдауне виртуальной машины.
Просто работа со снапшотами дисков тоже есть.
Возможнсоть цеплять-отцеплять iso-образ к виртуальному CDROM на ходу.
Работа с USB-девайсами, с которой все начиналась, оказалась наименее востребованной, поэтому самая сырая и недоотлаженная. (в смысле сам я, если надо пользуюсь usb redirection в spice-клиенте)
Зато есть возможность записывать воспроизводимое виртуальной машиной аудио и делать скриншоты даже с машины, к которой в текущий момент spice-клиент не прицеплен.
Поддерживается два варианта работы с сетью - user network и цепляние к существующему bridge.
Чего не доделано, но планируется:
1. При обнаружении при запуске сохраненного состояния VM восстановления на него (аналог гибернации, но средствами qemu)
2. Подключение образа диска к VM в качестве USB-флэшки (благо QEMU такое умеет).
3. Создание виртуальной машины путем копирования конфигурации с имеющейся
4. Добавление жесткого диска (при этом команды работы со снапшотами уже имеют в виду что дисков у машины может быть много, и пользователь может в стартовый скрипт вписать второй диск руками, если знает что делает.
5. Добавление сетевой карты - аналогично
6. Массовые операции с vm - автостарт и шатдаун всей пачки при завершении шатдауне хоста.
7. Брать параметры создаваемой VM по умолчанию из конфигурационного файла, а не прошитые в коде.
8. Документация
Обитает оно на https://www.wagner.pp.ru/fossil/vws
Сертификат УЦ, которым подписан сертификат сайта берут здесь, а gpg ключ которым подписан фингерпритнт сертификата УЦ - на обычных keyserver-ах.
no subject
Date: 2015-12-17 03:19 pm (UTC)no subject
Date: 2015-12-17 06:23 pm (UTC)no subject
Date: 2015-12-17 03:25 pm (UTC)Давненько висит задачка. Есть виндовая программа для голосового чата, написанная через anus и потому требующая админа. Есть рабочая машина, с которой удобно бы юзать ту виндовую программу, но такую дырку в секурити я туда не пущу. Была идея - на Linux сервере в KVM/QEMU запустить WinXP с той программой, притом тупо не сохранять state этой виртуальной машины, поэтому тема заражения малварью не будет волновать совсем (любая малварь исчезает с окончанием сессии). И через что угодно ремотное юзать с рабочей машины Но - USB микрофон критичен.
no subject
Date: 2015-12-17 05:20 pm (UTC)Или на usb- микрофоне есть какие-то нестандартные кнопки, плэтому критично, чтобы программа, запущенная в виртуалке, видела его именно как usb-устройство?
Но это тоже делается средствами "чего-нибудь ремотного".
no subject
Date: 2015-12-18 10:05 am (UTC)здесь.