Novos Algoritmos Para Alocação De Máquinas Virtuais E Um Novo Método De Avaliação De Desempenho

Total Page:16

File Type:pdf, Size:1020Kb

Novos Algoritmos Para Alocação De Máquinas Virtuais E Um Novo Método De Avaliação De Desempenho RICARDO STEGH CAMATI Novos Algoritmos para Alocação de Máquinas Virtuais e um Novo Método de Avaliação de Desempenho Dissertação de Mestrado apresentada ao Programa de Pós- Graduação em Informática da Pontifícia Universidade Católica do Paraná, como requisito para obtenção do título de Mestre em Informática. Área de Concentração: Ciência da Computação Orientador: Prof. Dr. Alcides Calsavara Curitiba 2013 DEDICATÓRIA Dedico esta dissertação a minha família, e de maneira especial a minha avó materna Maria Stegh (in memoriam) que faleceu no início do primeiro ano deste trabalho. Ela foi uma companheira inseparável na minha infância, me criou como se fosse seu próprio filho, cuidou de mim e de minha irmã quando meus pais estavam trabalhando, nos alimentou e educou sem nunca pedir nada em troca. Sua alegria era servir as pessoas para que se sentissem bem, adorava cozinhar e sua comida que era deliciosa. 2 AGRADECIMENTOS Agradeço a Deus, a força superior responsável pela criação da energia, matéria e por dedução, da vida. Acredito que toda nova descoberta nada mais é do que uma pequena equação da grandiosidade e complexidade incalculável por ele arquitetada. Agradeço a segura orientação do Prof. Dr. Alcides Calsavara, cujo profissionalismo e competência foram fundamentais para o crescimento e a conclusão da minha dissertação. Suas aulas sobre Sistemas Distribuídos juntamente com as leituras de artigos recomendadas e seu excelente desempenho como professor me ajudaram a compreender muitos conceitos de vital importância. O tempo todo ele me incentivou a continuar e cedeu seu precioso tempo para me ajudar, foram dezenas de reuniões e muitas horas que passamos juntos trabalhando para possibilitar a finalização dessa dissertação, me sinto honrado e privilegiado pela oportunidade de trabalhar ao seu lado . Agradeço, também, ao Prof. Dr. Carlos Alberto Maziero, que foi meu orientador durante o primeiro ano do mestrado, suas excelentes aulas e apostilas me ajudaram a entender o funcionamento de Sistemas Operacionais e Máquinas Virtuais, revelando um novo mundo a ser explorado. Expresso minha gratidão também aos professores Dr. Luiz Lima Junior e Dr. Altair Santin, do grupo de Sistemas Distribuídos que sempre estiveram presentes em nossas reuniões do grupo, promovendo a troca de conhecimento entre professores e alunos. Meus agradecimentos e respeito a todos os professores do PPGIA, podem ter certeza que todo conhecimento absorvido em suas aulas foram de grande valia para este trabalho. Agradeço de forma muito especial a minha mãe, Prof. Dr. Anna Stegh Camati, e ao meu pai, Dr. Rocha Vitor Camati, seus incentivos e amor incondicionais me deram forças para terminar esta jornada, tenho muita sorte de ter pais maravilhosos como eles. À minha esposa Denalzira Mariano, expresso minha gratidão e reconhecimento, por ser uma companheira amorosa, e pelo seu apoio constante. À meu avô materno (in memoriam) minha homenagem por sua força de vontade, não se deixando abater pelos revezes da vida. Não poderia deixar de agradecer também ao mestrando Fábio Pandolfo, que me ajudou a montar um pequeno cluster de máquinas virtuais. Apesar de ter usado um simulador nesta dissertação, o cluster que montamos serviu para avaliar as dificuldades do mundo real. 3 EPÍGRAFE “Corrija um sábio, e o fará mais sábio. Corrija um tolo, e o fará seu inimigo.” 4 RESUMO A tecnologia de máquinas virtuais tem sido fortemente empregada nos últimos anos, visando, principalmente, a economia de recursos computacionais e o isolamento entre usuários e aplicações, para fins de segurança. O principal contexto de emprego de máquinas virtuais é na arquitetura de sistemas operacionais, inclusive como base para a construção de plataformas para a computação nuvem. A alocação eficiente de máquinas virtuais em um cluster de máquinas físicas é essencial para a otimização do uso de recursos computacionais e para reduzir a probabilidade de realocações. Entretanto, tipicamente, os algoritmos de alocação de máquinas virtuais empregam abordagens simples, tais como First Fit e suas variantes, restringindo-se a apenas uma dimensão de recurso computacional. Além disso, os métodos de avaliação empregados não contemplam integralmente a heterogeneidade entre as máquinas físicas de um cluster com relação à capacidade dos diferentes recursos computacionais e nem permitem analisar o impacto da variação de densidade de alocação. Esta dissertação propõe novos algoritmos de alocação de máquinas virtuais, os quais consideram múltiplas dimensões de recursos computacionais, e define um novo método de avaliação que contempla integralmente a heterogeneidade de recursos computacionais em múltiplas dimensões e permite analisar a variação de densidade de alocação. Os novos algoritmos foram comparados com outros tradicionais através de simulação, empregando o novo método definido. Os experimentos realizados permitiram observar que, de forma geral, a heterogeneidade de recursos entre máquinas físicas prejudica o desempenho dos algoritmos, enquanto que a heterogeneidade de recursos entre máquinas virtuais o beneficia. Também foi possível observar que o aumento na densidade de alocação até certo ponto beneficia o desempenho dos algoritmos. Finalmente, um dos algoritmos teve desempenho até 13% superior. Palavras-chave: Computação em Nuvem, Alocação de Máquinas Virtuais, Método de Avaliação de Desempenho. 5 ABSTRACT Virtual machine technology has been more employed recently, mainly aiming at the economy of computational resources and the separation of users and applications for the sake of security. The main context for the use of virtual machines is the architecture of operating systems, inclusively as a basis for the construction of platforms for cloud computing. The effective allocation of virtual machines in a cluster of physical machines is essential for the optimization of the use of computational resources to reduce the probability of reallocations. However, typically, the allocation algorithms of virtual machines employ simple approaches, such as First Fit and its variants, restricted to only one dimension of computational resources. Furthermore, the evaluation methods do not contemplate integrally either the heterogeneity of physical machines of a cluster with respect to the capacity of the different computational resources, nor do they permit analyzing the variation impact of the density of allocation. This dissertation proposes new allocation algorithms for virtual machines, and defines a new method of evaluation that contemplates integrally the hetereogeneity of computational resources in multiple dimensions and permits analyzing the variation of density allocation. The algorithms have been compared to other traditional ones by means of simulation, employing the newly defined method. The experiments realized permitted observing that, generally, the heterogeneity of resources among physical machines impairs the performance of algorithms, while the heterogeneity of resources among virtual machines benefits it. It was also possible to observe that the increase of allocation density up to a point benefits the performance of all algorithms. Finally, one of the algorithms reached a superior performance of 13%. Keywords: Cloud Computing, Virtual Machine Allocation, Method of Performance Evaluation. 6 SUMÁRIO 1 INTRODUÇÃO ......................................................................................................................................... 14 1.1 MOTIVAÇÃO .......................................................................................................................................................... 14 1.2 OBJETIVOS ............................................................................................................................................................. 16 1.3 ESTRUTURA DA DISSERTAÇÃO ........................................................................................................................... 18 2 FUNDAMENTOS DE MÁQUINAS VIRTUAIS E COMPUTAÇÃO EM NUVEM .......................... 19 2.1 HISTÓRICO DE MÁQUINAS VIRTUAIS ................................................................................................................. 19 2.2 ARQUITETURA DE MÁQUINAS VIRTUAIS .......................................................................................................... 24 2.3 PROPRIEDADES DE MÁQUINAS VIRTUAIS .......................................................................................................... 28 2.4 MIGRAÇÕES DE MÁQUINAS VIRTUAIS ................................................................................................................ 31 2.5 COMPUTAÇÃO EM NUVEM ................................................................................................................................... 33 2.6 DISCUSSÃO SOBRE COMPUTAÇÃO EM NUVEM .................................................................................................. 40 3 ALOCAÇÃO DE MÁQUINAS VIRTUAIS EM DATA CENTERS ....................................................... 42 3.1 DETERMINANTES DE VARIABILIDADE DO PROBLEMA ................................................................................... 42 3.1.1 O conjunto de hosts ...................................................................................................................................... 43 3.1.2 Modo de chegada de máquinas virtuais ............................................................................................. 45 3.1.3 Dimensões das máquinas .........................................................................................................................
Recommended publications
  • Previa a La Obtención Del Título De
    ESCUELA POLITECNICA DEL EJÉRCITO DPTO. DE CIENCIAS DE LA COMPUTACIÓN CARRERA DE INGENIERÍA EN SISTEMAS E INFORMATICA ESTUDIO PARA EVALUAR LA CONFIABILIDAD Y CALIDAD DE SERVICIO EN APLICACIONES DE MISIÓN CRÍTICA, UTILIZANDO VIRTUALIZACIÓN. Previa a la obtención del Título de: INGENIERO EN SISTEMAS E INFORMATICA POR: KLEBER OSWALDO PINARGOTE MONTENEGRO SANGOLQUI, 29 de Junio del 2009 i CERTIFICACION Certifico que el presente trabajo fue realizado en su totalidad por el Sr. KLEBER OSWALDO PINARGOTE MONTENEGRO, como requerimiento parcial a la obtención del título de INGENIERO EN SISTEMAS E INFORMÁTICA. 3 de Agosto del 2009 __________________ _________________________________ Fecha PROFESOR DIRECTOR ii DEDICATORIA A mis padres Nancy y Kleber, por su apoyo y estimulo para poder continuar con mis estudios; a mis hermanas Karen y Johanna por ser unas excelentes guías y compartir las alegrías, las penas y por siempre tener palabras de aliento; a mi enamorada por su comprensión, por su fuerza, por su amor, por ser tal y como es, por que la amo. No olvidemos a todas las personas que han creído en mí para la realización de mi proyecto de Tesis. A la ESPE a quien guardo un profundo cariño por formarme como un profesional preparado y dispuesto a enfrentar los retos de la vida diaria. Kleber Pinargote M. iii AGRADECIMIENTOS Expreso mis más sinceros y profundos agradecimientos a mis maestros, en especial a mi director Ing. Rodrigo Fonseca y codirector de tesis Ing. Fabián Balseca, por su asesoramiento científico y estímulo para seguir creciendo intelectualmente; a mis compañeros Raymond y Pablo por su apoyo y motivación; y a todas aquellas personas que directa o indirectamente colaboraron en la realización del presente trabajo.
    [Show full text]
  • La Virtualisation Des Systèmes D'information
    Haute Ecole de Gestion de Genève (HEG) La virtualisation des systèmes d’information Mémoire de Bachelor Réalisé par : Lionel Berger Directeur de mémoire : Peter Daehne, professeur HES À Genève, le vendredi 28 septembre 2012 Mémoire de Bachelor La virtualisation des systèmes d’information Déclaration Ce mémoire de Bachelor est réalisé dans le cadre de l’examen final de la Haute Ecole de Gestion (HEG) de Genève, en vue de l’obtention du titre de Bachelor of Science HES-SO en informatique de gestion. L’étudiant accepte, le cas échéant, la clause de confidentialité. L'utilisation des conclusions et recommandations formulées dans le travail de Bachelor, sans préjuger de leur valeur, n'engage ni la responsabilité de l'auteur, ni celle du conseiller au travail de Bachelor, du juré et de la HEG. « J’atteste avoir réalisé seul le présent travail, sans avoir utilisé d’autres sources que celles citées dans la bibliographie. » Fait à Genève, le vendredi 28 septembre 2012 Lionel Berger Déclaration 2 Le vendredi 28 septembre 2012 Lionel Berger Mémoire de Bachelor La virtualisation des systèmes d’information Remerciements En premier lieu, je souhaiterais remercier ma compagne, Arielle Moro, qui m’a soutenu inconditionnellement durant les huit semaines que j’ai consacrées à ce mémoire de Bachelor. Son aide a été fort précieuse, tant sur le plan moral qu’au niveau de l’appui qu’elle n’a pas hésité à me conférer pour élaborer ce document. J’adresse également de vifs remerciements à M. Peter Daehne, professeur à la Haute École de Gestion de Genève, qui a cru en ce projet et qui a décidé de l’encadrer.
    [Show full text]
  • Biblioteca De Ciencias Fisicas Y Matematicas
    Biblioteca Digital. Dirección de Sistemas de Informática y Comunicación - UNT UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS ESCUELA ACADÉMICO PROFESIONAL DE INFORMÁTICA MATEMATICAS Y VIRTUALIZACION EN LOS CENTROS DE DATOS FISICAS TESINA PRESENTADA PARA OPTAR EL TÍTULO DE INGENIERO INFORMÁTICO CIENCIAS AUTOR: Br. HECTOR JAVIER QUISPE GANOZA DEASESOR: Mg. EDWIN MENDOZA TORRES. TRUJILLO – PERU 2014 BIBLIOTECA I Esta obra ha sido publicada bajo la licencia Creative Commons Atribucion-No Comecial-CompartirIgual bajo la misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licenses/by-nc-sa/2.5/pe/ Biblioteca Digital. Dirección de Sistemas de Informática y Comunicación - UNT DEDICATORIA Detrás de cada logro hay esfuerzo, perseverancia, constancia, dedicación, sacrificio, pero sobretodo detrás de cada logro están esos seres que de una u otra forma han brindado su apoyo para que no desmayes, es por esta razón que el presente trabajo va dedicado: A mis padres, Adalberto y Gladys quienes han estado brindándome su apoyo incondicional para poder culminar con éxito otra etapa de mi vida. A mis hermanos Genny y Freddy, quienes también comparten conmigo este logro. A mis hijas Selene y Jezabel, para que las motive al estudio y sea un modelo a seguir y superar. MATEMATICAS Y FISICAS CIENCIAS DE BIBLIOTECA II Esta obra ha sido publicada bajo la licencia Creative Commons Atribucion-No Comecial-CompartirIgual bajo la misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licenses/by-nc-sa/2.5/pe/ Biblioteca Digital. Dirección de Sistemas de Informática y Comunicación - UNT AGRADECIMIENTO Al culminar esta etapa importante de mi vida, quiero expresar mis sinceros agradecimientos a todos y cada uno de los que han contribuido para alcanzar este éxito especial.
    [Show full text]
  • Sebuah Kajian Pustaka
    Institute of Advanced Engineering and Science International Journal of Cloud Computing and Services Science (IJ-CLOSER) Vol.3, No.4, August 2014, pp. 218~232 ISSN: 2089-3337 218 Server Virtulization and Network Virtulization in Cloud Computing Vedula Venkateswara Rao*, Mandapati Venkateswara Rao** * Departement of Computer Science Engineering, Sri Vasavi Engineering College, Tadepalligudem, India ** Departement of Information Technology, Gitam Institute of Technology, Gitam University, Visakhapatnam, India Article Info ABSTRACT Article history: Data Centers of today are rapidly moving towards the use of server th virtualization as a preferred way of sharing pool of server hardware Received Jun 20 , 2014 resources between multiple gust domains that hosts different applications. nd Revised Jul 22 , 2014 Due to trends like Cloud Computing and Green IT, virtualization Accepted Aug 19th, 2014 technologies are gaining increasing importance. They promise energy and cost savings by sharing physical resources, thus making resource usage more efficient. However, resource sharing and other factors have direct Keywords: effects on system performance, which are not yet well-understood. Hence, performance prediction and performance management of services Virtualization, deployed in virtualized environments like public and private Clouds is a Cloud Computing, challenging task. One benefit of virtual machines in these environments is Virtual Machine, the ability to multiplex several operating systems on the hardware based Data Center, on dynamically changing system characteristics. However such Performance, multiplexing can be done while observing per VM performance Scheduling, guarantees. Hyper visor, Green Computing. Copyright © 2014 Institute of Advanced Engineering and Science. All rights reserved. Corresponding Author: Vedula Venkateswara Rao, Research Scholar (Dept of CSE,Gitam Institute Of Technology, Gitam Univewrsity,Visakhapatnam,India) Departement of Computer ScienceEngineering, Sri Vasavi Engineering College, Tadepalligudem-534101, India.
    [Show full text]
  • VM and the VM COMMUNITY: Past, Present, and Future
    VM AND THE VM COMMUNITY: Past, Present, and Future Melinda Varian Office of Computing and Information Technology Princeton University 87 Prospect Avenue Princeton, NJ 08544 USA Ð.Ð BITNET: MAINT@PUCC Internet: [email protected] Telephone: (609) 258-6016 April, 1991 I. INTRODUCTION I will be talking today about the past, present, and future of VM, with an emphasis on the influence of the VM community on the growth of the VM product. This paper was originally presented at Australasian SHARE/GUIDE in Melbourne in 1989. My husband Lee and I had a delightful time at ASG and are most grateful to ASG for being our host in Australia and to SHARE for giving us the opportunity to represent it there. When I spoke at ASG, I began by conveying greetings from the President of SHARE, Cecilia Cowles. I will do that again today, because the pictures are too good not to use again. In the past, when I've spoken at SHARE and SEAS, my talks have been strictly technical. This talk was the first time I'd been asked to give my opinions, so you may find that you get more opinion than you wanted. Certainly, I should make sure you understand that my views are not necessarily those of my management (and are sometimes not those of SHARE management either). I must also ask you in advance to forgive me my ethnocentricity. Though I speak of ªthe VM communityº, I realize that there are actually several overlapping communities of VM people, located in different parts of the world, both inside and outside of IBM.
    [Show full text]
  • Un Kernel Diseñado Para La Virtualización
    Facultad de Informática Universidad Nacional de La Plata Tesis de Maestría en Cómputo de Altas Prestaciones Un kernel diseñado para la virtualización Lic. Matías Zabaljáuregui Director: Lic. F. Javier Díaz Índice de Capítulos 1. Introducción 2 2. Definiciones y clasificaciones 12 3. Virtualización clásica y la arquitectura x86 21 4. Traducción binaria 33 5. Paravirtualización 44 6. Virtualización de dispositivos 55 7. Virtualización asistida por hardware 65 8. Un kernel diseñado para la virtualización 77 9. Conclusiones y trabajo a futuro 87 A. Interrupciones y excepciones en x86 89 1 1. Introducción 1.1. Contexto del trabajo En este trabajo, se denomina virtualización a la creación de abstracciones de dispositivos o recursos físicos con el fin de ofrecer sus servicios a uno o más entornos de ejecución. Concretamente, es una técnica que permite ocultar funcionalidades de un dispositivo (disco rígido, placa de red, memoria) o recurso (servidor, red, sistema operativo), sumar las de varios con el fin de presentarlos como otra entidad con capacidades diferentes o bien crear un equivalente virtual de los mismos. En términos generales, la virtualización hace independientes a las instancias de recursos virtualizados del sustrato físico subyacente, presentándolas de manera transparente a los usuarios y aplicaciones que los utilizan sin distinguirlos de los reales. La tendencia en infraestructura computacional: la necesidad de virtualizar recursos La virtualización no es un concepto nuevo. Las primeras (y enormes) computadoras empresariales tipo mainfraime , diseñadas y construidas en la década de 1960, proveían una experiencia de computación compartimentalizada. Por diseño, estos mainfraimes originales podían generar completos espacios operativos virtuales distintos, con sistemas operativos y máquinas virtuales aisladas, que segregaban completamente los procesos y operaciones de un usuario con respecto a los de los demás.
    [Show full text]