Intel обяви пускането на нова версия на своя „Cloud Hypervisor 0.3“ – монитор за виртуални машини с отворен код , който работи върху KVM. Проектът се фокусира изключително върху изпълнението на съвременни облачни натоварвания, заедно с ограничен набор от хардуерни архитектури и платформи.
Облачните натоварвания се отнасят до тези, които обикновено се изпълняват от клиенти в среда на доставчик на облачни услуги. Хипервизорът е базиран на компоненти от съвместния проект Rust-VMM, който включва също Alibaba, Amazon, Google и Red Hat, в допълнение към Intel.
Rust-VMM е написан на Rust и ви позволява да създавате хипервизори, специално проектирани за специфични задачи. Cloud Hypervisor е един такъв хипервизор, предоставящ монитор на виртуални машини (VMM) на високо ниво и оптимизиран за справяне с предизвикателствата на облачните изчисления.
Cloud Hypervisor се фокусира върху стартирането на съвременни Linux дистрибуции, използвайки устройства Paravirtio.
Ключовите характеристики включват: висока скорост на реакция, ниска консумация на памет, висока производителност, опростена конфигурация и намалени вектори на атака.
Поддръжката на емулация е сведена до минимум, с акцент върху паравиртуализацията. В момента се поддържат само x86_64 системи, но плановете включват и поддръжка за AArch64. От гост системите в момента се поддържат само 64-битови Linux компилации. Процесорът, паметта, PCI и NVDIMM се конфигурират по време на етапа на компилация, а виртуалните машини могат да се мигрират и между сървъри.
Кодът на проекта се предлага под лиценза Apache 2.0.
Основни нови функции на Cloud Hypervisor 0.3
Тази нова версия на Cloud Hypervisor 0.3 значително елиминира паравиртуализирания входно-изходен процес в отделни процеси . За взаимодействие с блокови устройства е добавена възможността за използване на бекендове vhost-user-blk.
Промяната позволява свързването на блокови устройства, базирани на модула vhost-user, като например SPDK, към Cloud Hypervisor като backends за паравиртуализирано съхранение.
Поддръжката за премахване на мрежови операции в бекендите vhost-user-net , която се появи в предишната версия, е разширена с нов бекенд, базиран на виртуалния мрежов контролер TAP. Този бекенд е написан на Rust и сега се използва от Cloud Hypervisor като основна паравиртуализирана мрежова архитектура.
За да се повиши ефективността и сигурността на комуникациите между хост средата и гост системата, се предлага хибридна сокет имплементация с AF_VSOCK адресиране (виртуални мрежови сокети), работеща чрез virtio.
Имплементацията е базирана на опита от проекта Firecracker, разработен от Amazon. VSOCK позволява използването на стандартния POSIX sockets API за взаимодействие между приложенията на гост системата и хост страната, което улеснява адаптирането на обикновени мрежови програми за това взаимодействие и реализирането на взаимодействие между множество клиентски програми и сървърно приложение.
Друга забележителна промяна е въвеждането на първоначална поддръжка за API за управление, използващ HTTP протокола . В бъдеще този API ще позволява асинхронни операции на гост системи, като например ресурси с горещо свързване и мигриращи среди.
Също така е подчертано добавянето на слой с транспортна реализация, базирана на virtio MMIO (virtio memory mapped), която може да се използва за създаване на минималистични системи за гости, които не изискват емулация на PCI шина.
Като част от инициатива за разширяване на поддръжката за вградено издание за гости, Cloud Hypervisor добави възможността за препращане на паравиртуализирани IOMMU устройства чрез virtio, което може да увеличи сигурността на вграденото и директно препращане на устройства.
Накрая, сред другите нови функции, подчертани в съобщението, са поддръжката, предоставена за Ubuntu 19.10, както и добавената възможност за стартиране на гост системи с повече от 64 GB RAM.
Ако искате да научите повече за него, както и да работите с този хипервизор, можете да намерите подробностите на следния линк.