<  Back to the Polytechnique Montréal portal

Surveillance et analyse de machine virtuelle assistée par l'hôte

Abderrahmane Benbachir

Masters thesis (2018)

[img]
Preview
Download (1MB)
Cite this document: Benbachir, A. (2018). Surveillance et analyse de machine virtuelle assistée par l'hôte (Masters thesis, École Polytechnique de Montréal). Retrieved from https://publications.polymtl.ca/3110/
Show abstract Hide abstract

Abstract

L’arrivée des extensions de processeurs Intel VMX et AMD SVM ont rendu possible la virtualisation de la plateforme x86 en exécutant des systèmes invités non modifiés. Les technologies de virtualisation telles que KVM et Xen sont devenues de plus en plus populaires et sont largement adoptées par l’industrie et les groupes de recherche pour une variété d’applications. Les systèmes virtualisés bénéficient de l’isolation virtuelle offerte par la virtualisation, ce qui donne l’illusion du contrôle absolu sur les ressources de l’hôte. Cette isolation affecte la performance de toute application s’exécutant dans un environnement de machine virtuelle, principalement en raison du surcoût induit par les interactions avec l’hyperviseur et aussi les interactions avec d’autres machines virtuelles cohabitant sur la même machine. Cependant, il est possible de bénéficier de cette fonctionnalité pour investiguer des causes profondes de dégradation de performance pendant que le système passe par des phases critiques comme le démarrage et l’arrêt, ce qui est très difficile à surveiller dans un environnement non virtualisé. L’objectif de cette étude est de fournir une infrastructure de surveillance basée sur des techniques de paravirtualisation qui facilite la collaboration entre l’hôte et les invités et permet ainsi une détection précise des temps de latence. Pour atteindre cet objectif, nous utilisons des canaux de communication, l’hypercall et la mémoire partagée, des techniques basées sur la paravirtualisation que nous avons développées dans le traceur Ftrace. Notre approche fonctionne à travers l’infrastructure de l’hyperviseur pour faciliter le partage des données des systèmes invités, sans recourir aux opérations d’E/S utilisant le réseau et le disque, car les deux ne sont pas disponibles pendant le démarrage ou l’arrêt de la VM. De plus, en utilisant ces opérations d’E/S, les machines virtuelles souffrent d’une baisse significative des performances. Enfin, nous avons développé une optimisation KVM afin de supprimer la multiplication de sortie et permettre à notre approche de surveiller efficacement les environnements imbriqués.----------ABSTRACT: The introduction of hardware-assisted virtualization capabilities support, in both Intel VMX and AMD SVM processor extensions, made x86 virtualization possible while running unmodified OS guests. Virtualization technologies such as KVM and Xen have become increasingly popular, and are widely adopted by industry and researchers for a variety of applications. Virtualized systems benefit from the virtual isolation offered by virtualization, which gives the illusion of absolute control over the host resources. This isolation impact the performance of any application running in a virtual machine environment, mostly because of the overhead induced from interactions happening with the host hypervisor and other co-located virtual machines. However, it is possible to benefit from virtualization features to find the root cause of performance problems while a system is executing in critical phases like boot-up and shutdown. During these phases, very few communication channels are available (e.g. only serial ports) and it is very difficult to monitor the execution in a non-virtualized environment. The objective of this study is to provide a paravirtualization-based monitoring infrastructure which facilitates host and guest collaboration and enables accurate latency detection. To accomplish this objective, we use hypercall and shared memory communication channels, a paravirtualization-based technique that we developed within the Ftrace tracer. Our approach relies on the hypervisor infrastructure to allow the guest trace data to be shared without relying on I/O operations from devices like the network and disk, because neither is available while a VM is booting up or shutting down. Moreover, when using I/O operations, VMs suffer from a significant performance drop. Finally, we developed a KVM optimization in order to remove exit multiplication and enable our approach to efficiently monitor nested environments.

Open Access document in PolyPublie
Department: Département de génie informatique et génie logiciel
Dissertation/thesis director: Michel Dagenais
Date Deposited: 18 Jun 2018 16:12
Last Modified: 27 Jun 2019 16:47
PolyPublie URL: https://publications.polymtl.ca/3110/

Statistics

Total downloads

Downloads per month in the last year

Origin of downloads

Repository Staff Only