Компания Siemens представила (https://lore.kernel.org/lkml/6b9ac0eb-653c-1d24-9126-6d138ed.../) выпуск свободного гипервизора Jailhouse 0.10 (https://github.com/siemens/jailhouse), компоненты для гостевых систем которого уже включены в состав основного ядра Linux. Гипервизор поддерживает работу на системах x86_64 с расширениями VMX+EPT или SVM+NPT (AMD-V), а также на процессорах ARMv7 (Banana Pi, NVIDIA Jetson TK1, Versatile Express с Cortex-A15 или A7) и ARMv8/ARM64 (AMD Seattle, LeMaker HiKey, NVIDIA Jetson TX1, Xilinx ZCU102 ) с расширениями для виртуализации. Код проекта распространяется (https://github.com/siemens/jailhouse) под лицензией GPLv2.
Гипервизор реализован в виде модуля для ядра Linux и обеспечивает виртуализацию на уровне ядра. Для управления изоляцией используются предоставляемые современными CPU аппаратные механизмы виртуализации. Отличительными особенностями Jailhouse являются легковесная реализация и ориентация на привязку виртуальных машин к фиксированному CPU, области ОЗУ и аппаратным устройствам. Такой подход позволяет на одном физическом многопроцессорном сервере обеспечить работу нескольких независимых виртуальных окружений, каждое из которых закреплено за своим процессорным ядром.При жесткой привязке к CPU накладные расходы от работы гипервизора сводятся к минимуму и существенно упрощается его реализация, так как нет необходимости выполнения сложного планировщика распределения ресурсов - выделение отдельного ядра CPU позволяет гарантировать отсутствие выполнения на данном CPU других задач. Плюсом подобного подхода является возможность обеспечить гарантированный доступ к ресурсам и предсказуемую производительность, что делает Jailhouse отличным решением для создания решений виртуализации для задач режима реального времени. Минусом является ограниченная масштабируемость, упирающаяся в число ядер CPU.
В терминологии Jailhouse виртуальные окружения именуются "камерами" (cell). Внутри камеры система выглядит как однопроцессорный сервер, показывающий производительность близкую (https://docs.google.com/file/d/0B6HTUUWSPdd-Zl93MVhlMnRJRjg/...) к производительности выделенного ядра CPU. В камере может быть запущено окружение произвольной операционной системы, урезанные окружения для запуска одного приложения и специально подготовленные отдельные приложения, предназначенные для решения задач реального времени. Конфигурация задаётся в .cell-файлах (https://github.com/siemens/jailhouse/blob/master/configs/), определяющих выделяемые окружению CPU, регионы памяти и порты ввода/вывода.
В новом выпуске
- Для защиты от атак Spectre/L1TF задействована система привязанных к CPU таблиц страниц памяти, позволяющая не допустить утечку данных из камер в момент выполнения кода гипервизора;
- Добавлена поддержка фреймбуфера EFI, который может выступать в роли альтернативы UART;
- Предложен новый биндинг на языке Python - "pyjailhouse", предоставляющий API для управления гипервизором;
- Удалён код для поддержки VGA (рекомендуется использовать фреймбуфер EFI) и платформы VExpress (виртуальный ARMv7 для QEMU);
- Команда "jailhouse hardware check" теперь не требует наличия конфигурации системы;
- В демонстрационных окружениях (inmates) все настройки, выполняемые на этапе сборки, преобразованы в файлы конфигурации камер и runtime-параметры запуска. В обработчиках прерываний для процессоров ARM обеспечено сохранение/восстановление регистров;
- Для платформ ARM представлена базовая поддержка SMCCC (http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc....) (SMC Calling Convention);- Добавлена поддержка более 8 ARM CPU с GICv3 (ARM Generic Interrupt Controller);
В следующем выпуске планируется появление нескольких реализаций IOMMU для ARM64, включение поддержки платы Xilinx Ultra96, стандартизация программного интерфейса для обмена данными между камерами, поддержка virtio поверх транспортов на базе разделяемой памяти.URL: https://lore.kernel.org/lkml/6b9ac0eb-653c-1d24-9126-6d138ed.../
Новость: https://www.opennet.me/opennews/art.shtml?num=49329
Как его установить и протестировать? Кто-нибудь смотрел?
Чем оно лучше lxc?
Глупый вопрос. Запусти в lxc напримео openbsd или другую ось на выбор. Правильнее сравнивать сабж с qemu
Скорее с Xen.
Docker
Ну запусти в докере что-то отличное от линухи :-D Посмотрим.
> Ну запусти в докере что-то отличное от линухи :-D Посмотрим.Например это? https://www.docker.com/products/windows-containers
вообще все что существует лучше lxc. lxc пока самое дно контейнеризации, тот же openvz лучше.
И чем же оно дно, уважаемый эксперт по вопросам виртуализации?
lxc днище днищенское
попробуй стартани болле 10 контейнеров с автостартом и перегрузи хост
нае%шся и напляшешься - бага в систем-д
> lxc днище днищенское
> бага в систем-д
> lxc днище днищенское
> lxc днище днищенскоеСлава Леннарту Великолепному!
А как же systemd-nspawn?
>А как же systemd-nspawn?Пользуемся в проде около двух лет, нареканий нет. LXC не прижился, но в то время, когда мы его тестировали, он был в крайне зачаточном состоянии, пригодном разве что для экспериментов на локалхосте.
> x86_64 с расширениями ..., а также на процессорах ARMv7 ... и ARMv8/ARM64 ... с расширениями для виртуализацииА что там с интеловским 80-ядерным процессором?
Сименс хорошо делает трамваи; из всего остального, за что бы они не брались, все равно трамвай получается. А зачем трамваю 80-ядерный процессор поддерживать?
Тогда уж нужно было назвать гипервизор "Депо", контейнеры - вагонами, а их конфигурации - маршрутами.
Схемы маршрутов.
Ну ещё хорошо делает оборудование для энергетики: газовые турбины, терминалы защит.
Дилетантская логика. По ней можно делать, например, такие (некорректные) выводы: Samsung производит хорошие стиральные машинки и скороварки. Значит ли это, что телефоны у Samsung получаются как скороварки?
Скажите, а где там было про Самсунг???Нет, это означает только то что когда Сименс тоже делал телефоны, они таки тоже получались вполне как трамваи, компактные и прочные но с довольно тупым UI и при этом очень тяжелые, потому что pcb была защищена _стальным_ экраном, и воды боялись невероятно, от пары капель дорожки на плате коротили и растворялись.
И сервера Сименс когда-то делал, тоже похожим образом, и даже свой юникс делал в том-же духе - у их продуктов тройной запас прочности, но функциональностью они обычно не блещут. Не то что бы это плохо, просто чудесного хайтека от них ждать не стоит, как минимум в продакшен версиях.
>>> ...
>>> воды боялись невероятно, от пары капель дорожки на плате коротили и растворялись
>>> ...
>>> у их продуктов тройной запас прочностиписака знает что-нибудь про взаимоисключающие параграфы?
https://en.wikipedia.org/wiki/IP_Code - прочность это механика, класс защиты это всегда отдельный параграф
> Значит ли это, что телефоны у Samsung получаются как скороварки?Ну они очень быстро нагреваются и некоторые модели даже "выпускают пар" через образовавшееся отверстие в корпусе.
Так что да, значит.
Если бы их ядерное оборудование обладало хотя бы защищённостью трамвая, они бы не обделались так со стухнетом в Иране.
А он не влезает в x86_64 ?
Не влезает в допустимую площадь кристалла, если каждое ядро x86_64.
Название прям "весёлое", с намёком..
#тюрьмадом
https://music.yandex.ru/album/2840711/track/24385955?from=se...
Не открывает сайт.
Да привязка к одному ядру лучше, чем решение насущих проблем с дефалтным планированием NUMA в Linux.
Бесит, когда крупные типа говнокомпании придумывают свои решения, которые сделали до них - там что, манагеры тупо воруют давно реализованные идеи?
Какое другое открытое и свободное решение (рабочее и старше Jailhouse) позволяет запустить на одном ядре многоядерного процессора привычный GNU/Linux, а на другом - bare metall программку, которая будет в реальном времени что-то обрабатывать и пересылать в Линукс для хранения/обработки/визуализации?
https://blog.xenproject.org/2015/02/02/getting-started-with-...
...что не значит что сабж не нужен, всегда хорошо иметь альтернативу
Jailhouse: первый коммит: конец 2013-го года, первый релиз: 29.08.2014.Статья о запуске RTOS на Xen 2015-го года: "Over the last year, Galois has been trying to simplify one aspect of this challenge by porting an open-source RTOS, FreeRTOS, to Xen." Т.е. работа велась в 2014-ом году.
Таким образом, грубо говоря, работа производилась где-то параллельно с Jailhouse.
... спор о том, что готовое открытое свободное рабочее решение уже было до Jailhouse.
да кто же спорит, пусть будут оба, всем только лучше. XEN теоретически умел и раньше выделять гостю целое ядро и больше не мешать, на практике видимо этим особо никто не пользовался пока его году в 2013-2014 на ARM не портировали. Galois уже позже появился, там речь конкретно о порте FreeRTOS.
PowerVM?