Your SlideShare is downloading. ×
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Implementacao e desempenho da virtualizacao no dcomp ufs
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Implementacao e desempenho da virtualizacao no dcomp ufs

635

Published on

TCC no DCOMP/UFS do aluno Anderson de Paula Casssimiro, em Dezembro de 2010

TCC no DCOMP/UFS do aluno Anderson de Paula Casssimiro, em Dezembro de 2010

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
635
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
47
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. UNIVERSIDADE FEDERAL DE SERGIPECENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA DEPARTAMENTO DE COMPUTAÇÃO ANDERSON DE PAULA CASSIMIROIMPLEMENTAÇÃO E DESEMPENHO DA VIRTUALIZAÇÃO NO DCOMP/UFS São Cristóvão 2010
  • 2. UNIVERSIDADE FEDERAL DE SERGIPECENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA DEPARTAMENTO DE COMPUTAÇÃO ANDERSON DE PAULA CASSIMIRO IMPLEMENTAÇÃO E DESEMPENHO DA VIRTUALIZAÇÃO NO DCOMP/UFS Monografia apresentada ao Departamento de Computação da Universidade Federal de Sergipe, como requisito parcial para obtenção do título de bacharel em Ciência da Computação. Orientador: Prof. Dr. Edward David Moreno Ordonez. São Cristóvão Novembro de 2010
  • 3. Cassimiro, Anderson. Implementação e Desempenho da Virtualização noDCOMP/UFS / Anderson de Paula Cassimiro – SãoCristóvão: UFS, 2010. 82f. Trabalho de Conclusão do Curso de Graduação –Universidade Federal de Sergipe, Curso de Ciência daComputação, 2010. 1. Informática. 2. Virtualização. 3. Máquinas Virtuais. I. Título.
  • 4. ANDERSON DE PAULA CASSIMIRO IMPLEMENTAÇÃO E DESEMPENHO DA VIRTUALIZAÇÃO NO DCOMP/UFS Trabalho de Conclusão de Curso submetido ao corpo docente doDepartamento de Computação da Universidade Federal de Sergipe (DCOMP/UFS)como parte dos requisitos para obtenção do grau de Bacharel em Ciência daComputação. São Cristóvão, 26 de novembro de 2010. Professor Doutor Edward David Moreno Ordonez Orientador – DCOMP/UFS Professor Doutor Carlos Alberto Estombelo Montesco DCOMP/UFS Professor Doutor Leonardo Nogueira Matos DCOMP/UFS
  • 5. Dedico este trabalho a todos aqueles quecontribuíram de forma direta ou indireta paraconclusão do mesmo.
  • 6. Agradeço primeiramente a Deus...
  • 7. "O analfabeto do século XXI não será aqueleque não sabe ler e escrever, mas aquele que nãoconsegue aprender, desaprender e aprendernovamente". Alvin Tofler
  • 8. CASSIMIRO, Anderson. Implementação e Desempenho daVirtualização no DCOMP/UFS. 2010. Trabalho de Conclusão de Curso – Cursode Ciência da Computação, Departamento de Computação, UniversidadeFederal de Sergipe, São Cristóvão, 2010. RESUMOA utilização das técnicas de virtualização tem ganhado notoriedade nos últimosanos. Por esse motivo este trabalho discorre sobre os vários conceitos queenvolvem a virtualização, mostrando as possibilidades com o uso da mesma ealgumas vantagens e desvantagens. O trabalho também trata sobre as principaisferramentas para consolidação de servidores disponíveis no mercado e apresentaum breve comparativo sobre elas. Os conhecimentos sobre virtualização sãoaplicados usando um estudo de caso que tem por objetivo principal a consolidaçãode servidores no Departamento de Computação da Universidade Federal de Sergipe(DCOMP/UFS). No desenvolvimento deste estudo de caso optou-se pela utilizaçãodas ferramentas disponibilizadas pela Microsoft, uma vez que o departamento jápossui acordo de licenciamento com a mesma. Ao final, o trabalho mostra os váriosbenefícios obtidos com a virtualização e também mostra como alguns problemasforam evitados na implementação utilizada.Palavras-chave: consolidação de servidor; hipervisor; virtualização.
  • 9. ABSTRACTThe use of virtualization techniques has gained notoriety in recent years. That is whythis work discusses several concepts involving virtualization, showing the possibilitieswith its use and some advantages and disadvantages. The work also addresses themain tools for consolidating servers available on the market and provides a briefcomparison with them. Knowledge about virtualization is applied using a case studywhich mainly aims to provide server consolidation at Computing Department of theFederal University of Sergipe (DCOMP/UFS). In the development of this case studythe tools provided by Microsoft were chosen, since the department has a licensingagreement with the same. In the end, the work shows the various benefits obtainedwith virtualization and also shows how some problems were avoided in theimplementation used.Keywords: server consolidation; hypervisor; virtualization.
  • 10. LISTA DE FIGURASFigura 1. História da Virtualização - Linha do Tempo (Quevedo, 2008) .................. 18Figura 2. Diagrama de uma máquina virtual (Laureano, 2006) .............................. 20Figura 3. Uma máquina virtual (Laureano e Maziero, 2008) .................................. 21Figura 4. Diferença entre abstração e virtualização. (Laureano e Maziero, 2008) ... 24Figura 5. Hipervisor ou monitor de tipo I (Laureano, 2006) .................................... 26Figura 6. Hipervisor ou monitor de tipo II (Laureano, 2006) ................................... 27Figura 7. Abordagem híbrida para tipo I (Laureano, 2006) .................................... 28Figura 8. Abordagem híbrida para tipo II (Laureano, 2006) ................................... 29Figura 9. Virtualização total (Laureano, 2006) ...................................................... 31Figura 10. Para-virtualização (Laureano, 2006) .................................................... 32Figura 11. Uso dos níveis de privilégio da arquitetura x86 (Maziero, 2008) ............ 34Figura 12. Visão geral da arquitetura Intel VT (Maziero, 2008) .............................. 35Figura 13. Datacenter virtual (Vmware, 2010a) .................................................... 41Figura 14. Arquitetura das versões ESX e ESXi (Vmware, 2010b)......................... 42Figura 15. Hipervisor Xen (Laureano e Maziero, 2008) ......................................... 44Figura 16. Produtos e Tecnologias de Virtualização Microsoft (Microsoft, 2010a) ... 45Figura 17. Arquitetura do Hyper-V (Microsoft, 2010d) ........................................... 46Figura 18. Cenário inicial dos servidores do DCOMP (Elaboração própria) ............ 53Figura 19. Cenário da solução proposta (Elaboração própria) ............................... 57Figura 20. Utilização de CPU em % (Elaboração própria) ..................................... 65Figura 21. Utilização de CPU em % (Elaboração própria) ..................................... 66Figura 22. Utilização de CPU em % (Elaboração própria) ..................................... 66Figura 23. Utilização de CPU em % (Elaboração própria) ..................................... 67Figura 24. Utilização de CPU em % do servidor MANAGER (Elaboração própria) .. 67Figura 25. Memória disponível em MB (Elaboração própria) ................................. 68Figura 26. Memória disponível em MB (Elaboração própria) ................................. 68Figura 27. Memória disponível em MB (Elaboração própria) ................................. 69Figura 28. Memória disponível em MB (Elaboração própria) ................................. 69
  • 11. LISTA DE TABELASTabela 1. Serviços em cada servidor .................................................................. 53Tabela 2. Configuração dos servidores ............................................................... 54Tabela 3. Configuração dos servidores reais nesta solução ................................. 58Tabela 4. Serviços em cada servidor migrado ou criado ...................................... 61Tabela 5. Comparação de características dos hipervisores .................................. 76Tabela 6. Comparação de funções incluídas nas versões gratuitas para servidor do Xen e do VMware............................................................................... 78Tabela 7. Comparação entre máquinas virtuais e emuladores .............................. 79
  • 12. LISTA DE SIGLASAMD-V AMD Virtualization – Virtualização AMDBIOS Basic Input/Output System – Sistema Básico e Entrada e SaídaCMS Console Monitor System – Console Monitor de SistemaCP Control Program – Programa de ControleCPU Central Processing Unit – Unidade Central de ProcessamentoDCOMP Departamento de ComputaçãoDHCP Dynamic Host Configuration Protocol – Protocolo de ConfiguraçãoDinâmica de HostsDNS Domain Name System – Sistema de Nomes de DomíniosE/S Entrada e SaídaHAL Hardware Abstraction Layer – Camada de Abstração de HardwareIntel VT Intel Virtualization Technology – Tecnologia de Virtualização da IntelISA Instruction Set Architecture – Conjunto de Instruções da ArquiteturaJVM Java Virtual Machine – Máquina Virtual JavaNAT Network Address Translation – Tradução de Endereço de RedePC Personal Computer – Computador PessoalQoS Quality of Service – Qualidade de ServiçoROI Return on Investment – Retorno sobre InvestimentoSCCM System Center Configuration ManagerSCDPM System Center Data Protection ManagerSCOM System Center Operations ManagerSCVMM System Center Virtual Machine ManagerSPOF Single point of failure – Ponto único de falhaSVM Secure Virtual Machine – Máquina Virtual SeguraTCC Trabalho de Conclusão de CursoTCO Total Cost of Ownership – Custo Total de PropriedadeTI Tecnologia da InformaçãoTSS Time Sharing System – Sistema de Compartilhamento de TempoUFS Universidade Federal de SergipeVM Virtual Machine – Máquina VirtualVMM Virtual Machine Monitor – Monitor de Máquina Virtual
  • 13. SUMÁRIO1 INTRODUÇÃO ..................................................................................... 131.1 Motivações e objetivos ............................................................................. 131.2 Organização do trabalho........................................................................... 152 VIRTUALIZAÇÃO – HISTÓRICO E CONCEITOS.......................... 162.1 Histórico .................................................................................................. 172.2.1 Emulador e máquina virtual....................................................................... 232.2.2 Abstração e virtualização .......................................................................... 232.3 Hipervisores............................................................................................. 242.3.1 Tipos de hipervisores ............................................................................... 252.3.2 Classificação dos hipervisores .................................................................. 262.4 Formas de virtualização ............................................................................ 292.5 Técnicas de virtualização e emulação........................................................ 302.5.1 Virtualização total ..................................................................................... 312.5.2 Para-virtualização .................................................................................... 322.5.3 Tradução dinâmica ................................................................................... 332.6 Processadores com virtualização nativa .................................................... 332.7 Usos da virtualização ............................................................................... 352.7.1 Vantagens ............................................................................................... 372.7.2 Desvantagens .......................................................................................... 383 FERRAMENTAS PARA MÁQUINAS VIRTUAIS ............................ 393.1 VMware ................................................................................................... 393.2 Citrix ....................................................................................................... 423.3 Microsoft.................................................................................................. 443.4 Comparação entre as ferramentas ............................................................ 474 ESTUDO DE CASO ............................................................................504.1 Sobre o DCOMP ...................................................................................... 504.2 Situação anterior ...................................................................................... 52
  • 14. 4.3 Solução proposta ..................................................................................... 554.3.1 Configuração dos servidores ..................................................................... 564.3.2 Aplicações dos servidores ........................................................................ 594.4 Resultados .............................................................................................. 624.4.1 Desempenho ........................................................................................... 635 CONCLUSÕES.................................................................................... 705.1 Trabalhos futuros ..................................................................................... 70REFERÊNCIAS BIBLIOGRÁFICAS........................................................... 72ANEXOS ........................................................................................................75ANEXO A – Tabela comparativa de características do VMware,Hyper-V e Xen............................................................................................... 76ANEXO B – Tabela comparativa do XenServer e VMware ESXi .......78ANEXO C – Comparação entre máquinas virtuais e emuladores ....79
  • 15. 131 INTRODUÇÃO O conceito de máquinas virtuais surgiu na década de 1960 pela necessidadedo compartilhamento de recursos em mainframes. Mas na década de 1980 a partirda diminuição do custo do hardware este conceito perdeu importância, pois o custodos mainframes que eram utilizados na virtualização eram maiores que os de várioscomputadores que forneciam o ambiente desejado (Laureano e Maziero, 2008). Com isto, durante muitos anos, a virtualização era um termo que ficavarestrito aos membros de departamentos de TI. Atualmente ela passou a oferecersoluções de vanguarda para organizações em busca de otimização dosinvestimentos em TI. Estas soluções são disponibilizadas por um grande número defornecedores, o que tem permitido uma economia de custos e outros benefícios(Ribas, 2008). De uma maneira generalizada pode-se definir a virtualização como acapacidade de criar diversas máquinas lógicas (máquinas virtuais) com um únicohardware (Gonçalves e Vahl Junior, 2009). Em um sistema virtualizado temos um software host sendo executado namáquina física, chamado Virtual Machine Monitor (VMM), ou hipervisor. Estesoftware é responsável pela criação de ambientes simulados de computação, quesão as máquinas virtuais (VMs). Sistemas operacionais inteiros podem serexecutados nessas máquinas virtuais como se estivessem sendo executados em umhardware real (Seo, 2009).1.1 Motivações e objetivos A virtualização está sendo cada vez mais utilizada, também, por causa daspráticas da TI verde. Em (Hess, 2009) TI verde é definida como um conjunto depráticas para tornar mais sustentável e menos prejudicial o nosso uso dacomputação. As práticas de TI verde buscam reduzir o desperdício e aumentar aeficiência de todos os processos e fenômenos relacionados à operação doscomputadores. A maior vantagem da utilização de virtualização neste caso é a
  • 16. 14economia de energia, pois menos computadores e equipamentos serão necessáriospara execução de diversos serviços. A virtualização também traz vantagens no maior aproveitamento dacapacidade dos servidores, facilidade para gerenciamento das máquinas e nasegurança (Quevedo, 2008). A capacidade de isolamento oferecida peloshipervisores oferece uma boa camada de proteção, já que não é necessária autilização de mais de um hardware para garantir que um sistema não afete outro.Esta capacidade também permite que sejam testadas alterações em sistemas deprodução antes de colocá-las em prática. A capacidade de restaurar estadosanteriores e a migração ao vivo de máquinas virtuais ajuda a prover uma maiordisponibilidade para os serviços oferecidos pela TI. Neste trabalho é realizado um estudo de caso e respectiva análise daimplementação da virtualização no Departamento de Computação (DCOMP) daUniversidade Federal de Sergipe (UFS). Este departamento utiliza a TI com a funçãode auxiliar na administração e em suas atividades de ensino, pesquisa e extensão.Possui três cursos de graduação e um de pós-graduação, que contam comaproximadamente 650 alunos matriculados e ministra aulas para aproximadamente1.000 alunos de outros cursos da universidade. O objetivo desta implementação é facilitar a administração e monitoramentodos servidores e equipamentos do departamento de computação, além de ampliar onúmero de serviços e aplicações oferecidas à comunidade acadêmica sem ter queinvestir no aumento do número de servidores. Mas a virtualização não traz somente vantagens, por isto este trabalhobusca, também, minimizar as desvantagens que possam ser introduzidas devido aouso da virtualização. Dentre as desvantagens é possível citar (Quevedo, 2008;Hansen e Schaeffer, 2009): a perda de desempenho se comparado ao hardwarefísico; a necessidade de alterações no núcleo do sistema hóspede em alguns casos;a indisponibilidade de um equipamento físico pode causar indisponibilidade dediversas aplicações; e a exigência de um hardware com uma maior capacidade deprocessamento e armazenamento.
  • 17. 151.2 Organização do trabalho Este trabalho está dividido em cinco capítulos, sendo o primeiro de introduçãodo trabalho. No capítulo dois são apresentados os conceitos teóricos sobrevirtualização, no capítulo três são apresentadas algumas soluções de virtualização.O capítulo quatro mostra o estudo de caso do DCOMP e o capítulo cinco apresentaas conclusões obtidas com este trabalho.
  • 18. 162 VIRTUALIZAÇÃO – HISTÓRICO E CONCEITOS Neste capítulo mostra-se o histórico da virtualização, seus conceitos e suasdiversas aplicações, vantagens e desvantagens. Mas antes disto é importante sabero que significa o termo “virtual”. Segundo o dicionário Michaelis: virtual.vir.tu.al adj m+f (lat virtuale) 1 Que não existe como realidade, mas sim como potência ou faculdade. 2 Que equivale a outro, podendo fazer as vezes deste, em virtude ou atividade. 3 Que é suscetível de exercer-se embora não esteja em exercício; potencial. 4 Que não tem efeito atual. 5 Possível. 6 Diz-se do foco de um espelho ou lente, determinado pelo encontro dos prolongamentos dos raios luminosos (Weiszflog e Silva, 2010). O oposto de virtual não é o que é real como muitos podem imaginar. Seuantônimo é o que é concreto, físico, tangível, com limites bem definidos. O virtualexiste somente como potência, como uma simulação de algo concreto, nãopossuindo limites (Nascimento, 2009). O autor Pierre Lévy em “O que é o virtual?” diz que o virtual faz oposição aoatual: Contrariamente ao possível, estático e já construído, o virtual é como o complexo problemático, o nó de tendências ou de forças que acompanha uma situação, um acontecimento, um objeto ou uma entidade qualquer, e que chama um processo de resolução: a atualização (Lévy, 2003). Ele exemplifica isto através de uma semente, explicando que ela é umavirtualização da árvore, ela “conhece” a forma que deverá se expandir e a partir dascircunstâncias que encontrar ela vai ser a encarregada de inventar, de coproduzir, amesma. Ele define a virtualização como o movimento inverso ao da atualização. Éuma passagem do atual ao virtual, uma “elevação à potência” da entidadeconsiderada. Ele cita o caso da “virtualização” de uma empresa, onde umaorganização comum reúne os empregados num mesmo edifício ou em conjunto dedepartamentos, onde cada empregado ocupa um posto já determinado e possuihorários de trabalho específicos. Já numa empresa virtual o tele trabalho substitui anecessidade da presença física e são utilizados recursos e programas quefavoreçam a colaboração. O autor diz que neste caso a organização deixa de ser umconjunto de departamentos, postos de trabalho e livros de ponto e passa a se
  • 19. 17preocupar com soluções não estáveis, que contribuam para a colaboração entre osempregados a partir de diversas exigências. Por meio destes e outros conceitos, Nascimento (2009) conclui: [...] “o virtual é algo real com uma natureza intangível e pode torna-se [sic] tangível através do uso de recursos tecnológicos tangíveis, como os computadores e intangíveis, como os sistemas por eles processados. Proporcionando uma experiência real como os simuladores de vôo para treinamento de pilotos, entre outros exemplos” (Nascimento, 2009).2.1 Histórico A virtualização, mesmo só tendo difundido nos últimos anos, já existe desdea década de 1960. De acordo com Laureano e Maziero (2008) ela surgiu pelanecessidade de oferecer a cada usuário um ambiente monousuário completo,independente e desvinculado de outros usuários para os mainframes da época. O primeiro sistema que fez uso da virtualização foi desenvolvido pela IBM, osistema operacional experimental M44/44X (Creasy, 1981). Ele se baseava noconceito do sistema de tempo compartilhado ou TSS (Time Sharing System), criadopela IBM, e foi a partir dele que a mesma começou a desenvolver seus sistemascomerciais. O primeiro computador comercial com suporte a tecnologia foi lançadoem 1964, o mainframe System/360, com um suporte limitado a virtualização. Nomesmo ano foi criado o projeto CP-40 cujo objetivo era a disponibilização de umamáquina virtual System/360 completa para cada usuário. Foi neste projeto quesurgiu a primeira menção às memórias virtuais e às máquinas virtuais, que na épocaeram chamadas de pseudo-máquinas (Quevedo, 2008). A partir daí a IBM desenvolveu o sistema CP/CMS que era constituído pordois componentes principais, o Control Program (Programa de Controle ou CP) e oConsole Monitor System (Console Monitor de Sistema ou CMS). O CP eraresponsável por simular um computador System/360 e o CMS era um sistemaoperacional “leve” monousuário para uso no compartilhamento de tempo interativo.Ao executar várias cópias do CMS em máquinas virtuais CP o esforço da máquinaera menor por cada usuário se comparado ao uso de sistemas operacionaismultitarefas comuns (Creasy, 1981).
  • 20. 18 O conceito de máquinas virtuais CP/CMS foi importante, pois isola osusuários uns dos outros, com isto aumenta a segurança do sistema, além deaumentar o desempenho no uso de um sistema de compartilhamento de tempo e aosimular um computador completo para cada usuário elimina a necessidade deescrever aplicações específicas para sistemas de tempo compartilhado, já que todasas aplicações já escritas para o sistema original funcionam (Creasy, 1981). Na Figura 1 são listados acontecimentos importantes para a área de TIdesde 1954, nela os fatos que contribuíram para o desenvolvimento da virtualizaçãoestão destacados. Figura 1. História da Virtualização - Linha do Tempo (Quevedo, 2008) A partir da adoção de plataformas de menor custo, como o PC, na décadade 1980 a virtualização perdeu sua importância devido ao custo de um mainframenão compensar o custo necessário para o fornecimento de um PC a cada usuário(Laureano e Maziero, 2008). O conceito voltou a se popularizar a partir do aumento de desempenho efuncionalidade dos computadores pessoais e pelo desenvolvimento da linguagemJava na década de 1990, uma vez que esta possui uma máquina virtual cujo objetivo
  • 21. 19é tornar possível a execução de um mesmo aplicativo em várias plataformasdiferentes (Laureano e Maziero, 2008). Desde 1997 surgiram várias soluções de virtualização no mercado para tirarproveito das máquinas virtuais, é possível citar o VirtualPC, VMware, Xen, Hyper-V eo VirtualBox dentre outras. De acordo com Mattos (2008), a plataforma PC x86 não possui instruçõesque permitem a virtualização de forma nativa, por isto vários fabricantesdesenvolveram soluções para tornar possível a execução de máquinas virtuais nestaplataforma como o VMware, Xen e VirtualPC. Segundo Laureano e Maziero (2008)estas soluções possuem um desempenho inferior ao de soluções que usam avirtualização nativa. Atualmente vários processadores da Intel e AMD já incluem suporte nativo avirtualização com o objetivo de aumentar o desempenho das máquinas virtuais quesão executadas neles através das tecnologias Virtualization Technology (VT) da Intele Secure Virtual Machine (SVM) da AMD (Quevedo, 2008), como exemplo pode-secitar os processadores da série Core i3 (Intel, 2010). Na década de 2000 a virtualização passou a ser adotada por diversasorganizações em busca da consolidação de servidores. A consolidação deservidores consiste na utilização de um servidor físico com vários servidores virtuais,isto permite um melhor aproveitamento dos recursos, a possibilidade de umambiente mais flexível, diminuição do espaço físico e um menor gasto com energia emanutenção de hardware (Mattos, 2008; Fragni, 2009).2.2 Conceitos Segundo Quevedo (2008) “A virtualização pode ser definida como umametodologia que permite a divisão de um único computador físico em diversoscomputadores virtuais independentes entre si”. Um computador real, computador físico, máquina real, sistema nativo ouhospedeiro (host), possui cinco componentes básicos: processador, memória,dispositivos de entrada e saída (E/S), armazenamento em disco e programas
  • 22. 20aplicativos. Sendo os quatro primeiros componentes classificados como hardware eo último como software (Norton, 1996). Uma máquina real é formada por vários componentes físicos que fornecem operações para o sistema operacional e suas aplicações. Iniciando pelo núcleo do sistema real, o processador central (CPU) e o chipset da placa- mãe fornecem um conjunto de instruções e outros elementos fundamentais para o processamento de dados, alocação de memória e processamento de E/S. Olhando mais detalhadamente um sistema físico, temos ainda os dispositivos e os recursos, tais como a memória, o vídeo, o áudio, os discos rígidos, os CD-ROMs e as portas (USB, paralela, serial). Em uma máquina real, a BIOS ou devices drivers específicos fornecem as operações de baixo nível para que um sistema operacional possa acessar os vários recursos da placa-mãe, memória ou serviços de E/S (Figura 2) (Laureano, 2006). Figura 2. Diagrama de uma máquina virtual (Laureano, 2006) Já uma máquina virtual ou VM (Virtual Machine) pode ser definida como“uma duplicata eficiente e isolada de uma máquina real” (Laureano, 2006), mas deacordo com este autor com o passar do tempo o termo passou a englobar várias
  • 23. 21abstrações já que, por exemplo, a Java Virtual Machine (JVM) não virtualiza umsistema real. A Figura 3 mostra um hipervisor executando sobre a plataforma Sparc epermitindo a execução do sistema operacional Windows que foi desenvolvido para aplataforma x86. Figura 3. Uma máquina virtual (Laureano e Maziero, 2008) A partir da Figura 3 é possível verificar as três partes básicas que compõemum ambiente de máquina virtual (Laureano e Maziero, 2008): a) Sistema hospedeiro: contém recursos reais de hardware e software. b) Sistema virtual, ou sistema convidado (guest system): executa sobre osistema virtualizado. c) Monitor de máquina virtual, ou hipervisor: constrói as interfaces virtuais apartir da real. A criação de ambientes virtuais pode acontecer utilizando-se diversosconceitos e tecnologias, como o particionamento de hardware e software, o TSS, asimulação total ou parcial e a emulação (Quevedo, 2008). O monitor de máquina virtual (VMM) é o software responsável por forneceruma interface idêntica ao hardware em que ele funciona, usando a multiplexação devárias máquinas virtuais em um só hardware, e pela criação e controle das máquinasvirtuais (Laureano, 2006). As máquinas virtuais possuem as mesmas características de uma máquinareal, incluindo a BIOS que provê uma interface entre o sistema operacional e o
  • 24. 22hardware, e os dispositivos de entrada e saída. Mas o VMM pode fornecer umambiente diferente do real, com diferenças no armazenamento em disco equantidade de memória (Quevedo, 2008). Popek e Goldberg (1974) enunciaram três propriedades necessárias paraum sistema computacional oferecer suporte a virtualização de forma eficiente: a) Eficiência: todas as instruções de máquina que não comprometem ofuncionamento do sistema devem ser executadas diretamente no hardware semintervenção da máquina virtual. b) Controle de recursos: um monitor de máquina virtual deve ter controlecompleto sobre os recursos virtualizados sendo estritamente proibido que umprograma executando sobre a máquina virtual os acesse diretamente. c) Equivalência: um programa executando sobre uma máquina virtual deveexibir um comportamento idêntico àquele apresentado caso a máquina virtual nãoexistisse e o programa acessasse diretamente uma máquina física equivalente.Duas exceções são consideradas. Primeira, eventualmente, algumas instruçõespodem ter seu tempo de execução aumentado. Segunda, pode haver problemas deconflito de acesso a recursos, os quais devem ser resolvidos de forma apropriada. Estas propriedades classificaram a ISA (Conjunto de Instruções daArquitetura ou Instruction Set Architecture) em três grupos (Carissimi, 2008): asprivilegiadas se executadas por um programa em modo usuário causam exceções;as sensíveis de controle permitem a alteração de recursos do sistema; e assensíveis comportamentais cujo comportamento dependem da configuração derecursos, como conteúdo de registradores internos ou modos de execução doprocessador. A partir disto Popek e Goldberg (1974) enunciaram e provaram o seguinteteorema sobre a possibilidade de construção de um hipervisor em uma determinadaplataforma: Para qualquer computador convencional de terceira geração, um hipervisor pode ser construído se o conjunto de instruções sensíveis daquele computador for um subconjunto de seu conjunto de instruções privilegiadas.
  • 25. 23 De acordo com Carissimi (2008) o teorema pode ser traduzido no fato deque qualquer instrução que possa afetar o controle do hipervisor deve passar peloseu controle.2.2.1 Emulador e máquina virtual Um emulador simula um computador real, ele é desenvolvidoespecificamente para transcrever instruções do um processador alvo para oprocessador no qual ele está sendo executado. O emulador implementa asoperações da máquina real em software, ou seja, ele interpreta ou recompila umcódigo que foi desenvolvido para outra plataforma (Laureano, 2006). Enquanto na emulação o software simula um computador real traduzindotodas as instruções, na virtualização ele é responsável por multiplexar um hardwarereal, o que possibilita que máquinas virtuais sejam consideradas cópias idênticas eisoladas do hardware real (Quevedo, 2008). O Bochs (Lawton, Denney et al., 2010), o Crusoe (Klaiber, 2000) e o QEMU(Qemu, 2010) são exemplos de emuladores segundo Laureano e Maziero (2008).2.2.2 Abstração e virtualização Existe uma diferença entre abstração e virtualização. A abstração provêalguns recursos específicos de hardware, enquanto a virtualização provê umconjunto completo de recursos. Na Figura 4 é possível visualizar esta diferença, naabstração o software pode acessar os arquivos para operações específicas, comoread ou write, enquanto a virtualização fornece um sistema de arquivos montadosobre um arquivo, onde é possível realizar outras operações, como mkdir (Laureano,2006).
  • 26. 24 Figura 4. Diferença entre abstração e virtualização. (Laureano e Maziero, 2008)2.3 Hipervisores Como já vimos o hipervisor, ou monitor de máquinas virtuais (VMM), é acamada de software que faz a criação e controla o ambiente simulando o acessodireto ao hardware. Laureano e Maziero (2008) afirmam que um hipervisor deveatender a três requisitos básicos: prover um ambiente de execução basicamenteidêntico ao da máquina real; o hipervisor deve ter controle total sobre os recursos damáquina real; e, no pior caso, os programas em execução nas máquinas virtuaisdevem apresentar leves degradações de desempenho. Segundo Quevedo (2008) e Laureano e Maziero (2008) as seguintespropriedades, enunciadas por Popek e Goldberg (1974), devem ser atendidas porum hipervisor ideal: a) Equivalência: o hipervisor deve prover um ambiente de execução quaseidêntico ao da máquina real original. Possibilitando um comportamento idêntico aoda sua execução sobre a máquina real. b) Controle de recursos: o hipervisor deve possuir controle completo dosrecursos da máquina real. Nenhum programa executado na máquina virtual deve teracesso a recursos que não tenham sido alocados explicitamente pelo hipervisor. c) Eficiência: a maior parte das instruções do processador virtual devem serexecutadas diretamente pelo processador da máquina real, sem intervenções do
  • 27. 25hipervisor. Este deve somente interpretar instruções que não possam serexecutadas pelo processador real. Quevedo (2008) também cita as seguintes propriedades frequentementeassociadas à hipervisores: a) Isolamento: um software ao ser executado em máquina real não pode ver,influenciar ou modificar outro software que esteja em execução no hipervisor ou emoutra máquina virtual. b) Inspeção: o hipervisor pode controlar e acessar todas as informações doestado interno da máquina virtual. c) Gerenciabilidade: a administração de várias instâncias de máquinasvirtuais sobre um mesmo hipervisor é simplificada e centralizada. O hipervisor écapaz de gerenciar os recursos entre os sistemas convidados. d) Encapsulamento: através da inspeção o hipervisor é capaz de salvarestados de uma máquina virtual, isto permite o retorno a um estado anterior,análises em casos de falha e migração entre hipervisores executando emcomputadores diferentes. e) Recursividade: deve ser possível executar um hipervisor dentro de umamáquina virtual, produzindo um novo nível de máquinas virtuais.2.3.1 Tipos de hipervisores De acordo com Quevedo (2008) os hipervisores podem ser divididos emdiferentes classes: a) Complete Software Interpreter Machine (CSIM): as instruções passam poruma tradução através do software antes de serem executadas na CPU através datécnica de tradução dinâmica, que consiste em traduzir e guardar blocos de código.
  • 28. 26 b) Hybrid Virtual Machine (HVM): quando todas as instruções privilegiadassão executadas por software, é utilizada quando a CPU não suporta hipervisores dotipo I ou II, estes serão tratados na próxima seção. c) Hipervisor simples: a maior parte das instruções é executada diretamenteno hardware. Os hipervisores desta classe normalmente possuem um melhordesempenho se comparado a hipervisores das outras classes.2.3.2 Classificação dos hipervisores A seguir são detalhados os hipervisores pela abordagem utilizada na suaconstrução segundo Laureano (2006) e Quevedo (2008).2.3.2.1 Hipervisores do tipo I Hipervisores do tipo I, também conhecido como abordagem clássica ouhipervisores nativos, executam diretamente sobre o hardware da máquina real, comas máquinas virtuais sendo criadas na camada acima. O hipervisor é executado commaior prioridade e as VMs executam no modo usuário, possibilitando que ohipervisor intercepte e emule todas as operações do sistema convidado quenecessitem de recursos do hardware. Este tipo está exemplificado na Figura 5 e éutilizado pelo VMware ESX Server e o ambiente Xen. Figura 5. Hipervisor ou monitor de tipo I (Laureano, 2006)
  • 29. 272.3.2.2 Hipervisores do tipo II Hipervisores do tipo II, também conhecido como abordagem hospedada ouhipervisores convidados, executam sobre o sistema operacional hospedeiro, comouma aplicação do sistema real que utiliza os drivers do sistema operacional paraacesso ao hardware. Este tipo simula todas as operações que o sistema hospedeirocontrola. Ele está exemplificado na Figura 6 e é utilizado pelo VMware Workstation,o QEMU e o VirtualBox. Figura 6. Hipervisor ou monitor de tipo II (Laureano, 2006)2.3.2.3 Hipervisores híbridos Os hipervisores de tipo I e II não são muito utilizados em sua formaconceitual, na prática são inseridas várias otimizações que tem como objetivomelhorar o desempenho. Como as otimizações levam a arquiteturas diferenciadaselas são chamadas de abordagens híbridas. Como as operações de E/S são pontos cruciais no desempenho doshipervisores, as principais otimizações são feitas nestas operações. É possível listarquatro otimizações mais usadas: a) Em hipervisores de tipo I:
  • 30. 28 1. O sistema convidado acessa diretamente o hardware hospedeiro, para permitir isto são necessárias mudanças no núcleo do sistema convidado e no hipervisor. A Figura 7 ilustra este caso. Figura 7. Abordagem híbrida para tipo I (Laureano, 2006)b) Em hipervisores de tipo II, ilustrado pela Figura 8: 1. O sistema convidado acessa diretamente o sistema hospedeiro, oferecendo partes da API do sistema hospedeiro. 2. O sistema convidado acessa diretamente o hardware, isto é feito por meio de uma implementação parcial no hipervisor e no sistema convidado através de um driver específico. 3. O hipervisor acessa diretamente o hardware. Implementado a partir da instalação de um driver no sistema hospedeiro.
  • 31. 29 Figura 8. Abordagem híbrida para tipo II (Laureano, 2006)2.4 Formas de virtualização Existem várias formas possíveis de classificação para a virtualização, aquisão tratadas as formas utilizadas em Laureano (2006) e Quevedo (2008). A classificação de acordo com o tipo de sistema convidado suportado(Rosenblum, 2004) é dividida em virtualização do hardware, virtualização do sistemaoperacional e virtualização de linguagens de programação. a) A virtualização do hardware exporta o sistema físico como uma abstraçãodo hardware, possibilitando o funcionamento de qualquer software escrito para aarquitetura. b) A virtualização do sistema operacional exporta um sistema operacionalcomo abstração de um sistema específico, permitindo a execução de aplicativosdesenvolvidos para outro sistema operacional. c) A virtualização de linguagens de programação consiste em uma aplicaçãoque é executada no sistema operacional, suas máquinas virtuais são desenvolvidaspara computadores fictícios projetados para uma finalidade específica. A camada da
  • 32. 30aplicação é responsável por exportar a abstração para execução dos programas queforam desenvolvidos para ela. Já na outra classificação, de Chiueh (2005), os sistemas são classificadoscomo Hardware Abstraction Layer (HAL), abstração da Instruction Set Architeture(ISA), nível de sistema operacional, nível de aplicação e biblioteca de interface dousuário. a) Na virtualização HAL o hipervisor simula uma arquitetura completa para osistema convidado, fazendo com que o sistema convidado acredite estar executandosobre um sistema completo. b) Na Abstração da ISA a virtualização faz a emulação completa da ISA,com isto o emulador executa as instruções do sistema convidado através datradução das instruções para o sistema nativo. c) A virtualização de nível de sistema operacional é obtida utilizando umachamada de sistema específica, o seu principal benefício é a criação de umacamada de isolamento de processos. d) A virtualização pelo nível de aplicação é obtida através da abstração dacamada de execução, com uma aplicação utilizando esta camada para execuçãodas instruções do programa. Isto permite que um aplicativo seja executado emvárias plataformas. e) E, por fim, a virtualização da biblioteca de interface para o usuário é feitacom a abstração do topo do sistema operacional, permitindo que aplicações queusam o conjunto de bibliotecas disponibilizadas por um sistema consigam executarem outro sistema.2.5 Técnicas de virtualização e emulação Para construção de hipervisores é necessário definir algumas estratégiaspara a virtualização. As estratégias mais utilizadas são a virtualização total (full
  • 33. 31virtualization), a para-virtualização (paravirtualization) e a recompilação dinâmica(dynamic recompilation).2.5.1 Virtualização total Na virtualização total o hipervisor fornece uma estrutura completa dehardware virtualizada, que corresponde a uma máquina real existente. Destamaneira os sistemas operacionais convidados não precisam sofrer nenhumaalteração ou ajuste para execução dentro do ambiente virtual. Esta abordagem éutilizada na maioria dos hipervisores de sistema clássicos como o QEMU e VMwaree está ilustrada na Figura 9 (Laureano e Maziero, 2008). A maior vantagem desta estratégia é que os sistemas operacionaisconvencionais podem ser executados sem necessidade de modificações, mas ele éexecutado mais lentamente já que todos os acessos ao hardware são intermediadospelo hipervisor. O hipervisor também é o responsável por implementar alternativaspara que as operações privilegiadas sejam executadas em processadores que nãosuportam a virtualização nativamente (Laureano, 2006). Figura 9. Virtualização total (Laureano, 2006)
  • 34. 322.5.2 Para-virtualização Na para-virtualização, ilustrada na Figura 10, o sistema convidado sofremodificações para obter uma interação mais eficiente com o monitor de máquinasvirtuais. Esta estratégia permite que o sistema convidado acesse alguns recursos dohardware, como processador e memória, diretamente, sendo este acesso somentemonitorado pelo hipervisor que fornece seus “limites”, como os endereços dememória que podem ser utilizados e endereçamento em disco (Laureano, 2006;Quevedo, 2008). O desempenho obtido com esta técnica compensa as modificaçõesnecessárias aos sistemas convidados. A complexidade para desenvolvimento doshipervisores é reduzida com esta estratégia, já que a maioria dos processadores nãosuporta nativamente a para-virtualização. O Denali (Whitaker, Shaw et al., 2002) e oXen (Clark, 2002) foram os primeiros ambientes a adotar a para-virtualização(Laureano e Maziero, 2008). Figura 10. Para-virtualização (Laureano, 2006)
  • 35. 332.5.3 Tradução dinâmica A tradução dinâmica, ou recompilação dinâmica, traduz, em tempo deexecução do programa, as instruções de um formato para outro. Nela as solicitaçõesde um sistema convidado são analisadas, reorganizadas e traduzidas em novassequências durante a execução (Quevedo, 2008). Ela tem vários objetivos: detectar e tratar instruções sensíveis nãoprivilegiadas; traduzir as instruções geradas pelo sistema convidado para a interfaceISA do hospedeiro; ou analisar, reorganizar e otimizar sequências de instruçõesgeradas pelo sistema convidado com objetivo de melhorar o desempenho. Amáquina virtual Java implementa esta estratégia usando o JIT (Just-in-TimeBytecode Compiler). Outros hipervisores implementam esta técnica por meio dabusca e troca de instruções sensíveis para outras rotinas em processadores que nãosuportam virtualização nativamente (Laureano e Maziero, 2008). Esta estratégia é composta por sete passos (Laureano, 2006): agrupamentode bits, desmontagem (disassembling), geração de código intermediário,decompilação, compilação, montagem (assembling) e armazenagem dos bits.2.6 Processadores com virtualização nativa A arquitetura x86 possui quatro níveis de privilégio, ou modos de operação,chamados anéis (rings) que são numerados de 0 a 3, sendo o nível 0 o de maiorprivilégio na execução de intruções (Mattos, 2008). Os sistemas operacionais convencionais, como Microsoft Windows e asvariações do UNIX, usam dois níveis do processador, o nível 0 usado pelo sistemaoperacional e o nível 3 que possui o menor privilégio e é usado nos processos dousuário, como é possível verificar na Figura 11. Quando um processo de usuáriotenta executar uma instrução privilegiada ocorre uma exceção que poderá sertratada, mas a arquitetura x86, em especial a família de processadores Intel PentiumIV e seus predecessores (Laureano e Maziero, 2008), possui dezessete instruçõesnão privilegiadas que são sensíveis, ou seja, violam o teorema estabelecido porPopek e Goldberg (1974) (Carissimi, 2008).
  • 36. 34 Ainda assim é possível implementar máquinas virtuais para as arquiteturasque não respeitam o teorema, mas existe um custo no desempenho. Neste caso avirtualização é feita por meio das estratégias de para-virtualização e traduçãodinâmica. Os fabricantes de processadores AMD e Intel desenvolveram extensõespara a arquitetura x86 para suportarem a virtualização, elas são denominadas AMD-V (AMD-Virtualization) e Intel VT (Intel Virtualization Technology). Mesmo sendosimilares elas são incompatíveis entre si. Figura 11. Uso dos níveis de privilégio da arquitetura x86 (Maziero, 2008) De acordo com Carissimi (2008), a AMD implementa este suporte por meiode funções especiais no processador que são executadas por um hipervisor econtrolam, através do hipervisor, se os acessos do sistema hóspede são permitidos. Ainda segundo este autor a Intel possui mecanismos similares. Estesmecanismos completam a ideia do conceito de anéis de proteção adicionando doismodos, o root e o não-root. O hipervisor, que executa em modo root, controla os doismodos, podendo transferir a execução de um sistema operacional convidado para omodo não-root, onde as instruções do anel 0 são executadas sem risco para osistema. Este comportamento pode ser verificado na Figura 12. Com o suporte oferecido pelos processadores os hipervisores podemcombinar a virtualização completa ou a para-virtualização com técnicas deaceleração de E/S. Ela tem o melhor desempenho de CPU, memória e E/S de todosos tipos de virtualização na arquitetura x86 (Quevedo, 2008).
  • 37. 35 Figura 12. Visão geral da arquitetura Intel VT (Maziero, 2008)2.7 Usos da virtualização Vistos os conceitos envolvidos na virtualização esta seção trata dos seususos, vantagens e desvantagens. Segundo Quevedo (2008) a utilização de máquinas virtuais pode ajudar nadiminuição da complexidade dos ambientes de TI. Ela facilita os trabalhos da equipede suporte, aumenta a portabilidade dos ambientes, diminui os custos e aumenta asegurança e disponibilidade dos recursos para os usuários. Principais usos para máquinas virtuais (Laureano, 2006; Laureano eMaziero, 2008; Quevedo, 2008; Seo, 2009): consolidação de servidores, laboratóriosde ensino, execução de software legado, debug e monitoração de aplicações,sandboxing1, honeypots2 e honeynets3, facilitar a migração de aplicações e1 “A técnica de sandboxing consiste na criação de um ambiente de execução totalmente isolado deforma a garantir que o mau-funcionamento de um sistema não interfira nos demais.” Quevedo (2008)2 Sistema preparado para ser atacado e invadido. (Laureano e Maziero, 2008)
  • 38. 36servidores, permitir a simulação de um hardware específico, desenvolvimento desistemas e planos de contingência e continuidade de negócios. A consolidação de servidores, que consiste em consolidar a carga dediversos servidores em poucos ou apenas um servidor, é um dos principais atrativosda virtualização, pois reduz custos com o gerenciamento de servidores, a utilizaçãode espaço físico, o consumo de energia elétrica, entre outros, auxiliando assim naredução do Custo Total de Propriedade4 (TCO) (Quevedo, 2008). O princípio da consolidação de servidores é a utilização de um servidor demaior capacidade em substituição a vários servidores de menor capacidade. Peladiminuição da quantidade de servidores ela cria um ponto único de falha (SPOF), oque aumenta os riscos da indisponibilidade de vários serviços ao mesmo tempo. As máquinas virtuais, quando utilizadas no ensino, facilitam a aplicação deaulas práticas e laboratórios multidisciplinares e reduz o custo de manutenção. Jáque é possível criar máquinas virtuais com sistemas operacionais e aplicaçõesespecíficas a depender do tipo da aula, neste caso elas poderiam ficar disponíveisem um servidor e serem executadas somente quando forem necessárias. Aplicações ou sistemas operacionais legados podem ser executados a partirda simulação de um hardware compatível com a mesma, sem necessidade de umhardware dedicado a estas funções. Ela auxilia na criação de ambientes múltiplos de execução, ajudando aaumentar a Quality of Service (QoS) e a disponibilidade dos recursos. Também épossível executar mais aplicações em um mesmo hardware já que uma máquinavirtual não interfere em outras. Permite que aplicações sejam distribuídas com todo um ambiente deexecução já configurado. É possível também testar o comportamento de aplicaçõesem diversos sistemas operacionais utilizando somente o computador dodesenvolvedor. Ela é útil na aplicação da técnica de sandboxing pela possibilidade doisolamento para execução de aplicações não confiáveis. Elas também auxiliam na3 Coleção de honeypots com diferentes sistemas operacionais, configurações e serviços de rede.(Laureano e Maziero, 2008)4 “É o custo de manter a tecnologia.” Ribas (2008)
  • 39. 37criação de honeypots e honeynets já que é possível criar várias máquinas isoladascom diferentes configurações para que sejam atacadas (Laureano e Maziero, 2008). Facilita a criação e aplicação de planos de contingência já que um servidorcom problemas pode ser restaurado rapidamente, sem envolver nenhumareinstalação física de equipamentos ou de sistema operacional.2.7.1 Vantagens A partir destes usos podem ser citadas as seguintes vantagens no uso davirtualização (Laureano, 2006; Quevedo, 2008; Ribas, 2008; Nascimento, 2009): a) Instalação de diversos sistemas operacionais, de diferentes plataformas,usando somente um computador; b) Portabilidade de aplicações, principalmente aplicações legadas; c) Facilidade no gerenciamento de servidores, pela diminuição daquantidade necessária; d) Facilidade na criação de ambientes operacionais em plataformasdiferentes para demonstração de sistemas, testes de novos aplicativos, testes desistemas operacionais, aplicação de atualizações, etc.; e) Diminuição de custos com equipamentos, com espaço físico e comenergia elétrica através da consolidação de servidores, auxiliando a conformidadede práticas de TI Verde; f) Melhor utilização dos recursos disponíveis; g) Agilidade na criação de backups; h) Simplificação do ambiente de desenvolvimento e testes de novosaplicativos; i) Isolamento de falhas de software, provendo maior segurança; j) Conter ataques usando o isolamento;
  • 40. 38 k) Simular diferentes situações do mundo real, sem a necessidade decompra de equipamentos específicos; l) Simular alterações e falhas de hardware; m) Prover serviços dedicados a clientes com segurança e confiabilidade.2.7.2 Desvantagens Podem ser citadas as seguintes desvantagens no uso da virtualização(Laureano, 2006; Quevedo, 2008; Ribas, 2008; Nascimento, 2009): a) Desempenho limitado, se comparado ao ambiente real, e consumo derecursos pela camada de virtualização; b) Necessidade de alterações no sistema hóspede para melhorar odesempenho; c) A criação de um ponto único de falha (SPOF), o que aumenta a criticidadedo ambiente, pois um servidor hospedeiro indisponível pode significar aindisponibilidade de diversas aplicações; d) Necessidade de hardware específico para obtenção de um melhordesempenho, como é o caso dos processadores; e) Compatibilidade de hardware para algumas soluções, como dispositivosUSB, interfaces de rede e armazenamento; f) Para garantir uma maior segurança do ambiente os sistemas hospedeirosnão devem ser esquecidos, eles também devem estar seguindo todas as políticas desegurança estabelecidas pela organização. Este capítulo apresentou os principais conceitos envolvidos na virtualizaçãoe fez um resumo de seus principais usos, vantagens e desvantagens. O próximocapítulo irá mostrar as principais ferramentas de virtualização disponíveis nomercado.
  • 41. 393 FERRAMENTAS PARA MÁQUINAS VIRTUAIS Depois de discorrer sobre os diversos conceitos que envolvem avirtualização, este capítulo mostra as características das principais ferramentas devirtualização utilizadas para consolidação de servidores e apresenta uma brevecomparação das mesmas. Ele está dividido entre os principais fornecedores (Nascimento, 2009) desoluções para virtualização de servidores: VMware, Citrix e Microsoft. Segue umpequeno histórico destes: A VMware fundada em 1998, disponibilizou seu software de virtualização em 1999, desde então, mantém a liderança do mercado e atualmente esta bem a frente dos seus principais concorrentes diretos, Microsoft e Citrix (Xen). A Microsoft disponibilizou seu software de virtualização em 2006 após adquirir a Connectix, uma pequena e promissora empresa especializada em produtos para virtualização. Desde então, tem investido nessa tecnologia para se tornar a líder de mercado e atualmente ocupa o segundo lugar. A Xen disponibilizou seu software de virtualização em 2003, em 2007 foi adquirida pela Citrix, líder de mercado na virtualização de aplicações, assim o software da Xen ganhou mais destaque no mercado. Porém, sua participação é pequena e a empresa ocupa a terceira posição na liderança do mercado (Nascimento, 2009).3.1 VMware De acordo com Quevedo (2008), o VMware foi a primeira solução devirtualização para a arquitetura x86, fornecendo uma implementação completa aosistema convidado. A VMware Inc. é a empresa que desenvolve o software e possuiuma linha completa de produtos voltados a virtualização, alguns sem custo delicenciamento, que vão desde desktops a datacenters (Mattos, 2008). Ele provê uma interface x86 extremamente genérica para o sistemaconvidado, o que faz seu hipervisor mais complexo já que ele deve emular certasinstruções para representar corretamente um processador virtual em cada máquinavirtual. Esta emulação ocorre através da tradução dinâmica. Ele também fornece umdriver, o VMdriver, para permitir que as máquinas virtuais acessem drivers dosistema hóspede diretamente e assim diminuir a perda do desempenho (Carissimi,2008).
  • 42. 40 São disponibilizados produtos em três categorias: gerenciamento eautomação, infraestrutura virtual e plataformas de virtualização. Os produtos degerenciamento e automação permitem a gerência de todos os recursos dainfraestrutura virtual de forma automatizada e centralizada, possibilitando amonitoração dos sistemas, conversão de máquinas físicas em máquinas virtuais,recuperação de desastres e outros (Carissimi, 2008). Os de infraestrutura virtual auxiliam na monitoração e alocação de recursosentre máquinas virtuais para o fornecimento de requisitos e regras de negócio. E osprodutos de virtualização são os destinados a criar máquinas virtuais, que são tantohipervisores nativos quanto convidados (Carissimi, 2008; Laureano e Maziero,2008). O principal produto oferecido pela VMware é o VMware vSphere. Ele écapaz de oferecer um datacenter virtual para ambientes de todos os tamanhosatendendo várias necessidades de flexibilidade, velocidade, resistência e eficiência,transformando os dados em uma “nuvem”, um sistema elástico, autogerido eautorecuperável, podendo ser associado a outras “nuvens” de computação externas.Ele garante níveis adequados de disponibilidade, escalabilidade e segurança paratodos os aplicativos, sem depender do hardware e da localização. Também forneceum gerenciamento de energia, desligando servidores fora de uso, ajudando a criarum datacenter verde (Nascimento, 2009). O VMware vSphere, como ilustrado na Figura 13, oferece: o ApplicationServices, que garantem os níveis adequados de disponibilidade, escalabilidade esegurança; e o Infrastructure Services, que resume, agrega e aloca servidores,armazenamento e rede para o máximo de eficiência da infraestrutura. Ele tambémse integra ao VMware vCenter Suite, que permite gerenciar o datacenter virtual e asaplicações que executam nele, além de poder ser integrado a outras “nuvens”externas (Vmware, 2010a). A seguir são listados os hipervisores da VMware: a) VMware ESX Server: é um hipervisor nativo para ser utilizado emdatacenters virtuais. Ele possui um kernel proprietário chamado VMkernel e utiliza oRed Hat Linux para fornecimento de outros serviços através do console de serviços,como gerência de usuários.
  • 43. 41 Figura 13. Datacenter virtual (Vmware, 2010a) b) VMware ESXi Server: possui as mesmas características do VMware ESXServer mas não possui o console de serviços, fazendo que os agentes do VMwareexecutem diretamente no VMkernel. A diferença entre o ESX e o ESXi pode servisualizada na Figura 14. c) VMware Server: versão gratuita do ESX Server para permitir que osusuários testem o produto antes de adquirir. Não está disponível para esta versão aferramenta de configuração, sendo necessária a utilização de ambientes já pré-definidos. Ele é um hipervisor convidado. d) VMware Workstation: hipervisor convidado para ser utilizado emambientes desktop, foi a primeira versão comercializada. e) VMware Fusion: versão do VMware Workstation para o sistemaoperacional Mac OS com processadores Intel.
  • 44. 42 f) VMware Player: versão gratuita do VMware Workstation, limitado aexecutar as máquinas criadas com versões comerciais do produto. Figura 14. Arquitetura das versões ESX e ESXi (Vmware, 2010b)3.2 Citrix A Citrix disponibiliza o Xen, que é um hipervisor de código aberto para aarquitetura x86 que utiliza a técnica de para-virtualização. Uma de suas vantagens éo melhor desempenho do que os produtos de virtualização total e seus principais
  • 45. 43usos são para a consolidação de servidores, o suporte de aplicações legadas ecomputação em cluster (Mattos, 2008; Quevedo, 2008). O Xen requer, devido à para-virtualização, que o sistema hóspede sejaalterado. Em sistemas operacionais de código aberto, como o Linux, isto é possível,mas em sistemas proprietários, como o Windows, não é possível executar sobre oambiente Xen (Quevedo, 2008). O Xen também pode ser implementado utilizando a virtualização total,requerendo um hardware compatível como o Intel VT ou AMD-V, o que possibilita autilização de sistemas como o Windows, já que não são necessárias modificações,mas com um desempenho menor que o da para-virtualização (Laureano e Maziero,2008; Quevedo, 2008). A tecnologia de virtualização fornecida pela Xen, através da para-virtualização, fornece abstrações, como processador, memória e rede virtual, ondeos sistemas podem ser portados. Estas abstrações não precisam ser similares aohardware da máquina real (Mattos, 2008). Os principais conceitos do Xen são o de domínio e o de hipervisor. Osdomínios são as máquinas virtuais e podem ser de dois tipos, privilegiadas (domínio0) e não privilegiadas (domínio U). O hipervisor controla os recursos decomunicação, memória e processamento das máquinas virtuais, mas não possui osdrivers necessários para manipular os dispositivos (Carissimi, 2008; Mattos, 2008). Isto faz com que o Xen não suporte interação com os sistemas hospedes,sendo necessária a utilização de um sistema inicial, uma máquina virtual do domínio0, invocado pelo hipervisor. Esta máquina de domínio 0 acessa uma interface decontrole e executa as aplicações de gerenciamento, sendo que as máquinas dedomínio U só podem ser criadas, iniciadas e desligadas através do domínio 0(Carissimi, 2008; Mattos, 2008). Esta máquina de domínio 0 é executada em Linux com um núcleomodificado e este possui privilégios para acessar os recursos da máquina física e secomunicar com as máquinas virtuais de domínio U. Para isto ela possui os drivers dohardware da máquina física e dois drivers para tratar requisições de acesso à rede eao disco feitas pelas máquinas de domínio U. As máquinas de domínio U nãopossuem acesso ao hardware, sendo este feito utilizando-se a máquina de domínio0 através da abstração fornecida pelo hipervisor (Carissimi, 2008; Mattos, 2008). AFigura 15 ilustra o funcionamento do Xen.
  • 46. 44 Figura 15. Hipervisor Xen (Laureano e Maziero, 2008) A partir da versão 3, onde foi introduzido o suporte a virtualização completa,o Xen distingue domínios U para-virtualizados, os domínios U-PV, dos domínios Uvirtualizados, domínios U-HVM (Hosted Virtual Machines). Os domínios U-PV sabemque não possuem acesso direto ao hardware e reconhecem a existência de outrasmáquinas virtuais, já os domínios U-HVM não sabem que não possuem acessodireto e nem reconhecem outras máquinas. Para este último caso o Xen fornece umemulador QEMU vinculado a cada domínio U-HVM, sendo o hardware fornecidopara estes através dele (Carissimi, 2008). O Xen também suporta as funções de Migration e Live Migration, onde épossível migrar um domínio de forma controlada ocorrendo interrupção da máquinavirtual, no caso da Migration, e sem a necessidade de interrupções, no caso da LiveMigration. Várias distribuições do Linux suportam o Xen de forma nativa e algumasainda fornecem ferramentas gráficas para a criação e manutenção de máquinasvirtuais neste hipervisor (Quevedo, 2008).3.3 Microsoft A Microsoft possui vários produtos voltados a virtualização de soluções denegócios, como é possível visualizar na Figura 16.
  • 47. 45 Figura 16. Produtos e Tecnologias de Virtualização Microsoft (Microsoft, 2010a) Estes produtos têm como objetivo gerar maior eficiência, flexibilidade emelhor relação custo-benefício para toda a organização, como (Microsoft, 2010b; c):provisionamento e consolidação de servidores; implantação de aplicações;gerenciamento centralizado e baseado em diretivas; continuidade dos negócios/recuperação de desastres; menor TCO, maior ROI; computação dinâmica; teste edesenvolvimento; segurança; e hospedagem. Com estes produtos a Microsoft fornece um conjunto completo detecnologias, permitindo a integração da infraestrutura virtualizada, utilizandointerfaces familiares e consoles de gestão compartilhada, que simplificam a gestãoda infraestrutura. Os principais produtos de virtualização da Microsoft são: a) Virtualização de Servidores com o Windows Server 2008 R2 Hyper-V:hipervisor que funciona diretamente sobre o hardware, abaixo do sistemaoperacional. Algumas de suas características são: o suporte a arquiteturas x86 ex64, ambiente multiprocessador, switch virtual integrado, migração rápida demáquinas virtuais com o mínimo de downtime. Ele requer processador compatível
  • 48. 46com Intel VT ou AMD-V. Sua arquitetura, que apresenta semelhanças com aarquitetura do Xen, pode ser visualizada na Figura 17. Figura 17. Arquitetura do Hyper-V (Microsoft, 2010d) b) Gerenciamento de Virtualização com o System Center Virtual MachineManager: gerencia a configuração dos servidores hospedeiros e das máquinasvirtuais, criação de máquinas virtuais, acompanhamento, alterações, recuperaçãorápida, auto provisionamento e automatização. c) Virtualização de Aplicações com o Microsoft Application Virtualization(App-V): transforma aplicações em serviços virtuais gerenciados que não precisamser instalados e não entram em conflito com outras aplicações e é capaz detransmitir estas aplicações para outros computadores por demanda.
  • 49. 47 d) Virtualização da Estação de Trabalho com o Virtual PC: cria um ambientede sistema operacional separado na estação de trabalho, permitindo a execução deaplicações legadas em um sistema operacional não suportado ou ainda que doisambientes distintos sejam executados no mesmo computador. e) Virtualização de Apresentação com os Serviços de Terminal: permite queaplicações que executam no servidor sejam acessadas a partir de uma página dainternet e/ou diretamente em uma estação de trabalho local. Ela permite manter apropriedade intelectual protegida através da remoção de aplicações e dados daestação de trabalho dos usuários. f) Virtualização do Armazenamento com System Center Data ProtectionManager: protege máquinas virtuais sem tempo de inatividade, ele fornece backuprápido e retenção eficiente que não consome um espaço excessivo em disco. Outros produtos como o System Center Operations Manager e o SystemCenter Configuration Manager também podem trazer benefícios a virtualizaçãofacilitando o gerenciamento e a monitoração dos sistemas hospedeiros e asmáquinas virtuais hospedadas neles. Vale ressaltar que, assim como o Xen, o Hyper-V necessita que driverssejam instalados nos sistemas convidados para garantir um melhor desempenho,caso estes não sejam instalados as máquinas virtuais podem ter um desempenhoinferior.3.4 Comparação entre as ferramentas Entre as três ferramentas a VMware é a que tem a maior participação demercado (Nascimento, 2009). Seguem alguns dados obtidos no trabalho deNascimento (2009) em fevereiro de 2009: a) As vendas de licenças de virtualização, no mundo todo, cresceram 53%no segundo trimestre de 2008 em relação ao mesmo período de 2007.
  • 50. 48 b) No segundo trimestre de 2008, a VMware foi líder em receitas no mercadode virtualização com 78% de participação, a Virtuozzo, da Parallels, ficou emsegundo lugar com 16% e a Microsoft apenas 1,1% da renda total. c) A VMware mantém sua liderança no mercado de virtualização x86, mas aMicrosoft está ganhando mercado com o Hyper-V. d) No ranking dos vendedores de servidores com funções de virtualizaçãotemos a HP com 34% do mercado, seguida pela Dell com 25% e IBM com 16%. e) A VMware possui 44% de participação no mercado por licenciamento(somando ESX e Server) contra 23% da Microsoft (somando Hyper-V e VirtualServer). Porém, não está claro o quanto desse mercado é representado porequipamentos em produção, teste, desenvolvimento. f) O preço do Hyper-V da Microsoft é de 28 dólares por servidor e as versõesde alta qualidade do Hyper-V também são gratuitas para os usuários do WindowsServer 2008. Uma licença padrão para o VMware ESX Server custa 3 mil dólares.Mesmo assim, a VMware possui uma participação no mercado bem maior que aMicrosoft. Tanto em faturamento quanto por licenciamento. Nos sites das três empresas foi possível encontrar comparações sobre qualproduto é melhor, todas as empresas tentam mostrar porque o seu produto é omelhor, mas isto depende muito do cenário de cada organização. As comparaçõesencontradas foram várias, dentre elas é possível citar as seguintes: VMwareESXi/ESX, Windows Server 2008 com Hyper-V e Citrix XenServer no site daVMware (Vmware, 2010c), XenServer versus a competição (VMware ESXi) no siteda Citrix (Citrix, 2010) e a comparação de custos de operação e manutenção entre oMicrosoft Hyper-V e VMware ESX & vSphere no site da Microsoft (Microsoft,2010e). O Anexo A e o Anexo B mostram as duas primeiras comparações decaracterísticas. Não foram encontradas durante esta pesquisa de TCC comparações entreas ferramentas da Microsoft e da Citrix nos sites das mesmas. No Anexo C é possível verificar a comparação entre várias máquinas virtuaise emuladores, onde é possível verificar as técnicas utilizadas e os seus principaisusos.
  • 51. 49 Após análise das comparações encontradas foi possível verificar que aVMware possui um conjunto de produtos que são superiores ao fornecidos pelaCitrix e pela Microsoft, mas que também possui um custo mais alto de licenciamentoe manutenção. É bom notar também que, entre os três fabricantes, o produto daMicrosoft é o que é compatível com o menor número de distribuições do sistemaoperacional Linux. Como a escolha da ferramenta envolve várias questões, o maisrecomendável é que seja analisado primeiramente o cenário da implementação, paradecidir quais servidores serão virtualizados, os serviços que serão implantados e otipo de gerenciamento que a organização vai necessitar. Este capítulo apresentou as características das principais ferramentas devirtualização disponíveis no mercado. O próximo capítulo discorre sobre o estudo decaso feito neste trabalho, relacionado com os serviços de informática usados eoferecidos pelo DCOMP/UFS.
  • 52. 504 ESTUDO DE CASO Este capítulo vai tratar do estudo de caso feito no Departamento deComputação da Universidade Federal de Sergipe (DCOMP/UFS). Ao final, sãoapresentados os resultados obtidos.4.1 Sobre o DCOMP O Departamento de Computação (DCOMP) é originário do Departamento deEstatística e Informática, o qual, na criação do Curso de Bacharelado em Ciência daComputação, contava com apenas cinco professores mestres e um graduado naárea de Computação. Em 2006, os professores de Estatística desvincularam-seformando um núcleo próprio. O Departamento de Computação foi então instituído econta hoje com vinte e um professores. Ele oferece atualmente três cursos de graduação e um de pós-graduaçãoalém de oferecer disciplinas para diversos outros cursos da universidade. Os cursos oferecidos pelo DCOMP são Ciência da Computação, comentrada de cinquenta alunos por semestre, Sistemas da Informação, que foi iniciadoem 2007 e conta com uma entrada de cinquenta alunos por ano, Engenharia daComputação, iniciado em 2009 e conta com uma entrada de cinquenta alunos porano, e o Mestrado em Ciência da Computação, que foi iniciado no segundosemestre de 2010 com uma entrada de quinze alunos por ano. O DCOMP conta com cinco laboratórios de ensino (Laboratório de EnsinoGeral, Laboratório de Ensino Avançado, Laboratório de Ensino Básico, Laboratóriode Ensino de Redes e Laboratório de Ensino de Hardware) e três laboratórios depesquisa (Laboratório de Projetos, INES e LABSOFT) equipados comcomputadores. Destes o DCOMP não é responsável pela administração dolaboratório do INES, que conta com a infraestrutura fornecida diretamente pelauniversidade.
  • 53. 51 Também estão disponíveis computadores nas salas dos professores e nasecretaria do departamento. Estes computadores também são utilizados parafunções administrativas. O próprio departamento é responsável pela administração de toda aestrutura de TI interna ao mesmo. Atualmente ele não conta com nenhumfuncionário responsável pela área e não há previsão sobre quando haverá acontratação deste funcionário. Durante o ano de 2010 ocorreu uma renovação dos computadores utilizadosnos laboratórios, secretaria e salas dos professores. Devido ao DCOMP estar situado em uma instituição pública de ensino eleestá sujeito a toda a burocracia e falta de recursos comuns a este tipo dedepartamento, o que dificulta a aquisição de novos servidores e outrosequipamentos. Recentemente ocorreu a utilização da virtualização nos laboratórios doDCOMP em dois casos. O primeiro foi durante a 1ª Semana de Computação, ondefoi criada uma máquina virtual com softwares necessários para utilização durante asaulas dos minicursos oferecidos. E o segundo caso foi durante a etapa regional daMaratona de Programação onde foi disponibilizado aos participantes um ambienteem máquina virtual próprio para a competição. Em breve vai ser construído um novo prédio que irá abrigar novoslaboratórios para o departamento e irão utilizar a infraestrutura de servidores queestá sendo atualizada neste trabalho. Após uma análise da situação atual, que será apresentada na próximaseção, ficou decidido que este trabalho iria abordar somente a consolidação deservidores, já que as maiores deficiências foram encontradas nesta área. Outrostipos de virtualização que podem beneficiar o DCOMP são a virtualização deaplicações e a virtualização de apresentação, que permitiriam uma implantação denovos aplicativos mais rapidamente e a utilização de aplicativos temporários.
  • 54. 524.2 Situação anterior O DCOMP contava com seis servidores que forneciam os serviços dearquivos, DNS5, DHCP6, diretório7, NAT8, Web e gerenciamento de configuração. Amaioria dos servidores contava com alguma versão do Windows Server e dois delesexecutavam uma distribuição do Linux. É possível visualizar este cenário na Figura18. Os hardwares de alguns destes servidores estavam apresentando defeito enenhum deles se encontrava mais no período de garantia, já que a maioria deles foiadquirido, pelo menos, há quatro anos. O servidor ITAIPU fornece o serviço de NAT e o SOBRADINHO os serviçosde servidor Web e DNS para clientes externos, os dois possuem acesso à internetatravés de endereços de internet válidos. Estes dois servidores vinhamapresentando diversos problemas, com travamentos constantes e indisponibilidadede alguns serviços. Era comum a falta de acesso à internet durante várias horas porsemana, pois o servidor NAT parava de funcionar, sendo necessária a reinicializaçãodo mesmo. Recentemente devido a travamentos no servidor SOBRADINHO osserviços de DNS e Web paravam de funcionar, prejudicando o recebimento de e-mails com o domínio do DCOMP e o acesso à página de internet do mesmo. O servidor DCFURNAS provia o serviço de diretório Active Directory, oDOCMACHADINHO o serviço de arquivos, o INFRALAJEADO os serviços de DHCPe DNS para os clientes da rede interna e o MANAGER os serviços de gerenciamentode atualizações, antivírus, softwares e sistemas operacionais. Os serviços de cadaservidor podem ser verificados na Tabela 1.5 Resolve nomes de domínios em endereços de rede.6 Oferece configuração dinâmica de terminais através da concessão de endereços IP de host e outrosparâmetros de configuração para clientes de rede.7 É um serviço que armazena e organiza informações sobre os recursos e os utilizadores de umarede de computadores, e que permite os administradores de rede gerenciar o acesso de utilizador esistemas a esses recursos.8 É uma técnica que consiste em reescrever os endereços IP de origem de um pacote que passampor um router ou firewall de maneira que um computador de uma rede interna tenha acesso a umarede externa.
  • 55. 53 Figura 18. Cenário inicial dos servidores do DCOMP (Elaboração própria) Tabela 1. Serviços em cada servidor Servidor Serviços SOBRADINHO Web DNS externo DCFURNAS Domínio Active Directory Servidor de Arquivos DOCMACHADINHO Servidor de Arquivos INFRALAJEADO DHCP DNS interno ITAIPU NAT MANAGER Gerenciamento de configuração Gerenciamento de atualizações Gerenciamento do antivírus Gerenciamento de ativação do Windows Fonte: Elaboração própria Destes servidores o único que foi adquirido mais recentemente e possuisuporte a arquitetura de 64 bits é o MANAGER, ele também é o que possui o melhordesempenho entre estes seis servidores já que possui uma configuração mais atual. A média de utilização da CPU dos computadores com o Windows Server foianalisada durante um período de tempo, antes de propor a solução, e ficou
  • 56. 54verificado que nos servidores DOCMACHADINHO, DCFURNAS e INFRALAJEADOesta média não chega a 5% durante os horários de funcionamento do departamento.Já o servidor MANAGER tem uma média de utilização de CPU de 50% com picos demais de 80% durante um dia normal. Nos servidores que executavam o Linux não foi feita uma análise dautilização de CPU, mas uma alta utilização da CPU pode ser o motivo dosconstantes travamentos. Alguns usuários chegaram a reportar que o servidorSOBRADINHO ficava muito lento em alguns horários, isto também pode significaruma utilização elevada da CPU e da memória. Não era utilizada nenhuma solução para backup dos sistemas, sendo que osservidores INFRALAJEADO, DOCMACHADINHO, DCFURNAS E SOBRADINHOtinham armazenamentos espelhados, pelo menos para suas partições principais, oque garantia a disponibilidade dos arquivos mesmo na falha de um dos discos. Aconfiguração de cada servidor pode ser verificada na Tabela 2. Tabela 2. Configuração dos servidores Servidor ConfiguraçãoDCFURNAS Processador com um núcleo; 1GB de memória; DoisINFRALAJEADO discos rígidos de 80GB em RAID 1, para espelhamentoSOBRADINHO dos dados; Duas placas de rede Fast Ethernet.DOCMACHADINHO Processador com um núcleo; 1GB de memória; Quatro discos rígidos de 80GB, sendo dois em RAID 1, para espelhamento dos dados; Uma placa de rede Fast Ethernet.ITAIPU Processador com um núcleo; 512MB de memória; Um disco rígido de 40GB; Duas placas de rede Fast Ethernet.MANAGER Processador de dois núcleos; 2GB de memória; Um disco rígido de 160GB; Uma placa de rede Fast Ethernet. Fonte: Elaboração própria Não existia nenhuma solução de gerenciamento destes servidoresimplantada, o que ocasionava a necessidade da presença de alguém parasolucionar diversos problemas, além de impossibilitar o acompanhamento do statusdos computadores de uma maneira mais fácil.
  • 57. 55 Os serviços essenciais para o DCOMP, que são o acesso à internet(fornecido pelo NAT), o DNS e o diretório, não possuíam nenhuma redundância equando acontecia falha em um dos computadores o serviço fornecido por ele ficavaindisponível ao departamento.4.3 Solução proposta Tendo analisado a situação dos servidores foi decidido que a virtualizaçãono DCOMP deveria proporcionar:  Consolidação dos servidores, para aumentar a carga de utilização;  Diminuir o espaço necessário para armazenamento, devido às limitações de espaço físico;  Gerenciamento centralizado, para facilitar a administração;  Aumentar a QoS, provendo um maior tempo de disponibilidade para os serviços;  Diminuir o SPOF, que pode ser ampliado com a utilização da virtualização;  Plano de contingência, a partir da utilização de backups diários dos servidores;  Aumento da segurança da informação de uma maneira geral, com a implantação destas medidas. Primeiramente foram analisados os fornecedores de soluções devirtualização, como visto no capítulo 3, e optou-se por utilizar as soluções daMicrosoft já que o departamento possui atualmente um acordo de licenciamento, quediminui o custo com as licenças dos aplicativos a serem utilizados. Após isto foi necessário obter hardware compatível com estes produtos.Devido à limitação para aquisições do departamento foi necessária a utilização de
  • 58. 56alguns computadores que seriam destinados a laboratórios de ensino. Mas tambémfoi possível adquirir, por meio de um convênio do DCOMP com a FAPESE9, doiscomputadores que foram utilizados nesta implementação.4.3.1 Configuração dos servidores Foi decidido que seriam utilizados ao final da implementação setecomputadores, todos ligados em nobreaks. Destes computadores o MANAGER foi oúnico que continuou a existir como uma máquina real, devido a sua maior utilizaçãoe a falta de um servidor com uma configuração mais adequada para receber estesistema como uma máquina virtual. Outros dois computadores reais foramadicionados para o gerenciamento de máquinas virtuais e backup dos servidoresvirtuais, estes devido as suas funções não poderiam ocupar máquinas virtuais. Osoutros quatro são os servidores hospedeiros. A Figura 19 ilustra o cenário dasolução proposta. Os computadores a serem utilizados como hospedeiros foram:  HYPERV-001 e HYPERV-002 com processador de quatro núcleos, 4GB de memória, uma placa de rede Gigabit Ethernet, três placas de rede Fast Ethernet e 500GB de armazenamento em um só disco;  HYPERV-003, com processador de quatro núcleos, 2GB de memória, três placas de rede com duas portas Gigabit Ethernet em cada, um disco rígido de 250GB para sistema e dois discos de 160GB espelhados para armazenamento dos discos virtuais;  HYPERV-004, com processador de quatro núcleos, 4GB de memória, três placas de rede Fast Ethernet, um disco rígido de 160GB para sistema e dois discos de 500GB espelhados para armazenamento dos discos virtuais.9 Fundação de Apoio à Pesquisa e Extensão de Sergipe.
  • 59. 57 Figura 19. Cenário da solução proposta (Elaboração própria) Os quatro computadores hospedeiros podem receber máquinas virtuais queocupem até 3GB de memória, no caso dos servidores HYPERV-001, HYPERV-002 eHYPERV-004. O servidor HYPERV-003 só pode receber máquinas virtuais parautilizar até 1GB de memória, devido ao mesmo possuir menos memória que osoutros. Isto deve-se a utilização de até 1GB de memória pelo Windows Server 2008R2 que executa o Hyper-V. Os servidores para gerenciamento (SCVMM) e backup (SCDPM) possuem aseguinte configuração: o SCVMM conta com processador de dois núcleos, 4GB dememória, uma placa de rede Gigabit Ethernet e 320GB de disco rígido; já o SCDPMconta com processador de quatro núcleos, 4GB de memória, uma placa de rede FastEthernet, um disco rígido de 1TB e três discos rígidos de 160GB. A Microsoft recomenda que para cada servidor hospedeiro existam pelomenos duas placas de rede, uma para ser utilizada pelo sistema do hospedeiro egarantir o seu gerenciamento remoto, e a outra para ser utilizada pelas máquinasvirtuais. A Tabela 3 mostra a configuração do hardware de cada servidor físico.
  • 60. 58 O motivo principal de a solução proposta utilizar o servidor HYPERV-003com somente uma máquina virtual, não fazendo uma consolidação, se deve ao fatodesta execução proporcionar a capacidade de backup e restauração do servidorvirtual em caso de falhas, o que não seria possível se o servidor estivesseexecutando diretamente sobre o servidor real. Outro motivo é que este servidor realsuporta até 24GB de memória, os outros que suportam até 8GB, possibilitando,mediante a compra de mais memória, a sua utilização por diversas máquinasvirtuais. Tabela 3. Configuração dos servidores reais nesta solução Servidor Configuração HYPERV-001 Processador de quatro núcleos; 4GB de memória; Um disco HYPERV-002 rígido de 500GB; Uma placa de rede Gigabit Ethernet; Três placas de rede Fast Ethernet. HYPERV-003 Processador de quatro núcleos; 2GB de memória; Um disco rígido de 250GB para sistema e dois discos de 160GB espelhados para armazenamento dos discos virtuais; Três placas de rede com duas portas Gigabit Ethernet. HYPERV-004 Processador de quatro núcleos; 4GB de memória; Um disco rígido de 160GB para sistema e dois discos de 500GB espelhados para armazenamento dos discos virtuais; Três placas de rede Fast Ethernet. SCVMM Processador de dois núcleos; 4GB de memória; Um disco rígido de 320GB; Uma placa de rede Gigabit Ethernet. SCDPM Processador de quatro núcleos; 4GB de memória; Um disco rígido de 1TB e três discos rígidos de 160GB, sendo um destes de 160GB destinados ao sistema operacional; Uma placa de rede Fast Ethernet. MANAGER Processador de dois núcleos; 2GB de memória; Um disco rígido de 160GB; Uma placa de rede Fast Ethernet. Fonte: Elaboração própria
  • 61. 594.3.2 Aplicações dos servidores Foi decidida pela utilização do Windows Server 2008 R2 Enterprise noscomputadores hospedeiros com a opção Server Core de instalação, que provê umaversão mínima do Windows Server, sem interface gráfica, com necessidade deatualizações reduzidas e que oferece poucos recursos. Nestas instalações foramusadas somente a função Hyper-V, além do software antivírus e os agentes debackup e gerenciamento. Uma placa de rede é dedicada a este sistema e as outrassão configuradas para utilização pelo hipervisor. Toda a administração das máquinas virtuais e dos computadores reais éfeita a partir do servidor SCVMM que contém uma instalação completa do WindowsServer 2008 R2 Enterprise com o System Center Virtual Machine Manager 2008 R2,que monitora e gerencia as máquinas virtuais e os computadores hospedeiros, e oSystem Center Operations Manager 2007 R2, que, neste caso, monitora e gerenciao desempenho e tarefas de manutenção necessárias nos servidores. O servidor SCDPM possui uma instalação do sistema operacional WindowsServer 2008 R2 Enterprise em um dos discos de 160GB e possui também o SystemCenter Data Protection Manager 2010, que é responsável pelo backup de todos osservidores virtualizados. O SCDPM usa um disco de 1TB junto com os outros doisdiscos de 160GB para armazenar o backup dos servidores virtuais. Este backup érealizado diariamente às 23h, fica armazenado por um prazo de até cinco dias e éexecutado com o uso de agentes nos servidores hospedeiros. Os agentes sãoresponsáveis por identificar os dados que podem ser protegidos e recuperados coma utilização do SCDPM, eles também são responsáveis por monitorar as mudançasque ocorrem nos arquivos protegidos e enviar estas mudanças do computadorprotegido ao servidor do SCDPM. Feito esta configuração dos servidores hospedeiros e gerenciadores foidecidido que os servidores virtuais não sofreriam uma migração da máquina físicapara uma virtual. Todas as instalações são novas e o processo de migração deveriaser feito seguindo as instruções disponibilizadas pelos desenvolvedores dossoftwares. Pela familiaridade do autor com a plataforma Windows, este decidiu nãoutilizar um servidor NAT baseado em Linux fazendo a migração para um servidor
  • 62. 60baseado em Windows Server. Isto trouxe o benefício da monitoração nativaoferecida pelo SCVMM. Para minimizar a possibilidade de indisponibilidade da internet e dosserviços de diretório foi decidido que duas máquinas virtuais iriam executar estesserviços, sendo cada uma em um servidor hospedeiro diferente, para evitar o SPOF.Com isto o NAT passou a contar com dois servidores virtuais, o NATITAIPU e oNATTRESMARIAS, e o servidor de serviços de diretório com os servidoresDCFURNAS e DCANGRA. Todos os servidores que executam Windows foram migrados para a versãomais atual, o Windows Server 2008 R2, com a edição Enterprise, a mesma ediçãoque os servidores Windows já possuíam instalada. De acordo com as práticas da Microsoft, o servidor de domínio passou aoferecer além do serviço de diretório o serviço de DNS, o que também resultou emuma maior disponibilidade deste último serviço já que o servidor de domínio passoua contar com um segundo servidor virtual. O servidor INFRALAJEADO, que fornecia o serviço de DHCP e DNS, passaentão a oferecer somente o serviço de DNS. E o servidor DOCMACHADINHOcontinua oferecendo o serviço de arquivos. Estes dois servidores não dispõem dereplicação pelo uso de uma segunda máquina virtual. Na Tabela 4 são mostrados osserviços oferecidos nos servidores que foram migrados e nos que foram criados. Com exceção dos servidores NATITAIPU e NATRESMARIAS que estãoconfigurados com duas placas de rede todos os servidores virtuais estãoconfigurados com uma placa de rede, um processador lógico e 1GB de memória. Oespaço e a quantidade de discos virtuais variam a depender da aplicação, mas elesexecutam o Windows Server com aproximadamente 40GB de espaço no discovirtual. O DOCMACHADINHO possui outros discos virtuais que são utilizados no seucompartilhamento oferecido na rede. O servidor SOBRADINHO foi migrado para o WEBSOBRADINHO noHYPERV-003 com dois processadores lógicos, 1GB de memória, uma placa de redee dois discos virtuais, um de 127GB e outro de 10GB. Este servidor passou a utilizaro Ubuntu 10.04 como sistema operacional, que necessitou ser atualizado para okernel 2.6.35 para contar com os adicionais de convidado para HYPER-V, inclusos apartir desta versão do kernel do Linux, e executar com um melhor desempenho.
  • 63. 61 Tabela 4. Serviços em cada servidor migrado ou criado Servidor Serviços HYPERV-001 Hipervisor HYPERV-002 HYPERV-003 HYPERV-004 WEBSOBRADINHO Web DNS externo DCANGRA e DCFURNAS Domínio Active Directory DNS interno DOCMACHADINHO Servidor de Arquivos INFRALAJEADO DHCP NATITAIPU NAT NATTRESMARIAS SCVMM Gerenciamento de máquinas hospedeiras e virtuais Gerenciamento de servidores SCDPM Backup Fonte: Elaboração própria O servidor HYPERV-002 recebeu os servidores DCFURNAS,INFRALAJEADO e NATTRESMARIAS, o HYPERV-003 recebeu somente o servidorWEBSOBRADINHO e o servidor HYPERV-004 recebeu os servidores DCANGRA,DOCMACHADINHO e NATITAIPU. O servidor HYPERV-001 não recebeu nenhum servidor e está desligado,mas pronto para receber qualquer servidor quando for necessário além de ficardisponível para criação de imagens para os computadores e outras funções quesejam definidas posteriormente. Toda a documentação técnica a cerca desta implementação será fornecidaao departamento de computação.
  • 64. 624.4 Resultados A migração dos servidores proporcionou ao DCOMP uma melhor utilizaçãodo hardware disponível, já que mais servidores passaram a executar em um sóhardware. Neste caso a virtualização não conseguiu proporcionar uma redução doespaço físico, já que mais serviços foram adicionados para garantir outros propósitosestabelecidos para a virtualização, mas esta redução aconteceu devido à troca dosmonitores CRT, que eram utilizados anteriormente, por monitores de LCD queocupam menos espaço. Os serviços de domínio, DNS interno, DHCP e arquivos foram migrados comsucesso para os servidores virtuais executando o Windows Server 2008 R2seguindo as instruções disponibilizadas pela Microsoft em (Microsoft, 2010f). Estamigração ocorreu fora dos horários de funcionamento do DCOMP e o únicoproblema enfrentado foi uma indisponibilidade do serviço de DHCP por um tempo,até que a falha fosse identificada e solucionada. O serviço de DNS externo já foi migrado, mas o serviço de páginas dainternet ainda está em processo de migração do SOBRADINHO para oWEBSOBRADINHO, enquanto a mesma não está concluída os dois servidoresestão funcionando ao mesmo tempo em endereços IP externos diferentes. O gerenciamento centralizado foi obtido por meio da adoção do SCVMM quefica responsável por gerenciar todos os servidores do departamento. O plano decontingência passou a existir graças à adoção do SCDPM que ficou responsável porfazer o backup diário de todos os servidores. O servidor SCDPM está no limite do espaço de armazenamento parabackups, isto significa que não poderão ser adicionados futuramente novosservidores ao backup sem investir em uma maior capacidade de armazenamento. Mesmo INFRALAJEADO e DOCMACHADINHO não oferecendo nenhumtipo de replicação dos dados de suas máquinas virtuais diretamente eles possuembackups diários, e em caso de necessidade basta restaurar o backup para umservidor executando o HYPER-V. No caso dos servidores DCANGRA, NATITAIPU,DOCMACHADINHO e WEBSOBRADINHO os dados são armazenados em discosrígidos espelhados, adicionando outra camada de proteção além do backup.
  • 65. 63 A disponibilidade do serviço aumentou graças à redundância obtida atravésda utilização de dois servidores para o serviço de NAT e dois servidores para oserviço de domínio. Estes haviam sido identificados como servidores essenciais parao DCOMP. Como cada um destes serviços possui servidores em hardware diferenteo SPOF é eliminado. A atualização do sistema operacional dos servidores está possibilitando autilização de novas funcionalidades, como o filtro de computadores que recebem umendereço do DHCP ou a proteção contra remoção acidental de unidadesorganizacionais do domínio, que não estavam disponíveis nas versões anteriores.Permitindo que sejam implementadas novas medidas para aumentar a segurança dainfraestrutura do DCOMP.4.4.1 Desempenho Através do SCOM que está funcionando no servidor SCVMM foi possívelverificar a utilização dos servidores após a adoção da virtualização. Os dadosapresentados aqui foram capturados durante um período de sete dias,compreendidos entre 09/11/2010 e 16/11/2010, e mostra a média de utilização dosservidores. Os dados capturados sobre a utilização do processador estão disponíveisnas Figuras 20, 21, 22, 23 e 24. A Figura 20 mostra a utilização da CPU no servidorHYPERV-002 e nos servidores virtuais executando nele, a Figura 21 a utilização deCPU no servidor HYPERV-003 e a Figura 22 a utilização de CPU no servidorHYPERV-004 e nos servidores virtuais executando nele. Já a Figura 23 mostra autilização da CPU nos servidores SCVMM e SCDPM e a Figura 24 a utilização noservidor MANAGER. Através da análise dos dados contidos nestas figuras é possível verificar queem todos os casos, aproximadamente às 2h existe uma atividade intensa nosservidores, causada pela verificação do antivírus que está programada para iniciarneste horário. No caso dos servidores hospedeiros existe também uma maior utilização porvolta das 23h, horário programado para backup dos servidores virtuais.
  • 66. 64 Outros pontos de pico podem ser visualizados na Figura 21 e na Figura 22,mas estão todos dentro de uma utilização razoável e podem ter sido causados poraplicações programadas para serem executadas somente uma vez por semana. Na Figura 24 é possível verificar que o servidor MANAGER é o que possuium uso mais intenso de seu processador, com uma média de 50%, devido aosdiversos serviços de gerenciamento que são executados nele. Os gráficos das Figuras 25, 26, 27 e 28 mostram a memória disponível nosservidores. A Figura 25 mostra a memória disponível no servidor HYPERV-002 e nosservidores virtuais sendo executados nele, a Figura 26 mostra a memória disponívelno servidor HYPERV-003, a Figura 27 mostra a memória disponível no servidorHYPERV-004 e nos servidores virtuais sendo executados nele e a Figura 28 mostraa memória disponível nos servidores SCVMM, SCDPM e MANAGER. Analisando estas figuras é possível verificar que a memória disponível ficaem uma média de 300 a 400MB nos servidores virtuais e nos servidoreshospedeiros. Vale ressaltar que a prática recomendada pela Microsoft é a execução deservidores com pelo menos 2GB de memória alocada para os mesmos e no caso doDCOMP, devido à limitação de memória nos computadores utilizados, as máquinasvirtuais só estão funcionando cada uma com 1GB. Mas pelas Figuras 25, 26 e 27 épossível verificar que as máquinas que estão executando com 1GB ainda possuemuma quantidade de memória disponível razoável (aproximadamente 300MB), nãoafetando a execução dos sistemas. Ao decorrer do dia os servidores hospedeiros utilizam mais memória dosistema, esta memória provavelmente é utilizada pelo serviço de backup já que apóso horário programado para ocorrer o backup diário o sistema libera a memória queestava sendo utilizada. Já entre os outros servidores, como pode ser verificado na Figura 28, oúnico que possui uma maior utilização de memória é o servidor MANAGER, que namaioria do tempo possui somente 150MB de memória disponível. Isto indica queeste servidor está precisando de uma quantidade maior de memória para execuçãodos seus serviços. Por meio dos dados da utilização de processador e memória é possívelverificar que o servidor MANAGER está sendo o mais utilizado, o que sugere que
  • 67. 65talvez seja melhor separar alguns dos serviços oferecidos por ele, colocando-os emmáquinas virtuais e passar a oferecê-los no servidor HYPERV-001. Os dados do servidor WEBSOBRADINHO não foram apresentados, pois nãofoi possível instalar o agente neste servidor, devido à incompatibilidade do softwarede medição utilizado com a versão da distribuição do Linux instalada no servidor. Caso tenha acontecido alguma perda de desempenho ela foi imperceptívelaos usuários e não está afetando a utilização diária dos serviços no DCOMP. Figura 20. Utilização de CPU em % (Elaboração própria)
  • 68. 66Figura 21. Utilização de CPU em % (Elaboração própria)Figura 22. Utilização de CPU em % (Elaboração própria)
  • 69. 67 Figura 23. Utilização de CPU em % (Elaboração própria)Figura 24. Utilização de CPU em % do servidor MANAGER (Elaboração própria)
  • 70. 68Figura 25. Memória disponível em MB (Elaboração própria)Figura 26. Memória disponível em MB (Elaboração própria)
  • 71. 69 Figura 27. Memória disponível em MB (Elaboração própria) Figura 28. Memória disponível em MB (Elaboração própria) Este capítulo mostrou o estudo de caso feito e os resultados obtidos com autilização da virtualização para consolidação dos servidores do DCOMP. No próximocapítulo são apresentadas as conclusões deste trabalho.
  • 72. 705 CONCLUSÕES O uso da virtualização permitiu ao Departamento de Computação da UFSmodernizar a sua estrutura de TI. Através dela agora é possível gerenciar todos osservidores do departamento por meio dos consoles disponíveis usando um únicocomputador. A consolidação de servidores adotada no departamento, até este momento,tem se mostrado muito benéfica e permite que o departamento continue crescendode maneira sustentável e de fácil administração. A virtualização permitiu que o DCOMP aumentasse o tempo dedisponibilidade dos serviços ofertados através da execução de um mesmo serviçoem máquinas virtuais diferentes. Ela também permitiu a criação de uma solução de backup que torna fácil arecuperação de desastres, garantindo que os serviços possam ser reestabelecidosmais rapidamente. Mesmo tendo como uma desvantagem a criação de SPOF, a virtualização,neste caso garantiu que mesmo em casos de falha de um servidor os serviços maisimportantes ainda continuarão funcionando. E mesmo nos serviços que nãoexecutam em mais de uma máquina existe a possibilidade da recuperação rápida deum backup para outro servidor hospedeiro. Mesmo com várias restrições em relação às configurações do hardwareutilizado o resultado alcançado neste trabalho foi positivo, provando que avirtualização pode auxiliar nas tarefas de administração de TI.5.1 Trabalhos futuros Como sugestões de trabalhos futuros, é possível citar: a) Planejar a utilização da virtualização para auxiliar nas aulas práticaslecionadas pelo DCOMP. Por meio da utilização da virtualização de aplicações adisponibilização de aplicações nos laboratórios de ensino para aulas ou eventos
  • 73. 71esporádicos iria ser facilitada, requerendo menos esforço para implantação dasmesmas; b) Estudar como a virtualização pode afetar o desempenho de servidoresque estão sendo executados sobre máquinas virtuais; c) Verificar qual, entre os principais fornecedores de hipervisores, possui omelhor desempenho de execução para as máquinas virtuais; d) Aquisição de novos servidores com maior capacidade para substituiçãodos atuais, tornando possível a diminuição do número de servidores utilizados; e) Aquisição de mais discos rígidos para armazenamento de backups, já quea capacidade de armazenamento encontra-se no limite; f) Estudar a disponibilização e a possível economia de custos de outrasformas de virtualização, como a virtualização de aplicativos, que permite umaeconomia no custo de licenciamento e pode aumentar a disponibilidade de softwarespara os laboratórios de ensino; g) Estudo de outras soluções de virtualização que poderiam ser adotadaspara consolidação de servidores e quais os benefícios que podem ser conseguidoscom as mesmas; h) Implementação de um cluster que seja suportado pela soluçãoimplementada atualmente, para permitir a migração de máquinas virtuaisautomaticamente entre servidores hospedeiros.
  • 74. 72 REFERÊNCIAS BIBLIOGRÁFICAS CARISSIMI, A. Virtualização: da teoria a soluções. Minicursos do SimpósioBrasileiro de Redes de Computadores-SBRC 2008. Rio de Janeiro, RJ: 173-207 p.2008. CHIUEH, S. A Survey on Virtualization Technologies. RPE Report, p. 1–42,2005. CITRIX. Citrix Systems >> Server virtualization, virtual server - Dare toCompare, 2010. Disponível em: <http://www.citrix.com/English/ps2/products/subfeature.asp?contentID=2300455 >.Acesso em: 15/11/2010. CLARK, C. Xen v3.3. Xen Users Manual, 2002. Disponível em: <http://bits.xensource.com/Xen/docs/user.pdf >. Acesso em: 18/11/2010. CREASY, R. The origin of the VM/370 time-sharing system. IBM Journal ofResearch and Development, v. 25, n. 5, p. 483-490, 1981. ISSN 0018-8646.Disponível em: < http://pages.cs.wisc.edu/~stjones/proj/vm_reading/ibmrd2505M.pdf>. FRAGNI, C. Estudo Comparativo de Técnicas de Virtualização. 2009.Departamento de Eletrônica e de Computação, Universidade Federal do Rio deJaneiro, Rio de Janeiro, RJ. GONÇALVES, D. B.; VAHL JUNIOR, J. C. White Paper - Virtualização.Campinas, SP: Polis de Tecnologia, 2009. Disponível em: <http://www.sensedia.com/br/anexos/wp_virtualizacao.pdf> >. HANSEN, J.; SCHAEFFER, C. Estudo e Aplicação de Virtualização naCriação de Ambientes para Ensino de Redes de Computadores. Passo Fundo,RS: Universidade de Passo Fundo 2009. HESS, P. O que é TI Verde. Agenda Sustentável. Julho de 2009, 2009. INTEL. Intel® Virtualization Technology List, 2010. Disponível em: <http://ark.intel.com/VTList.aspx >. Acesso em: 27/09/2010. KLAIBER, A. The technology behind Crusoe processors. Low-power x86-compatible processors implemented with Code Morphing software. Santa Clara, CA:Transmeta Corporation 2000. LAUREANO, M. A. P. Máquinas Virtuais e Emuladores: conceitos,técnicas e aplicações. São Paulo: Novatec, 2006.
  • 75. 73 LAUREANO, M. A. P.; MAZIERO, C. A. Virtualização: Conceitos e Aplicaçõesem Segurança. In: MAZIERO, C.;GASPARY, L., et al (Ed.). Livro-texto deminicursos do SBSeg 2008. 1. Porto Alegre, RS: Sociedade Brasileira deComputação, v.1, 2008. p.1-49. LAWTON, K. et al. Bochs User Manual, 2010. Disponível em: <http://bochs.sourceforge.net/doc/docbook/user/index.html >. Acesso em: 18/11/2010. LÉVY, P. O que é o virtual? São Paulo: Editora 34, 2003. 160p ISBN857326036X. MATTOS, D. M. F. Virtualização: VMWare e Xen. Rio de Janeiro, RJ:Universidade Federal do Rio de Janeiro 2008. MAZIERO, C. Sistemas Operacionais IX-Máquinas Virtuais. Porto Alegre,RS 2008. MICROSOFT. Virtualização Microsoft: Produtos e Tecnologias, 2010a.Disponível em: <http://www.microsoft.com/brasil/servidores/virtualizacao/products.mspx >. Acessoem: 15/11/2010. ______. Virtualization from the Datacenter to the Desktop, 2010b.Disponível em: < http://download.microsoft.com/download/0/A/C/0AC57003-473C-4F9A-84B0-8ADEF6ACE753/VirtualizationWhitepaper.pdf >. Acesso em:15/11/2010. ______. Virtualização Microsoft: Soluções Corporativas, 2010c.Disponível em: <http://www.microsoft.com/brasil/servidores/virtualizacao/solutions.mspx >. Acessoem: 15/11/2010. ______. Windows Server 2008 R2: Virtualization with Hyper-V: Features,2010d. Disponível em: <http://www.microsoft.com/windowsserver2008/en/us/hyperv-features.aspx >. Acessoem: 15/11/2010. ______. Microsoft Hyper-V vs. VMware ESX & vSphere: Operations &Management Cost Analysis 2010e. Disponível em: <http://download.microsoft.com/download/1/F/8/1F8BD4EF-31CC-4059-9A65-4A51B3B4BC98/Hyper-V-vs-VMware-ESX-and-vShpere-WP.pdf >. Acesso em:15/11/2010. ______. Migrar funções do servidor para o Windows Server 2008 R2,2010f. Disponível em: < http://technet.microsoft.com/pt-br/library/dd365353(WS.10).aspx >. Acesso em: 15/11/2010. NASCIMENTO, R. L. D. Recomendações sobre o uso da virtualização derecursos de TI, utilizando o COBIT 4.1 como modelo de governança de TI. 2009.Universidade Nove de Julho, São Paulo, SP.
  • 76. 74 NORTON, P. Introdução à Informárica. São Paulo: Pearson Makron Books,1996. POPEK, G.; GOLDBERG, R. Formal requirements for virtualizable thirdgeneration architectures. Communications of the ACM, v. 17, n. 7, p. 421, 1974.ISSN 0001-0782. QEMU. QEMU Emulator User Documentation, 2010. Disponível em: <http://wiki.qemu.org/download/qemu-doc.html >. Acesso em: 18/11/2010. QUEVEDO, D. P. Virtualização: Conceitos, Técnicas Aplicadas e umComparativo de Desempenho entre as Principais Ferramentas Sem Custo deLicenciamento. 2008. SOCIESC, Joinville. RIBAS, M. Consolidação de Servidores: Estudo de Caso. 2008. Institutode Ciências Exatas e Tecnológicas, Centro Universitário Feevale, Novo Hamburgo,RS. ROSENBLUM, M. The Reincarnation of Virtual Machines. Queue, v. 2, n. 5, p.34-40, 2004. ISSN 1542-7730. SEO, C. Virtualização–Problemas e desafios. Campinas, SP: UniversidadeEstadual de Campinas 2009. VMWARE. VMware vSphere Brochure, 2010a. Disponível em: <http://www.vmware.com/files/pdf/vsphere_enterprise_datasheet.pdf >. Acesso em:15/11/2010. ______. Compare VMware ESXi and ESX Hypervisors for SimplifiedVirtualization Management, 2010b. Disponível em: <http://www.vmware.com/products/vsphere/esxi-and-esx/compare.html >. Acesso em:15/11/2010. ______. VMware Hypervisor: Comparison with Microsoft Hyper-V andCitrix Xen Server, 2010c. Disponível em: < http://www.vmware.com/technical-resources/advantages/robust-foundation.html >. Acesso em: 15/11/2010. WEISZFLOG, W.; SILVA, A. Michaelis Moderno Dicionário Da LínguaPortuguesa, 2010. Disponível em: <http://michaelis.uol.com.br/moderno/portugues/index.php?lingua=portugues-portugues&palavra=virtual >. Acesso em: 11/11/2010. WHITAKER, A.; SHAW, M.; GRIBBLE, S. D. Denali: a scalable isolationkernel. Proceedings of the 10th workshop on ACM SIGOPS European workshop.Saint-Emilion, France: ACM: 10-15 p. 2002.
  • 77. 75 ANEXOS ANEXO A – Comparing VMware ESXi/ESX and Windows Server 2008with Hyper-V ANEXO B – XenServer versus the competition ANEXO C – Comparação entre máquinas virtuais e emuladores (Rosenblum, 2004; Chiueh, 2005)
  • 78. 76 ANEXO A – Tabela comparativa de características do VMware, Hyper-V e Xen Tabela 5. Comparação de características dos hipervisores Atributos do VMware ESXi/ESX Windows Server Citrix XenServer Hipervisor 4.1 2008 R2 with Hyper- 5.6 VEspaço emdisco pequeno Espaço em disco de >2GB com instalação 1.8GB 70 MB Server Core (VMware ESXi) ~10GB com instalação completa do Windows ServerIndependênciade sistema Sem dependência Depende do Depende dooperacional em sistema Windows 2008 na Linux na partição operacional de uso partição principal de geral gerenciamento (VMware ESXi) DomDrivers“endurecidos” Otimizado com Drivers genéricos do Drivers genéricos fornecedores de Windows do Linux hardwareGerenciamentode memória Capacidade de Sem capacidade Adicionouavançado recuperar a memória para recuperar a recentemente não utilizada, eliminar memória física não overcommit a duplicação de utilizada, eliminar a básico, mas não páginas de memória, duplicação ou ajusta a alocação compactar páginas compactar páginas de memória de memória baseada no uso da VM; sem duplicação ou compressão das páginasGerenciamentode VMware vStorage Não possui um Não possui umarmazenamento VMFS, Storage sistema de arquivos sistema deavançado vMotion de cluster integrado, arquivos de sem migração de cluster integrado, armazenamento ao sem migração de vivo armazenamento
  • 79. 77 ao vivo, recursos de armazenamento suportam poucas matrizesAltaescalabilidade Modelo de driver Gargalo na gestão de Gargalo nade E/S direto E/S do sistema gestão de E/S do hospedeiro sistema Dom0Gerenciamentode recursos de Traffic shaping da Não possui recursos Não possuihost rede, recursos semelhantes recursos compartilhados por semelhantes VM, definir qualidade das prioridades do serviço de armazenamento e de E/S de redeAprimoramentosde desempenho AMD RVI, páginas de Páginas de memória Sem páginas de grande quantidade grandes, memória de memória Intel vSMP de 4 vias em grandes, nenhum EPT, vSMP universal VMs com Windows dispositivos de de 8 vias, 2008 e Windows 7 SCSI paravirtual paravirtualização da apenas convidado, sem VMI, E/S através de suporte direto VMDirectPath I/O, para dispositivos driver PV convidado de E/S para SCSITecnologia desegurança VMware VMsafe™ Nada comparável Nada comparávelvirtual API de segurançaAlocação derecursos Permite hot add nas Permite apenas hot Nada comparávelflexíveis VM de vCPUs e add de discos memória, aumento de volume VMFS, hot extend discos virtuais, hot add de disco virtuais Fonte: (Vmware, 2010c) Tradução minha
  • 80. 78 ANEXO B – Tabela comparativa do XenServer e VMware ESXi Tabela 6. Comparação de funções incluídas nas versões gratuitas para servidor do Xen e do VMware Funções inclusas nas versões gratuitas Citrix VMware XenServer ESXiPlataforma do Live Motion (Migração ao vivo)hipervisor Armazenamento compartilhado de SAN e NAS Servidores, máquinas virtuais e memória ilimitados Clientes Windows® e Linux®Console de Gerenciamento centralizado degerenciamento configurações Gerenciamento centralizado de vários servidores Modo de manutenção do servidor inteligente Conversão de físico para virtual e virtual para virtual Arquitetura de gerenciamento distribuído resiliente Biblioteca de modelos de máquinas virtuais compartilhadas Gerenciamento de patches da infraestrutura virtual Fonte: (Citrix, 2010) Tradução minha
  • 81. 79 ANEXO C – Comparação entre máquinas virtuais e emuladores Tabela 7. Comparação entre máquinas virtuais e emuladoresNome Tipo Classificação de Classificação de Plataforma Plataforma Utilização Técnica utilizada 10 acordo com acordo com disponível para suportada (Rosenblum, 1 (Chiueh, 2005) uso (hospedeiro) (hóspede) 2004)Bochs E Virtualização do Abstração da ISA Windows, Linux, DOS, Curiosos e Emulação Total Hardware MacOS, Unix e Windows, desenvolvimento BeOS Unix BSD, Linuxchroot SMV Virtualização do Virtualização do Linux e Unix BSD Linux e Unix Segurança Confinamento de Sistema Sistema BSD Contexto Operacion al OperacionalCooper MV Virtualização do Hardware Windows Linux Migração de Vitualização Totalative Hardware Ab straction Layer Usuários eLinux SegurançaCrusoe E Virtualização do Abstração da ISA x86 x86 Micros-portáteis Tradução dinâmica Hardware e servidoresDenali MV Virtualização do Hardware Denali (Diretamente Sistema Acadêmico Para virtualização Hardware Ab straction Layer sobre o hardware) Proprietário (llwaco)DOSE E Virtualização do Virtualização do Linux DOS Aplicação Emulação totalMU Sistema Sistema legados Operacional OperacionalJail SMV Virtualização do Virtualização do FreeBSD FreeBSD Segurança Confinamento de Sistema Sistema Contexto Operacion al OperacionalJava MV Linguagem de Nível de aplicação Vários Plataforma Aplicações Abstração de um Programação ou virtualização de JAVA hardware linguagens de (proprietário) específico programaçãoLinux SMV Virtualização do Virtualização do Linux Linux Aplicações e Confinamento deVServe Sistema Sistema segurança contextor Operacion al OperacionalMac- MV Virtualização do Hardware Linux MAC OS Curiosos, Virtualização totalon- Hardware Ab straction Layer aplicações eLinux desenvolvimentoMicros MV Linguagem de Nível de aplicação Windows Plataforma Aplicações Abstração de umoft Programação ou Virtualização de .NET hardware.NET linguagens de (proprietário) específico programaçãoParrot MV Linguagem de Nível de aplicação Linux, Unix e Plataforma Aplicações Abstração de um Programação ou virtualização de Windows Parrot hardware linguagens de (Proprietário) específico programaçãoPlex86 MV Virtualização do Hardware Hardware Ab straction LayerQEMU E Virtualização do Abstração da ISA Windows, Linux e Acadêmico, Recompilação Hardware MAC OS desenvolvimento, dinâmica aplicações de produção10 Tipo E refere-se a Emulador, tipo MV refere-se à Máquina Virtual e tipo SVM refere-se à Simulaçãode Máquina Virtual.
  • 82. 80User- MV Virtualização do Hardware Linux Linux Acadêmico, Virtualização totalMode- Sistema Ab straction Layer desenvolvimento, utilizandoLinux Operacional aplicações de rastreamento de produção chamadas de sistemaValgrin E Virtualização do Abstração da ISA Linux x86,Linux Linux Depuração, Tradução Dinâmicad Hardware PowerPC desenvolvimento (experiment al) e Unix (experimental)Virtual MV Virtualização do Hardware Windows DOS,Window Acadêmico, Virtualização total ePC Hardware Ab straction Layer s e OS/2 desenvolvimento, recompilação aplicações de dinâmica produçãoVirtual MV Virtualização do Hardware Windows Windows Acadêmico, Virtualização total eServer Hardware Ab straction Layer desenvolvimento, recompilação aplicações de dinâmica produçãoVMwar MV Virtualização do Hardware Linux e Windows Windows, Acadêmico, Virtualização total ee Hardware Ab straction Layer DOS, desenvolvimento, recompilação Linux, Unix aplicações de dinâmica BSD, produção Netware, SolarisWine E Virtualização do Bibliot eca de Linux Aplicações Sistema interface para Windows Operacion al usuárioXEN MV Virtualização do Hardware NetBSD e Linux Linux, Unix Acadêmico, Para virtualização Hardware Ab straction Layer BSD e desenvolvimento, Windows XP aplicações de (todos com produção modificações ) Fonte: (Laureano, 2006; Quevedo, 2008)

×