YOLO: Speeding up VM Boot Time by reducing I/O operations - Archive ouverte HAL Access content directly
Reports (Research Report) Year : 2019

YOLO: Speeding up VM Boot Time by reducing I/O operations

YOLO: Accélération du temps de démarrage de la machine virtuelleen réduisant les opérations d’I/O

(1, 2) , (3) , (1, 2)
1
2
3

Abstract

Several works have shown that the time to boot one virtual machine (VM) can last up to a few minutes in high consolidated cloud scenarios. This time is critical as VM boot duration defines how an application can react w.r.t. demands’ fluctuations (horizontal elasticity). To limit as much as possible the time to boot a VM, we design the YOLO mechanism (You Only Load Once). YOLO optimizes the number of I/O operations generated during a VM boot process by relying on the boot image abstraction, a subset of the VM image (VMI) that contains data blocks necessary to complete the boot operation. Whenever a VM is booted, YOLO intercepts all read accesses and serves them directly from the boot image, which has been locally stored on fast access storage devices (e.g., memory, SSD, etc.). Creating boot images for 900+ VMIs from Google Cloud shows that only 40 GB is needed to store all the mandatory data. Experiments show that YOLO can speed up VM boot duration 2-13 times under different resources contention with a negligible overhead on the I/O path. Finally, we underline that although YOLO has been validated with a KVM environment, it does not require any modification on the hypervisor, the guest kernel nor the VM image (VMI) structure and can be used for several kinds of VMIs (in this study, Linux and Windows VMIs have been tested)
Plusieurs travaux ont montré que le temps de démarrage d’une machine virtuelle (VM) peut s’étale sur plusieurs minutes dans des scénarios fortement consolidés. Ce délai est critique car la durée de démarrage d’une VM définit la réactivité d’une application en fonction des fluctuations de charge (élasticité horizontale). Pour limiter au maximum le temps de démarrage d’une VM, nous avons conçu le mécanisme YOLO (You Only Load Once). YOLO optimise le nombre d’opérations “disque” générées pendant le processus de démarrage. Pour ce faire, il s’appuie sur une nouvelle abstraction intitulée “image de démarrage” et correspondant à un sous-ensemble des données de l’image de la VM. Chaque fois qu’une machine virtuelle est démarrée, YOLO intercepte l’ensemble des accès en lecture afin de les satisfaire directement à partir de l’image de démarrage, qui a été stockée préalablement sur des périphériques de stockage à accès rapide (par exemple, mémoire, SSD, etc.). La création d’image de démarrage pour les 900 types des VMs proposées sur l’infrastructure Cloud de Google représente seulement 40 Go, ce qui est une quantité de données qui peut tout à fait être stockée sur chacun des noeuds de calculs. Les expériences réalisées montrent que YOLO permet accélérer la durée de démarrage d’un facteur allant de 2 à 13 selon les différents scénarios de consolidation. Nous soulignons que bien que YOLO ait été validé avec un environnement KVM, il ne nécessite aucune modificatfion sur l’hyperviseur, le noyau invité ou la structure d’image de la VM et peut donc être utilisé pour plusieurs types d’images (dans cette étude, nous testons des images Linux et Windows).
Fichier principal
Vignette du fichier
RR-9245.pdf (1.17 Mo) Télécharger le fichier
Vignette du fichier
RR-9245.zip (1.84 Mo) Télécharger le fichier
Origin : Files produced by the author(s)
Loading...

Dates and versions

hal-01983626 , version 1 (16-01-2019)

Identifiers

  • HAL Id : hal-01983626 , version 1

Cite

Thuy Linh Nguyen, Ramon Nou, Adrien Lebre. YOLO: Speeding up VM Boot Time by reducing I/O operations. [Research Report] RR-9245, Inria. 2019, pp.1-18. ⟨hal-01983626⟩
201 View
501 Download

Share

Gmail Facebook Twitter LinkedIn More