Назад | Перейти на главную страницу

Создание и развертывание виртуального устройства Linux

Я заинтересован в том, чтобы упаковать программный продукт, состоящий из большого стека программного обеспечения Linux, как так называемый "виртуальное устройство"во избежание болезненной и болезненной процедуры установки. Мои потребности, вероятно, аналогичны требованиям автора этот вопрос и ответы здесь были полезны, но у меня есть некоторые конкретные вопросы.

Приложение, которое я пытаюсь распространить, состоит из нескольких приложений rails и некоторых других серверов, демонов и заданий, которые необходимо запускать через cron и т. Д. В настоящее время оно работает на сервере Ubuntu.

  1. Каков наилучший доступный в настоящее время способ создать и упаковать виртуальную машину, подобную описанной выше? Я смотрел на JeOS который кажется устаревшим, но имеет некоторые учебные пособия написано о процессе. Также очевидно Открытый формат виртуализации хорошо подходит для распространения виртуальных устройств, но я не могу найти никаких руководств по созданию такого образа.

  2. Как мы будем распространять образ и обновления таким образом, чтобы сохранялись пользовательские данные?

Сначала я отвечу 2): если вы настроили виртуальную машину на 2 виртуальных диска, вы можете разместить ОС и любые обновляемые компоненты на одном диске, а все пользовательские данные - на другом. Для обновления с сохранением пользовательских данных просто отправьте обновление с диска ОС.

Что касается 1): если вы последуете моему предложению для 2, вы захотите найти формат, в котором виртуальные диски легко заменяются по отдельности. Вы можете добиться этого с помощью qemu / kvm, например, qcow2, но, вероятно, существуют и другие форматы, некоторые из которых может быть проще запустить для пользователей, чем qemu / kvm. Если вы используете облачный стек, такой как OpenNebula, для запуска виртуальных машин вместо того, чтобы просить пользователей запускать виртуальные машины самостоятельно, qemu-kvm с 1) должен быть очень осуществимым.