Компания Amazon представила (https://aws.amazon.com/ru/blogs/opensource/firecracker-open-... новую технологию виртуализации Firecracker (https://firecracker-microvm.github.io/), обеспечивающую работу виртуальных машин с минимальными накладными расходами. Платформа предоставляет средства для создания и управления изолированными окружениями и сервисами, построенными с использованием бессерверной модели (https://ru.wikipedia.org/wiki/%D0%91%D0%... разработки. Код проекта написан на языке Rust и распространяется (https://github.com/firecracker-microvm/firecracker/) под лицензией Apache 2.0.
Firecracker предоставляет для запуска задач легковесные виртуальные машины, именуемые microVM, для полноценной изоляции которых применяются технологии аппаратной виртуализации, но при этом обеспечивается производительность и гибкость на уровне обычных контейнеров. Основу Firecracker составляет монитор виртуальных машин (VMM), использующий встроенный в ядро Linux гипервизор KVM.
VMM основан на наработках написанного на языке Rust проекта crosvm (https://chromium.googlesource.com/chromiumos/platform/crosvm/), развиваемого (https://www.opennet.ru/opennews/art.shtml?num=48563) компанией Google для запуска Linux в ChromеOS. В настоящее время кодовые базы crosvm и Firecracker разделились, но Amazon планирует передавать в upstream исправления, вносимые в заимствованные компоненты.
Выполняемое внутри виртуальных машин программное окружение урезано и содержит только минимальный набор компонентов. Для экономии памяти, сокращения времени запуска и повышения безопасности в окружениях запускается модифицированное ядро Linux, из которого исключено всё лишнее, в том числе сокращена функциональность и урезана поддержка устройств. При запуске с урезанным ядром дополнительный расход памяти по сравнению с контейнером составляет менее 5 Мб. Время с момента запуска microVM до начала выполнения приложения не превышает 125мс. MicroVM могут создаваться с интенсивностью до 150 окружений в секунду.
Возможен запуск в виртуальных машинах microVM и обычных окружений на базе штатного ядра Linux (поддерживаются системы с ядром 4.14 и новее).Для управления виртуальными окружениями в пространстве пользователя выполняется фоновый процесс Virtual Machine Manager, предоставляющий RESTful API, который может применяться для выполнения следующих функций:
- Настройка microVM, выбор шаблонов CPU (C3 и T2), определение числа виртуальных процессоров (vCPU) и размера памяти;
- Добавление сетевых интерфейсов в microVM;
- Добавление дисковых разделов в microVM, доступных как на запись, так и в режиме только для чтения. В хост окружении разделы сохраняются в отдельных файлах (симуляция блочного устройства в файле);
- Обновление параметров блочных устройств без остановки работы виртуальной машины (например, для изменения размера раздела);
- Изменение файлов для блочных устройств до или после загрузки гостевой системы;
- Задание ограничений на пропускную способность и интенсивность выполнения операций для устройств virtio;
- Настройках отражения информации в логах и сохранение метрик для мониторинга;
- Добавление сокетов vsock в microVM;
- Запуск microVM с указанным ядром и образом корневой ФС и настройками.
- Остановка работы microVM;
- Из встроенных возможностей отмечается предоставление дополнительной памяти и мощностей CPU в случае нехватки предоставленных ресурсов, а также запуск фонового процесса в режиме изоляции со сбросом привилегий и применением cgroup/namespace/seccomp.
Проект разработан в подразделении Amazon Web Services с целью повышения производительности и эффективности работы платформ AWS Lambda и AWS Fargate. Для Firecracker подготовлены runtime-модули для интеграции c популярными инструментариями для управления изолированными контейнерами. Ожидается появление поддержки таких платформ, как Kubernetes, Docker и Kata Containers. Первичной областью применения платформы называется использование для создание FaaS-систем (Функция как услуга (https://ru.wikipedia.org/wiki/%D0%A4%D1%... предлагающих модель бессерверных вычислений.
Суть метода FaaS заключается в том, что разработчик реализует логику на уровне отдельных функций, не заботясь о создании и управлении инфраструктурой для запуска приложений, и не привязываясь к конкретным серверным приложениям и необходимым для их работы облачным окружениям. Разработка ведётся без создания монолитных приложений, на уровне подготовки набора небольших отдельных функций, каждая их которых обеспечивает обработку определённого события и рассчитана на обособленную работу без привязки к окружению (stateless, результат не зависит от прошлого состояния и содержимого ФС).Функции запускаются только при возникновении необходимости и сразу после обработки события завершают свою работу, т.е. в отличие от микросервисов не требуется постоянное наличие запущенных окружений, потребляющих ресурсы на холостом ходу. FaaS-платформа сама размещает подготовленные функции, организует управление и обеспечивает масштабирование окружений, необходимых для выполнения подготовленных функций.
URL: https://aws.amazon.com/ru/blogs/opensource/firecracker-open-.../
Новость: https://www.opennet.ru/opennews/art.shtml?num=49667
Ура. А то надоел Docker
Мне тоже надоел. Один и тот же логотип докера уже во сне сниться. У файркракера логотип поинтереснее будет
А что там с обоями, есть какие-то интересные?
>Остановка работы microVM;Замечательная функция. Странно, что отдельно не указали возможность сохранения настроек VM и её удаления.
> Замечательная функция. Странно, что отдельно не указали возможность сохранения настроек VM и
> её удаления.потому что ее забыли/не успели нашлепать. Ничего, через пару релизов поправим - щас только хотя бы перезагружаться сперва научим, а потом и останавливать. Сохранять настройки? Хм, а это интересная идея...
- А не написать бы нам что-нибудь на Расте?
- Давай, а что сейчас модно?
- Хипстерская виртуализация.
- Давай.
>Хипстерская виртуализация.В отличие от остальных "хипстерских" технологий деньги экономит, а не растрачивает.
Так-то.
Они сделали его на Rust, потому что проект, который был взял за основу написан на Rust.
Можно подумать у исходного проекта был другой диалог.
>RESTful APIУрезали ядро и на освободившееся место присобачили http(2?) сервер.
насколько я помню, у докера тоже есть
API у VMM в одном экземпляре, а ядро подрезали там где его экземпляров много
С завтрашнего дня во всех вакансиях на DevOps
Минимум 5ть лет опыта.
Чё так мало? Зачем нам джуны?
https://www.twitch.tv/aws
Судя по баг репортам reboot внутри контейнера просто выключает контейнер не загружая его обратно. А shutdown просто не работает.
Что-то мне подсказывает когда тут функционал будет сопоставим с kvm оно не на много легче будет.
спасибо за прекрасную деталь. теперь буду спать спокойно (а то ж мелькнула мысль, что вдруг я просто замшелый ретроград и это не ненужное ненужно написанное на ненужно для ненужно, как сразу показалось, едва прочитал про rust и новую прекрасную идею что кодошлепу не надо теперь писать законченные приложения, можно ляпать "функции", а остальное сделается магическим образом)> Что-то мне подсказывает когда тут функционал будет сопоставим с kvm
что-то мне подсказывает, что никогда - кодошлепы органически не могут доводить свои поделки до ума - они лучше их обложат костылями и подпорками, как докер обложен къебенетесами и прочим мусором. А нормального функционала как не было, так и нет.
продолжаем спокойно пользовать kvm, если денег на vcenter не занесли.
Перевел все машинки на AWS Fargate. Доволен как слон :)
машинки для печати денег?
печати? Хм, этим машинки больше похожи на шреддер для денег.Впрочем, это с нашей стороны, а со стороны амазона-то да, печати.
Рад видеть появление энтерпрайз проектов на Rust. Да еще и про виртуализацию
Погоди радоваться. Посмотрим чем черевато.
Я так понимаю, что cow файловые системы вроде btrfs или lvm2 оно не поддерживает, поскольку реализует cow на уровне юзерспейса, а не ядра. Та же самая беда, что и у libvirtd
Откуда столько ненависти к Rust у людей, которые скорее всего ничего полезного не создали сами?
Надо же чем-то заполнять пустоту. Заполняют ненавистью.
Не я думаю, что это скорее всего просто от бессилия. Знаешь вот сидят в каком нибудь бюро им не дают скодить ничего приличного и сами они по вечерам писвасик, секс и спать. Вот и злость оттуда к разработчикам, которые хз когда делают это все.
"которые скорее всего ничего полезного не создали сами" - описание основного потребителя и комментатора на opennet
что же ты тут делаешь тогда?
Откуда такая любовь к Расту у людей которые на нём кроме Хеллоу Ворлд из туториала больше ничего не написали? И сами в лучшем случае Виндовые сисадмины.
> Откуда такая любовь к Расту у людей которые на нём кроме Хеллоу
> Ворлд из туториала больше ничего не написали? И сами в лучшем
> случае Виндовые сисадмины.См.про cлово "сопричастность" в изложении https://www.opennet.ru/openforum/vsluhforumID3/109572.html#156
"мастера" завоёвывать друзей.
Спасибо хороший текст. Ясно объясняет что то секта.
> Спасибо хороший текст. Ясно объясняет что то секта.И это "хорошее" объяснение густо сдобрено другими видпит манипуляций.
Если именно "секта" вам понравилось больше всего из прочитанного, осторожнее там!, как любитель "простых обяснений", вы в группе риска.
У тебя что-то с головой, лоляшка. По твоему, если ты к чему то не испытываешь ненависти, должен пренепременно любить? И наоборот, раз ты любишь что либо, то просто обязан ненавидеть остальное, и при любом удобном случае истощать ядом...
Сначала контейнеризировали сервисы, теперь функции.
Чем это лучше https://github.com/siemens/jailhouse ?
Микросерие продолжает своё победное заполонение :) и потом будут гонять это на виртуальных машинах внутри докера.
Если школьник выкинул несколько картинок из Ubuntu и назвал его самобытным дистрибутивом BolgenOS - все над ним смеются. Будь как Amazon, делай НОВУЮ технологию виртуализации Firecracker!
Просто чтобы ты был в курсе Амазон выкинула из Ред Хата дофигистическую плату и продает её за деньги. И все смеются почему то над Ред Хат. Хотя обои остались от Ред Хата.
Поднимать vm ради выполнения 1 функции? Не понимаю что полезного может делать такая FaaS, да ещё и без сохранения состояния? Кроме перекодировки строк и файлов ничего в голову не приходит.
Просто чтобы ты мог инхаузно попробовать AWS Lambda и AWS Fargate.
Гуглим про технологии SAN/NAS, nbd и прочая, и еще раз думаем...
М-дя... :))) Паноптикум. Какие-то поцы из тьму-таракани называют рабочие технологии компании, входящую в мировой TOP5 по капитализации, хипстерскими.
Это как анекдот из 90-х, про двух деревенских бабенций обсуждающих Клавку Шиферову, что она не очень.
>Какие-то поцы из тьму-таракани называют рабочие технологии компании, входящую в мировой TOP5 по капитализации, хипстерскими.Возвышение одного неотвратимо рождает принижение другого. А принижение, особенно добровольное, еще опаснее, оно рождает привычку быть руководимым, снимает ответственность за свои поступки, за свой путь. Тогда в расплату за облегчение жизни прекращается воспитание души, ее совершенствование.
Кто тут кого возвышает-принижает? Люди ставят себя в смешное положение и не осознают это. Я просто даю возможность осознать... Воспользоваться/не воспользоваться их выбор. Но в любом случае, надо поддерживать минимальный стандарт качества аудитории на OpenNet'е.