Nadchodzi nowa wersja Cloud Hypervisor 0.3, VMM typu open source

Nadzorca chmury

Firma Intel ogłosiła wydanie nowej wersji swojego „Cloud Hypervisor 0.3”, monitora maszyn wirtualnych o otwartym kodzie źródłowym , działającego na bazie KVM. Projekt koncentruje się wyłącznie na obsłudze nowoczesnych obciążeń chmurowych, a także na ograniczonym zestawie architektur sprzętowych i platform.

Obciążenia chmurowe odnoszą się do tych, które zazwyczaj są uruchamiane przez klientów w środowisku dostawcy chmury. Hiperwizor opiera się na komponentach wspólnego projektu Rust-VMM, w którym oprócz Intela uczestniczą również Alibaba, Amazon, Google i Red Hat.

Rust-VMM jest napisany w języku Rust i umożliwia tworzenie hiperwizorów zaprojektowanych specjalnie do konkretnych zadań. Jednym z takich hiperwizorów jest Cloud Hypervisor, zapewniający monitorowanie maszyn wirtualnych (VMM) wysokiego poziomu i zoptymalizowany pod kątem wyzwań związanych z przetwarzaniem w chmurze.

Cloud Hypervisor koncentruje się na uruchamianiu nowoczesnych dystrybucji Linuksa przy użyciu urządzeń Paravirtio.

Najważniejsze cechy to: wysoka responsywność, niskie zużycie pamięci, wysoka wydajność, uproszczona konfiguracja i ograniczona liczba wektorów ataków.

Obsługa emulacji jest ograniczona, z naciskiem na parawirtualizację. Obecnie obsługiwane są tylko systemy x86_64, ale w planach jest również obsługa AArch64. Spośród systemów gościa obsługiwane są obecnie tylko 64-bitowe kompilacje Linuksa. Procesor, pamięć, PCI i NVDIMM są konfigurowane na etapie kompilacji, a maszyny wirtualne można również migrować między serwerami.

Kod projektu jest dostępny na licencji Apache 2.0.

Główne nowe funkcje Cloud Hypervisor 0.3

Nowa wersja Cloud Hypervisor 0.3 znacząco eliminuje parawirtualizowane operacje wejścia/wyjścia w poszczególnych procesach . Do interakcji z urządzeniami blokowymi dodano możliwość korzystania z zaplecza vhost-user-blk.

Zmiana ta umożliwia podłączanie urządzeń blokowych opartych na module vhost-user, takich jak SPDK, do Cloud Hypervisor jako zaplecza dla parawirtualizowanej pamięci masowej.

Obsługa usuwania operacji sieciowych w backendach vhost-user-net , która występowała w poprzedniej wersji, została rozszerzona o nowy backend oparty na wirtualnym kontrolerze sieciowym TAP. Ten backend został napisany w języku Rust i jest obecnie używany przez Cloud Hypervisor jako podstawowa parawirtualizowana architektura sieciowa.

Aby zwiększyć wydajność i bezpieczeństwo komunikacji między środowiskiem hosta a systemem gościa, zaproponowano hybrydową implementację gniazd z adresowaniem AF_VSOCK (wirtualne gniazda sieciowe) działającą poprzez virtio.

Implementacja opiera się na doświadczeniach projektu Firecracker, opracowanego przez Amazon. VSOCK umożliwia wykorzystanie standardowego API gniazd POSIX do interakcji między aplikacjami w systemie gościa i po stronie hosta, ułatwiając adaptację standardowych programów sieciowych do tej interakcji oraz implementację interakcji między wieloma programami klienckimi a aplikacją serwerową.

Kolejną istotną zmianą jest wprowadzenie wstępnej obsługi interfejsu API do zarządzania z wykorzystaniem protokołu HTTP . W przyszłości interfejs ten umożliwi asynchroniczne operacje na systemach gości, takie jak łączenie zasobów w trybie „hot” i migracja środowisk.

Podkreślono również dodanie warstwy z implementacją transportu opartą na virtio MMIO (virtio memory mapped), która może być używana do tworzenia minimalistycznych systemów gości, które nie wymagają emulacji magistrali PCI.

W ramach inicjatywy mającej na celu rozszerzenie wsparcia dla wbudowanych wersji dla gości, Cloud Hypervisor dodał możliwość przesyłania dalej sparawirtualizowanych urządzeń IOMMU za pośrednictwem virtio, co może zwiększyć bezpieczeństwo wbudowanego i bezpośredniego przekazywania urządzeń.

Wreszcie, wśród innych nowych funkcji podkreślonych w ogłoszeniu, znalazła się obsługa Ubuntu 19.10 oraz dodana możliwość uruchamiania systemów gościnnych z pamięcią RAM większą niż 64 GB.

Jeśli chcesz dowiedzieć się więcej na ten temat i rozpocząć pracę z tym hiperwizorem, szczegółowe informacje znajdziesz pod poniższym linkiem.


Dodaj jako preferowane źródło w Google