13.07.2015 Views

universidade feevale daniel dexheimer análise de desempenho de ...

universidade feevale daniel dexheimer análise de desempenho de ...

universidade feevale daniel dexheimer análise de desempenho de ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

UNIVERSIDADE FEEVALEDANIEL DEXHEIMERANÁLISE DE DESEMPENHO DE AMBIENTESVIRTUALIZADOS: UM ESTUDO TEÓRICO E PRATICONovo Hamburgo2012


DANIEL DEXHEIMERANÁLISE DE DESEMPENHO DE AMBIENTESVIRTUALIZADOS: UM ESTUDO TEÓRICO E PRATICOTrabalho <strong>de</strong> Conclusão <strong>de</strong> Cursoapresentado como requisito parcialà obtenção do grau <strong>de</strong> Bacharel emSistemas <strong>de</strong> Informação pelaUniversida<strong>de</strong> FeevaleOrientador: EDUARDO LEIVAS BASTOSNovo Hamburgo2012


AGRADECIMENTOSGostaria <strong>de</strong> agra<strong>de</strong>cer a todos os que, <strong>de</strong> algumamaneira, contribuíram para a realização <strong>de</strong>ssetrabalho <strong>de</strong> conclusão, em especial:Aos amigos e às pessoas que convivem comigodiariamente, minha gratidão, pelo apoioemocional nos períodos mais difíceis dotrabalho.Ao meu orientador Eduardo Leivas Bastos, meuagra<strong>de</strong>cimento pelo apoio, i<strong>de</strong>ias e opiniões,que tornaram este trabalho possível.De forma especial gostaria <strong>de</strong> agra<strong>de</strong>cer aminha namorada Adriane <strong>de</strong> Souza Fernan<strong>de</strong>s,que esteve ao meu lado e me apoiou durantegran<strong>de</strong> parte do trabalho.


RESUMOO uso <strong>de</strong> máquinas virtuais vem aumentando consi<strong>de</strong>ravelmente nos últimos anos.Juntamente com esta prática tem surgido a necessida<strong>de</strong> <strong>de</strong> um maior aprofundamento na área.Existem poucas pesquisas no momento que estudam a mo<strong>de</strong>lagem das máquinas virtuais,sendo assim, este trabalho se <strong>de</strong>dicou à realização <strong>de</strong> um estudo utilizando duas ferramentas,uma ferramenta para avaliação <strong>de</strong> <strong>de</strong>sempenho do hardware e outra para geração <strong>de</strong> carga emtrês cenários virtuais com configurações <strong>de</strong> hardware diferentes. Se tratando do hardware,neste trabalho foram estudados o processador, memória e disco. Para o estudo do<strong>de</strong>sempenho <strong>de</strong>ste hardware, além da geração <strong>de</strong> três cenários diferentes, foram realizadostestes com cargas <strong>de</strong> trabalho distintas, com a intenção <strong>de</strong> avaliar o <strong>de</strong>sempenho em diversassituações. Os resultados dos testes <strong>de</strong>monstraram que o uso <strong>de</strong> uma ferramenta <strong>de</strong>benchmarking normal para a avaliação <strong>de</strong> máquinas virtuais é perfeitamente factível etotalmente transparente. Ou seja, <strong>de</strong> um ponto <strong>de</strong> vista das ferramentas <strong>de</strong> benchmarking,medir o <strong>de</strong>sempenho <strong>de</strong> um host físico ou virtual é indiferente. Apesar <strong>de</strong> algumas oscilaçõesem termos <strong>de</strong> medições geradas, a ferramenta PerformanceTest mostrou ser bastante robustana geração dos dados. Novos experimentos, com outras ferramentas e até mesmo com amesma ferramenta <strong>de</strong>vem ser realizados a fim <strong>de</strong> validar os resultados obtidos.Palavras-chave: Ferramenta <strong>de</strong> Medição. Virtualização. Monitoramento. Análise.


ABSTRACTThe use of virtual machines has increased consi<strong>de</strong>rably in recent years. Along withthis practice has arisen the need for a greater <strong>de</strong>eper un<strong>de</strong>rstanding in the area. There are fewresearches currently studying the mo<strong>de</strong>ling of virtual machines. So this work is <strong>de</strong>dicated to astudy using two tools, a tool for performance evaluation of hardware and another for chargegeneration in three scenarios with virtual different settings of hardware. Dealing with thehardware in this work was studied the processor, memory and disk. To study the performanceof this hardware, besi<strong>de</strong>s the generation of three different scenarios, tests were performed withdifferent workloads, with the intention of evaluating the performance in a lot of situations.The test results <strong>de</strong>monstrated that using a tool to assess normal benchmarking virtual machineis perfectly feasible and fully transparent. That is, a viewpoint of benchmarking tools tomeasure the performance of a physical or virtual host is indifferent. Despite some variationsin terms of measurements generated, the tool PerformanceTest proved to be very robust in thegeneration of data. New experiments with other tools and even with the same tool should beperformed to validate the results.Key words: Metrics Tools. Virtualization. Monitoring. Analysis


LISTA DE FIGURASFigura 1.1 - Máquina Virtual Tipo I ___________________________________ 1516Figura 1. 2 - Máquina Virtual Tipo II _________________________________ 1617Figura 1.3 – Vmware vSphere Client Administração _____________________ 2021Figura 1.4 - VMware ESX 5.0.0 Console ______________________________ 2122Figura 1.5 - XenServer Administração_________________________________ 2223Figura 1.6 - XenServer 5.6 Console ___________________________________ 2324Figura 2.1- Benchmark com VMmark IBM _____________________________ 3536Figura 2.2 – Teste <strong>de</strong> disco __________________________________________ 4243Figura 2.3 – Teste <strong>de</strong> memória _______________________________________ 4546Figura 2.4 – Resultado geral PerformanceTest __________________________ 4849Figura 2.5 – Resultado geral PerformanceTest __________________________ 4950Figura 3.1 – Instalação VMwareESXi _________________________________ 5556Figura 3.2 – vSphere Client _________________________________________ 5657Figura 3.3 – Instalação Windows 2008 _________________________________ 5758Figura 3.4 – Ambiente _____________________________________________ 6162Figura 3.5: Execução BurnInTest carga 75% vm Cenário 1 ________________ 6465Figura 3.6 : Execução BurnInTest carga 25% vm Cenário 2 ________________ 6566Figura 3.7 : Execução Performance Test _______________________________ 6768Figura 4.1: Gráfico <strong>de</strong> uso da CPU nos três cenários ______________________ 7172Figura 4.2 : Gráfico <strong>de</strong> uso do disco nos três cenários _____________________ 7374Figura 4.3 : Gráfico <strong>de</strong> uso da memória nos três cenários __________________ 7475Figura 4.4 : Gráfico dos resultados gerais dos três cenários ________________ 7576


LISTA DE TABELASTabela 1.1 – Comparação entre características <strong>de</strong> ferramentas <strong>de</strong> virtualização. __ 28Tabela 2.1 – Unida<strong>de</strong> <strong>de</strong> medida por servidor. _____________________________ 30Tabela 2.2 – Unida<strong>de</strong>s <strong>de</strong> medidas médias por servidor. _____________________ 31Tabela 2.3 – Pontuação por servidores. __________________________________ 31Tabela 2.4 – Calculo <strong>de</strong> simplificação. __________________________________ 32Tabela 3.1 – Exemplo cálculo da nota geral. ______________________________ 48Tabela 3.2 – Ferramentas <strong>de</strong> benchmark. _________________________________ 51Tabela 3.3 – Máquinas virtuais. ________________________________________ 54Tabela 4.1 – Resultado Cenário 1. ____________________________________ 6867Tabela 4.2 – Resultado Cenário 2. ____________________________________ 6968Tabela 4.3 – Resultado Cenário 3. ____________________________________ 6968


LISTA DE ABREVIATURAS E SIGLASCD-ROMFLOPSIDCIDEMIPSSCSICompact Disc Read-Only MemoryFloating point Operations Per SecondInternational Data CorporationIntegrated Drive ElectronicsMillions of Instructions Per SecondSmall Computer System Interface


SUMÁRIOINTRODUÇÃO __________________________________________________________ 111 VIRTUALIZAÇÃO _____________________________________________________ 141.1 Conceito _______________________________________________________ 141.2 Características <strong>de</strong> hardware ________________________________________ 161.2.1 Placa mãe ______________________________________________________ 171.2.2 Processador ____________________________________________________ 171.2.3 Geral _________________________________________________________ 171.3 Softwares para virtualização _______________________________________ 181.3.1 VMware _______________________________________________________ 181.3.2 XenServer _____________________________________________________ 211.3.3 Outras ferramentas _______________________________________________ 231.3.4 Comparação entre tecnologias ______________________________________ 272 FERRAMENTAS DE BENCHMARKING __________________________________ 292.1 VMmark _______________________________________________________ 302.1.1 IBM __________________________________________________________ 342.2 BurnInTest _____________________________________________________ 362.2.1 Processador ____________________________________________________ 362.2.2 Disco _________________________________________________________ 392.2.3 Memória _______________________________________________________ 432.3 PerformanceTest ________________________________________________ 462.4 Outras ferramentas <strong>de</strong> benchmark ___________________________________ 502.5 Importância da <strong>análise</strong> ____________________________________________ 523 METODOLOGIA _______________________________________________________ 533.1 Ambiente ______________________________________________________ 533.1.1 Hardware ______________________________________________________ 533.1.2 Software _______________________________________________________ 543.2 Cenários propostos _______________________________________________ 543.2.1 Cenário 1 ______________________________________________________ 563.2.2 Cenário 2 ______________________________________________________ 583.2.3 Cenário 3 ______________________________________________________ 593.3 Método ________________________________________________________ 613.3.1 Cenário 1 ______________________________________________________ 633.3.2 Cenário 2 ______________________________________________________ 643.3.3 Cenário 3 ______________________________________________________ 664 RESULTADOS _________________________________________________________ 684.1 CPU __________________________________________________________ 704.2 DISCO ________________________________________________________ 724.3 MEMÓRIA ____________________________________________________ 74


4.4 GERAL _______________________________________________________ 75CONCLUSÃO ____________________________________________________________ 77REFERÊNCIAS BIBLIOGRÁFICAS ________________________________________ 79


11INTRODUÇÃOA virtualização teve seu inicio nos anos 60 quando a IBM, um gran<strong>de</strong> fabricante <strong>de</strong>hardware, para aumentar a eficiência no uso <strong>de</strong> recursos <strong>de</strong> seus mainframes, que é umservidor com gran<strong>de</strong> capacida<strong>de</strong> <strong>de</strong> processamento <strong>de</strong> dados, resolveu dividir o equipamentoem sistemas virtualizados utilizando um o mesmo hardware (IBM). Com o surgimento doscomputadores baseados na plataforma x86, a virtualização per<strong>de</strong>u pouco <strong>de</strong> sua utilida<strong>de</strong>, jáque era possível montar um servidor razoável em uma máquina única. Essa arquiteturarepresentava uma vasta família <strong>de</strong> processadores incluindo os X86 64 que seriam osprocessadores conhecidos como sendo 64 bits. Desta forma, uma pequena empresa po<strong>de</strong>ria terseu próprio servidor sem precisar investir muito dinheiro em um mainframe ou sem precisaralugar espaço em um.Com o aumento do <strong>de</strong>sempenho dos computadores x86, o conceito <strong>de</strong> virtualizaçãoganhou força novamente, principalmente no sentido <strong>de</strong> melhorar a eficiência do uso dosrecursos disponíveis. Segundo estatísticas, o aproveitamento médio <strong>de</strong> hardware emimplantações típicas <strong>de</strong> servidores está atualmente em torno <strong>de</strong> 10 a 15%(VMware / 2011).Além <strong>de</strong> tornar mais eficiente o uso dos recursos físicos, a virtualização também trazbenefícios em termos <strong>de</strong> disponibilida<strong>de</strong>, já que as máquinas virtuais po<strong>de</strong>m estar dispostasem locais geograficamente dispersos a fim <strong>de</strong> minimizar riscos <strong>de</strong> interrupção.Apesar <strong>de</strong> a virtualização ser um conceito antigo e bem estudado <strong>de</strong>ntro do ambiente<strong>de</strong> mainframe (um ambiente controlado e homogêneo), o seu uso em plataformas x86 aindalevanta questões importantes em termos <strong>de</strong> <strong>de</strong>sempenho. Qual o impacto do esgotamento <strong>de</strong>certos recursos do host (computador físico que no caso server para abrigar as máquinasvirtuais) hospe<strong>de</strong>iro (CPU, RAM e disco) nas máquinas virtuais? Qual o grau <strong>de</strong> isolamento<strong>de</strong> uma máquina virtual em relação à outra máquina virtual e em relação ao host hospe<strong>de</strong>iro?Quais são os reflexos em termos <strong>de</strong> <strong>de</strong>sempenho das máquinas virtuais <strong>de</strong> diferentes cenários<strong>de</strong> carga do host hospe<strong>de</strong>iro?Existem alguns trabalhos que procuram respon<strong>de</strong>r às questões acima. Quantifying thePerformance Isolation Properties of Virtualization Systems executa testes <strong>de</strong> máquinasvirtuais em sistemas <strong>de</strong> virtualização VMware Workstation, Xen e OpenVZ. As métricas <strong>de</strong><strong>de</strong>sempenho utilizadas foram: testes <strong>de</strong> memória, fork, CPU e teste intensivo <strong>de</strong> disco. Osresultados mostram que, como os sistemas virtualizados se tornaram comuns, é importante


12realizar testes <strong>de</strong> benchmark em diferentes casos virtualização. Dessa forma se obtém maiores<strong>de</strong>talhes sobre como se tirar melhor proveito do hardware, pois cada sistema que se virtualizapo<strong>de</strong> gerar um resultado diferente. Segundo o artigo Mo<strong>de</strong>ling Virtual Machine Performance:Challanges and Approache, que <strong>de</strong>screve as gran<strong>de</strong>s dificulda<strong>de</strong>s futuras dos usuários <strong>de</strong>máquinas virtuais, as mais frequentes são; (1) mo<strong>de</strong>lagem da contenção <strong>de</strong> recursos visíveis(núcleos <strong>de</strong> processadores, memória, capacida<strong>de</strong> <strong>de</strong> armazenamento, dispositivos I/O, entreoutros), (2) a contenção <strong>de</strong> recursos invisíveis (micro architeture <strong>de</strong> recursos compartilhados,cache compartilhado, a largura <strong>de</strong> banda <strong>de</strong> memória compartilhada, etc.) e (3) <strong>de</strong>spesasgerais <strong>de</strong> implementação <strong>de</strong> mo<strong>de</strong>lagem <strong>de</strong> monitor <strong>de</strong> máquina virtual. O artigo conclui queexistem <strong>de</strong>talhes a serem cuidados na mo<strong>de</strong>lagem <strong>de</strong> <strong>de</strong>sempenho <strong>de</strong> máquinas virtuais, pois amesma po<strong>de</strong> acabar apresentando uma <strong>de</strong>gradação significativa, o que causaria gran<strong>de</strong> perdana performance.Com o intuito <strong>de</strong> trazer maior conhecimento na <strong>análise</strong> <strong>de</strong> <strong>de</strong>sempenho <strong>de</strong> ambientesvirtualizados <strong>de</strong> plataforma x86, o presente trabalho tem como objetivo analisar o<strong>de</strong>sempenho <strong>de</strong> três cenários <strong>de</strong> virtualização, que estejam sendo executados sob fortepressão, em três recursos físicos do host hospe<strong>de</strong>iro: processador, memória e disco. A <strong>análise</strong><strong>de</strong> <strong>de</strong>sempenho dos cenários será feita através da utilização <strong>de</strong> duas ferramentas <strong>de</strong>benchmark, a BurnInTeste é responsável pela geração <strong>de</strong> carga e a PerformanceTest,responsável pela avaliação do <strong>de</strong>sempenho da máquina virtual.A <strong>análise</strong> das máquinas virtuais consistirá em uma coleta <strong>de</strong> dados focados emprocessador, memória e disco. Estes dados serão coletados em diversos momentos, durante ostestes, conforme a alteração do hardware for feita tanto na máquina virtual, quanto no hostfísico, também durante os testes <strong>de</strong> stress, tanto da máquina virtual, quanto do host físico,tendo assim uma base <strong>de</strong> comparação <strong>de</strong> performance.Uma das dificulda<strong>de</strong>s <strong>de</strong> se fazer a analise <strong>de</strong> máquinas virtuais é o fato <strong>de</strong> amáquina ficar em estado suspenso e assim não gerar um resultado completamente fiel arealida<strong>de</strong> por parte das ferramentas <strong>de</strong> medição <strong>de</strong> máquinas virtuais (Analyzing Performancein Virtualized Enviroments).Com base nesta informação, neste trabalho se preten<strong>de</strong> também fazer esta analise,levando em conta máquinas virtuais existentes, mas que não estejam em ativida<strong>de</strong> nomomento dos testes.


13Com a conclusão <strong>de</strong>stas <strong>análise</strong>s serão exibidos tabelas e gráficos comparativos comos resultados, facilitando o entendimento e proporcionando base para que o próprio leitor,caso julgue necessário, possa executar seus próprios testes e comparar com os <strong>de</strong>ste trabalho.


1 VIRTUALIZAÇÃONeste capitulo serão abordadas as características do conceito <strong>de</strong> virtualização. Paraisto serão verificados alguns requisitos tanto <strong>de</strong> software quanto <strong>de</strong> hardware para umamelhor execução <strong>de</strong>sta técnica.Para enten<strong>de</strong>r a virtualização, antes é necessário enten<strong>de</strong>r para que ela serve. Comojá foi dito, a técnica surgiu na década <strong>de</strong> 60, quando a IBM procurava um meio para po<strong>de</strong>rutilizar melhor a gran<strong>de</strong> capacida<strong>de</strong> dos seus mainframes, sendo hoje em dia muito maisavançada que alguns anos atrás. A virtualização po<strong>de</strong> ser dividida em duas categoriasdiferentes; virtualização total e para-virtualização, e a virtualização comum que utiliza umsistema operacional comum como base. Nos dois casos existe um host físico dividindo seuhardware entre mais <strong>de</strong> um sistema operacional em execução simultaneamente.1.1 ConceitoConforme consta no dicionário Aurélio online, o significado da palavra virtual é:"Que não se realizou, mas é suscetível <strong>de</strong> realizar-se", ou também "Quase completo;praticamente total”. Na <strong>de</strong>finição do dicionário Priberam online, o significado da palavravirtualização é "Ato ou efeito <strong>de</strong> virtualizar", em ambos os casos se enten<strong>de</strong> que trata-se <strong>de</strong>máquinas quase completas, que divi<strong>de</strong>m o hardware entre si.Com a virtualização se preten<strong>de</strong> ter liberda<strong>de</strong> <strong>de</strong> fazer alterações significativas semper<strong>de</strong>r capacida<strong>de</strong> <strong>de</strong> processamento. Como tornar virtuais os servidores físicos, alcançandoassim uma redução <strong>de</strong> espaço físico ocupado e também no consumo <strong>de</strong> energia elétrica. Maiorsegurança ao separar uma máquina virtual para cada aplicação que ofereça algum risco, emaior facilida<strong>de</strong> <strong>de</strong> manutenção, <strong>de</strong>pen<strong>de</strong>ndo apenas <strong>de</strong> uma interface para acessar um gran<strong>de</strong>numero <strong>de</strong> servidores virtuais. Em uma máquina virtual po<strong>de</strong>mos <strong>de</strong>finir seus recursosconforme <strong>de</strong>sejarmos e principalmente conforme disponível no host físico. Através <strong>de</strong>ferramentas como as existentes hoje em dia, po<strong>de</strong>mos criar diversos servidores, todoslocalizados em um único dispositivo físico, mas trabalhando <strong>de</strong> forma isolada, mesmopossuindo recursos compartilhados como disco, memória e principalmente o processador.A tecnologia <strong>de</strong> virtualização não só permite criar diversos servidores em uma sómáquina física como também possuir diversos sistemas operacionais diferentes entre si, semque seja necessário alguma compatibilida<strong>de</strong> ou que exista alguma comunicação entre eles.Segundo Rodrigo Ferreira da Silva (2007), ela trabalha como se os recursos físicos fossem


15somente seus, como se a unida<strong>de</strong> <strong>de</strong> disco fosse somente sua ou que os recursos USB fossemsomente seus também, apesar disto ser compartilhado entre as outras máquinas.Abaixo seguem duas imagens que explicam dois diferentes tipos <strong>de</strong> virtualização,sendo a primeira imagem a virtualização <strong>de</strong> tipo um. Ela é configurada diretamente acima dohardware utilizando um VMM para fazer a comunicação entre as máquinas virtuais po<strong>de</strong>ndoexistir uma ou mais máquinas virtuais e seus aplicativos com o hardware do host hospe<strong>de</strong>iro.Na virtualização <strong>de</strong> tipo um que seria virtualização total ou para-virtualização,existem alguns softwares muito famosos para o gerenciamento das máquinas, sendo dois <strong>de</strong>leso VMware gran<strong>de</strong> empresa que foi uma das pioneiras na área <strong>de</strong> virtualização, que forneceum software <strong>de</strong> virtualização total pago e também fabrica outros tipos <strong>de</strong> software, sendo amaioria dos produtos focados em soluções empresariais e a Citrix outra empresa com gran<strong>de</strong>foco em virtualização, concorrente direta da VMware, que possui uma versão do seu produtopaga e uma versão gratuita, on<strong>de</strong> é necessário ter cadastro no site e apesar <strong>de</strong> ser gratuita sualicença <strong>de</strong> uso possui valida<strong>de</strong> <strong>de</strong> um ano, po<strong>de</strong>ndo ser renovada <strong>de</strong> forma gratuita também acada vencimento.Figura 1.1 - Máquina Virtual Tipo IFonte: (LAUREANO, 2006)Neste segundo tipo <strong>de</strong> virtualização, conforme é exibido na imagem abaixo, existeoutro sistema operacional rodando antes da ferramenta que gerencia as máquinas virtuais.Este sistema po<strong>de</strong> ser qualquer um que possua suporte ao aplicativo <strong>de</strong> virtualização <strong>de</strong>sejado,seja ele um Windows ou um Linux, basta ser compatível para po<strong>de</strong>r criar as máquinas virtuais.Este tipo <strong>de</strong> virtualização po<strong>de</strong> acabar gerando um <strong>de</strong>sempenho menor que a <strong>de</strong> tipoum, <strong>de</strong>vido ao fato <strong>de</strong> a comunicação do software que gerencia as máquinas virtuais não ser


16diretamente com o hardware. Pois antes disto, ele precisa se comunicar com o sistemaoperacional hospe<strong>de</strong>iro para posteriormente se comunicar com o hardware. Visto que osistema operacional que recebe o software <strong>de</strong> virtualização já possui seus próprios aplicativosque já estão consumindo recursos da máquina física, fazendo assim com que sobre menosrecurso para as máquinas que estão virtualizadas.Na virtualização <strong>de</strong> tipo dois existem vários softwares para o gerenciamento dasmáquinas virtuais, alguns <strong>de</strong>les são o VirtualBox da Oracle, VMwareServer da VMware,VirtualPC da Microsoft, entre alguns outros que serão vistos mais abaixo.1.2 Características <strong>de</strong> hardwareFigura 1. 2 - Máquina Virtual Tipo IIFonte: (LAUREANO, 2006.)Dentre as características necessárias <strong>de</strong> hardware temos dois tipos <strong>de</strong> exigênciasdiferentes; executar a virtualização total ou a virtualização direta.Se você <strong>de</strong>seja executar a virtualização total ou a para-virtualização, esse processoutiliza softwares específicos para virtualizar sistemas operacionais diretamente pelohardware. Isso acaba gerando melhor aproveitamento do mesmo, tanto pelo fato <strong>de</strong> nãopossuir outro sistema operacional pesado rodando ao mesmo tempo como base, quanto pelofato <strong>de</strong> a máquina ser criada exatamente para este propósito, ou ainda, em um caso maissimples, uma virtualização sobre um sistema operacional comum. No caso da virtualizaçãodiretamente feita pelo hardware, é feito melhor aproveitamento pelo fato <strong>de</strong> ser removida uma


17camada <strong>de</strong> sistema que é <strong>de</strong>snecessária, quando o objetivo é ter somente servidoresvirtualizados.No caso da virtualização tendo como base um sistema operacional comum, não hágran<strong>de</strong> requisito <strong>de</strong> hardware, havendo apenas que verificar alguns <strong>de</strong>talhes. Trata-se <strong>de</strong><strong>de</strong>talhes básicos como, por exemplo, verificar se o host possui quantida<strong>de</strong> o suficiente <strong>de</strong>memória, disco e processador para suportar os dois sistemas operacionais rodandosimultaneamente, e ainda se é compatível com o software <strong>de</strong>sejado. Já a virtualização total oua para-virtualização exige que alguns requisitos sejam cumpridos para que se possa executála.Estes mesmos que serão vistos logo abaixo.1.2.1 Placa mãePara ser possível fazer a virtualização total ou para-virtualização se tem comorequisito <strong>de</strong> placa mãe que ela suporte esta tecnologia. Em geral não há este problema, poisquando a placa mãe é compatível com o processador, que possui características compatíveiscom virtualização, esta também será aceita, apenas sendo necessário em alguns casos fazerum upgra<strong>de</strong> <strong>de</strong> BIOS.1.2.2 ProcessadorNo caso do processador precisa é necessário verificar em primeiro lugar se ele écompatível com a placa mãe escolhida, além <strong>de</strong> avaliar se ele possui suporte paravirtualização. Neste caso, se po<strong>de</strong> consultar no site do fabricante, também po<strong>de</strong> ser verificadona BIOS. No caso do processador ter sido fabricado pela Intel ou AMD, po<strong>de</strong>-se utilizar umsoftware disponibilizado pelo próprio fabricante para fazer a verificação da possibilida<strong>de</strong> domesmo aceitar uma virtualização.1.2.3 GeralComo cuidados gerais necessário se ter o projeto bem planejado, além <strong>de</strong> verificar sevocê possui a quantida<strong>de</strong> necessária <strong>de</strong> hardware para aten<strong>de</strong>r aos requisitos mínimos do seuprojeto. Neste caso seria uma verificação <strong>de</strong> capacida<strong>de</strong> <strong>de</strong> processamento e não <strong>de</strong> tecnologiapresente, como por exemplo, não seria possível rodar cinco máquinas virtuais com WindowsServer 2008R2 em apenas 512Mb <strong>de</strong> RAM na máquina física, visto que o hardware dispostonão seria suficiente para criar tal ambiente.


181.3 Softwares para virtualizaçãoSão três os principais softwares para realizar a virtualização total ou a paravirtualização,<strong>de</strong>ntre eles temos o VMware, empresa cujo foco é a tecnologia comespecialização em virtualização, possuindo uma ferramenta própria para esta técnica, que épaga, mas possui uma licença <strong>de</strong> <strong>de</strong>monstração válida por sessenta dias. Há o XenServer,produto da empresa Citrix, concorrente direta da empresa VMware cujo foco também évirtualização, que fornece uma versão paga e uma gratuita, que precisa ser renovada a cadaano. E por fim o OpenVZ, que é gratuito.1.3.1 VMwareA VMware foi a pioneira no que se trata <strong>de</strong> virtualização para a plataforma x86.Quando foi lançada em 1999, ela surgiu com a promessa <strong>de</strong> fornecer uma solução para algunsproblemas existentes, <strong>de</strong>ntre eles estão:Pouca utilização da infraestrutura: Conforme vimos anteriormente maior parte dosservidores hoje em dia ocupam somente 10 a 15% <strong>de</strong> sua capacida<strong>de</strong> <strong>de</strong> processamento emgran<strong>de</strong> parte do tempo segundo a IDC. Isto pelo fato <strong>de</strong> as empresas adotarem por medida <strong>de</strong>segurança um padrão <strong>de</strong> possuir diversos servidores, po<strong>de</strong>ndo assim dividir aplicativos compontos fracos diferentes para cada servidor, aumentando assim a segurança, mas ao mesmotempo diminuindo o real aproveitamento do hardware.Aumento dos custos da infraestrutura física: Não se tratando somente do custo doservidor em si, mas calculando o custo para manter toda a estrutura necessária, que nãocompreen<strong>de</strong> somente um servidor, mas vários servidores. Sendo necessário aparelhos <strong>de</strong>refrigeração do ar cada vez mais potentes conforme o aumento da quantida<strong>de</strong> <strong>de</strong> servidores,gerando também um aumento no consumo <strong>de</strong> energia, pois o servidores necessitam ficarligados o tempo todo.Aumento dos custos <strong>de</strong> gerenciamento <strong>de</strong> TI: Conforme aumenta a quantida<strong>de</strong> <strong>de</strong>servidores físicos, aumenta também a necessida<strong>de</strong> <strong>de</strong> se possuir cada vez mais funcionários econsequentemente estes funcionários precisarão <strong>de</strong> mais experiência, aumentando assim oscustos para a manutenção dos servidores.Proteção insuficiente contra <strong>de</strong>sastres e failover, que seria a capacida<strong>de</strong> <strong>de</strong> migrarautomaticamente para outro servidor, sistema ou re<strong>de</strong> redundante quando da ocorrência <strong>de</strong>falha do servidor ativo. Failover acontece sem intervenção humana. Com a necessida<strong>de</strong> das


19empresas <strong>de</strong> se manter em produção o tempo inteiro, surge a preocupação com possíveis<strong>de</strong>sastres, sendo eles naturais ou não. As empresas necessitam <strong>de</strong> diversos tipos <strong>de</strong> prevenção,isto para que a sua linha <strong>de</strong> produção não pare nem por ataques terroristas, nem por umterremoto, por exemplo.Desktops <strong>de</strong> usuário final com alta manutenção. Manter uma empresa segura requerlimitar o acesso in<strong>de</strong>vido à informações por parte dos funcionários, ou impedir que algumvírus possa afetar estações <strong>de</strong> trabalho, ou ainda se caso afetar uma estação, não afete asoutras. Exige um gran<strong>de</strong> esforço, sendo necessário uma manutenção continua dos <strong>de</strong>sktops,com a aplicação <strong>de</strong> procedimentos <strong>de</strong> segurança atualizações <strong>de</strong> softwares.A imagem a seguir <strong>de</strong>monstra a tela <strong>de</strong> administração remota com o VMwarevSphereClient <strong>de</strong> um servidor VMware ESXi 5.0. Como se po<strong>de</strong> ver no campo da esquerda,existem sistemas instalados no host físico, <strong>de</strong>ntre eles estão um servidor Windows 2003, umWindows 2008R2, três Windows XP e um pool, que é a alocação <strong>de</strong> recursos para<strong>de</strong>terminados sistemas. Neste caso, sendo um Windows XP o sistema que está em <strong>de</strong>staque,um Windows 2008R2 selecionado para exibir a alocação <strong>de</strong> recursos para o mesmo, que porestar <strong>de</strong>sligado acaba não ocupando recursos dos host físico, assim ele não exibe resultadossobre uso do hardware.No topo da imagem se tem uma barra com alguns botões práticos que auxiliam nafácil inicialização, parada e reinicialização das máquinas virtuais. Também ao lado direito dosbotões acima citados, há botões que auxiliam no gerenciamento <strong>de</strong> snapshots, que é o pontosalvo <strong>de</strong> uma máquina virtual on<strong>de</strong> se po<strong>de</strong> restaurar a mesma em caso <strong>de</strong> falhas, po<strong>de</strong>ndotirar, restaurar ou gerenciar as mesmas. Ao selecionar-se uma VM, apresenta-se uma tela comas abas <strong>de</strong> getting started, que é uma tela que fala sobre a virtualização; summary que exibeum resumo da máquina virtual que é selecionada; resource alocation que exibe em forma <strong>de</strong>barras o quanto o hardware está sendo consumido, que vão do zero até a quantida<strong>de</strong> <strong>de</strong>hardware disponibilizado na máquina virtual; performance sendo esta uma aba <strong>de</strong>dicada aoconsumo <strong>de</strong> hardware, que indica em forma <strong>de</strong> gráficos que são atualizados segundo asegundo; events que armazena em forma <strong>de</strong> lista as alterações da máquina virtual; consoleon<strong>de</strong> exibe a tela do sistema operacional e por fim permissions, para po<strong>de</strong>r adicionar editar ouexcluir permissões <strong>de</strong> certos usuários sobre as máquinas.


20Figura 1.3 – Vmware vSphere Client AdministraçãoFonte: AutorNa imagem que segue temos a tela do ESX que é o sistema que faz a comunicaçãodas máquinas virtuais com o hardware. Nele se po<strong>de</strong>m configurar diversos itens como senha<strong>de</strong> administrador, configuração do en<strong>de</strong>reço <strong>de</strong> IP ou IPv6, DNS, testar a comunicação <strong>de</strong>re<strong>de</strong>, verificar logs <strong>de</strong> acesso e <strong>de</strong> alteração e restaurar as configurações.Em sua tela principal, quando está bloqueado por não ter ninguém usando o console,é possível o <strong>de</strong>sbloqueio mediante uso usuário e senha com permissões para executarem açõesnesta tela. Ele exibe então algumas informações simples, mas importantes e necessárias, comoversão do software <strong>de</strong> virtualização, processador, memória e meios <strong>de</strong> acesso como nome <strong>de</strong>host e en<strong>de</strong>reço <strong>de</strong> IP, ou também caso seja necessário, po<strong>de</strong>-se <strong>de</strong>sligar o servidor por estatela, não sendo exigido ao usuário abrir a tela <strong>de</strong> manutenção <strong>de</strong> máquinas virtuais para fazero <strong>de</strong>sligamento seguro do servidor.No caso do VMware ESX não há possibilida<strong>de</strong> <strong>de</strong> alcançar a tela do console atravésdo vSphere, assim como po<strong>de</strong>mos fazer com o XenCenter. Só sendo possível acessar a tela <strong>de</strong>console estando presencialmente em frente ao host físico.


21Figura 1.4 - VMware ESX 5.0.0 ConsoleFonte: Autor1.3.2 XenServerA ferramenta XenServer da Citrix é uma concorrente da VMware, que surgiu com oobjetivo <strong>de</strong> quebrar este monopólio e para isto ela oferece duas versões <strong>de</strong> seu produto. Umaversão gratuita e uma versão que é necessário pagar, <strong>de</strong>ssa forma eles conseguem atrair opúblico que não preten<strong>de</strong> pagar em um primeiro momento. Este público preten<strong>de</strong> apenasconhecer o produto e conforme a necessida<strong>de</strong> <strong>de</strong> negócio, acaba adquirindo a versão maiscompleta que contém alguns recursos a mais que a versão gratuita. A ferramenta teve seuprimeiro lançamento ao público alguns anos <strong>de</strong>pois do lançamento da VMware, em 2003,sendo que sua concorrente lançou sua primeira versão em 1999.Entre os recursos gratuitos do XenServer estão, Hypervisor XenServer, XenMotionmigração ao vivo, VMSnapshot disco e reverter, XenCenter gestão multi-servidor, arquiteturadistribuída <strong>de</strong> gerenciamento e ferramentas <strong>de</strong> conversão. Já na versão paga, o cliente po<strong>de</strong>encontrar ferramentas como alta disponibilida<strong>de</strong>, otimização <strong>de</strong> memória, <strong>de</strong>sempenho <strong>de</strong>alertas e relatórios, automated balanced <strong>de</strong> carga, piscinas heterogêneas, host <strong>de</strong>gerenciamento <strong>de</strong> energia, serviços <strong>de</strong> abastecimento (virtual), administração baseada emfunções, live instantâneos <strong>de</strong> memória e reverte, Citrix Storage Link, gerenciamento do ciclo<strong>de</strong> vida, serviços <strong>de</strong> abastecimento (física) e recuperação do site.


22Abaixo segue a tela <strong>de</strong> administração do XenServer, cujo item selecionado é opróprio servidor físico, exibindo em gráficos instantâneos o consumo <strong>de</strong> CPU, memória eoutros.Figura 1.5 - XenServer AdministraçãoFonte: AutorA próxima imagem mostra a tela <strong>de</strong> configuração do XenServer, com váriasconfigurações disponíveis sendo elas, status display, network and management interface,authentication, virtual machines, disks and storage repositories, resource pool configuration,hardware and BIOS information, keyboard and time zone, remote service configuration,backup, restore and update, technical support, reboot or shutdown e local command shell.


23Figura 1.6 - XenServer 5.6 ConsoleFonte: Autor1.3.3 Outras ferramentasAlém das ferramentas citadas acima que são as mais conhecidas na área além <strong>de</strong>principais concorrentes, existem algumas outras que também cumprem com o objetivo <strong>de</strong>virtualizar sistemas operacionais. Algumas muito conhecidas enquanto outras não tanto,sendo que algumas são mais voltadas para uma virtualização simples sobre um sistemaoperacional já existente.1.3.3.1 VirtualBoxO VirtualBox é uma das ferramentas <strong>de</strong> virtualização muito conhecidas por suafacilida<strong>de</strong> <strong>de</strong> uso. Seu <strong>de</strong>senvolvimento inicial foi feito pela empresa Innotek situada emStuttgart, Alemanha. Foi comprada em fevereiro <strong>de</strong> 2008 pela Sun Microsystems e algunsanos mais tar<strong>de</strong> se incorporou à Oracle Corporation, quando a Sun foi comprada pela mesma.A ferramenta consiste <strong>de</strong> um sistema que virtualiza máquinas, mas tendo como baseum sistema operacional. É uma prática diferente das duas ferramentas <strong>de</strong> virtualização que jávimos, o que em alguns casos <strong>de</strong>ixa seu aproveitamento <strong>de</strong> hardware mais baixo que umatecnologia <strong>de</strong> virtualização direta por hardware, como vimos no caso da VMware ou doXenServer. Mesmo funcionando sobre outro sistema operacional, o Virtualbox apresenta


24ferramentas assim como o VMware Workstation, que geram melhor aproveitamento eintegração do sistema virtualizado com o sistema hospe<strong>de</strong>iro.As <strong>de</strong>finições <strong>de</strong> configuração <strong>de</strong> máquinas virtuais são armazenadas em XML e sãototalmente in<strong>de</strong>pen<strong>de</strong>ntes das máquinas locais. Sendo assim, as <strong>de</strong>finições po<strong>de</strong>m serfacilmente transferidas para outros computadores, sem transtornos.O VirtualBox, por ser uma ferramenta simples eficaz e leve, também é usada emcursos em que se precisa <strong>de</strong> um segundo sistema operacional para po<strong>de</strong>r editar e nãoprejudicar o sistema da máquina física. Ele também é compatível tanto com sistemasWindows quanto com sistemas Linux, po<strong>de</strong> ser encontrado em um site próprio para download.Atualmente ele esta na versão 4.1.4.1.3.3.2 Virtual ServerVirtual Server é uma ferramenta da Microsoft que serve para virtualizar sistemasMicrosoft. Assim como o VirtualBox ele necessita <strong>de</strong> um sistema operacional como base paraser instalado. Dentre os sistemas que po<strong>de</strong>m ser instalados nele estão o Windows XP,Windows Vista e Windows Server 2003.Inicialmente o Virtual Server foi <strong>de</strong>senvolvido pela Connectix, mas antes do seulançamento ao publico foi comprado pela Microsoft, em uma tentativa da mesma <strong>de</strong> entrar nomercado <strong>de</strong> virtualização com esta ferramenta.Na versão Virtual Server 2005 R2 SP1, ele possui novas ferramentas quepossibilitam a virtualização <strong>de</strong> sistemas operacionais Linux além <strong>de</strong> permitir a execução <strong>de</strong>Shadow Copy, possibilitando que um backup seja feito da máquina virtual e que sejaarmazenado em outro servidor para, assim, aumentar a segurançaO Virtual Server possui alguns problemas conhecidos, como apesar <strong>de</strong> conseguirtrabalhar bem com processadores 64 bits, ele não oferece suporte à criação <strong>de</strong> máquinasvirtuais com sistema operacional 64 bits, limitando assim sua capacida<strong>de</strong> <strong>de</strong> trabalhar com<strong>de</strong>terminados sistemas. Outro problema <strong>de</strong>sta ferramenta é que <strong>de</strong>vido seu tipo <strong>de</strong>comunicação com o hardware, ele acaba per<strong>de</strong>ndo bastante seu <strong>de</strong>sempenho, fazendo comque não seja uma ferramenta muito utilizada para virtualizar sistemas operacionais. Hoje emdia ele foi substituído pelo Hyper-V do Windows Server 2008.


251.3.3.3 Virtual PCVirtualPC é outra ferramenta <strong>de</strong> virtualização da Microsoft. Ela necessita <strong>de</strong> umsistema operacional como base para rodar, tendo assim a mesma perda <strong>de</strong> recursos que osoutros sistemas <strong>de</strong> virtualização que necessitam <strong>de</strong> um sistema operacional comum para rodar.Muito semelhante ao VirtualBox, ele possui uma facilida<strong>de</strong> na sua manutenção e po<strong>de</strong>virtualizar diversos sistemas operacionais.Com esta ferramenta é possível rodar sistemas operacionais Windows, Linux emdiversos sistemas operacionais como base. Mesmo este sistema não sendo um Windows, oVirtualPC po<strong>de</strong> criar, gerenciar, remover e alterar máquinas virtuais assim como os seusrecursos.1.3.3.4 Hyper-VO Hyper-V é uma ferramenta <strong>de</strong> virtualização da Microsoft que já vem incluída nosWindows Servers 2008. Ela substitui o Virtual Server também da Microsoft, mas ao contráriodo Virtual Server, ela possui suporte nativo a sistemas <strong>de</strong> 64 bits. Para implementá-la énecessário possuir processadores com a tecnologia AMD-V ou Intel VirtualizationTechnology.A ferramenta possui muitos recursos que faziam falta na tecnologia antecessora daMicrosoft. Dentre as novas funcionalida<strong>de</strong>s estão o snapshot, que possibilita a recuperaçãorapidamente em caso <strong>de</strong> falhas. Outra tecnologia disponível é o Live Migration, que permite amigração <strong>de</strong> uma máquina virtual sem o usuário perceber a diferença.Outra vantagem do Hyper-V é que ele possui o mesmo formato <strong>de</strong> arquivos <strong>de</strong>máquinas virtuais do Virtual Server, ou seja, o antigo usuário da tecnologia que foi substituídapo<strong>de</strong> migrar seus dados para o novo sistema <strong>de</strong> virtualização sem per<strong>de</strong>r seus dados ouqualquer preocupação quanto a isto.Assim como suas concorrentes, o Hyper-V possui uma boa ferramenta <strong>de</strong>administração <strong>de</strong> carga do servidor, permitindo a divisão <strong>de</strong> recursos entre as máquinasvirtuais, gerenciamento <strong>de</strong> Snaphots já tirados, po<strong>de</strong>ndo excluí-los ou reverte-los rapidamente,diminuindo o tempo <strong>de</strong> recuperação.


261.3.3.5 Kernel-based Virtual MachineO Kernel-based Virtual Machine, ou KVM é uma ferramenta <strong>de</strong> virtualização focadaem Linux, A ferramenta atualmente é mantida e financiada pelas AviKivity e Qumranetele, esuporta nativamente as tecnologias <strong>de</strong> processador Intel VT ou AMD-V. Apesar <strong>de</strong> ser umaferramenta <strong>de</strong> virtualização baseada em Linux, ela consegue criar máquinas virtuais comWindows e outros sistemas operacionais.Uma das suas vantagens é que ela possui ferramentas para uma melhor experiênciacom virtualização em Linux, permitindo melhor aproveitamento do hardware e gerandomelhor <strong>de</strong>sempenho, já por ela ser baseada no mesmo. Outra vantagem é que ele éinteiramente gratuito e possui partes sobre a licença GNU GPL.Mais uma vantagem do Kernel-based Virtual Machine é que ele suportaautomaticamente todos os dispositivos <strong>de</strong> hardware que funcionam no Linux hospe<strong>de</strong>iro(Silva et al, 2008, p. 30). Outro ponto a favor ainda é que utilizando a ferramenta ConVirt sepo<strong>de</strong> além <strong>de</strong> fazer a tradicional criação, edição e inicialização das máquinas virtuais, ser feitaa migração das máquinas virtuais em execução ou suspensas entre os sistemas hospe<strong>de</strong>iros.Uma <strong>de</strong>svantagem do KVM é o fato <strong>de</strong> cada sistema virtualizado ser executado noespaço do usuário da máquina hospe<strong>de</strong>ira, por isto ele é tratado como um processo normalpara o Kernel, o que acaba gerando certo problema no isolamento das máquinas virtuais,quando comparado a outras tecnologias <strong>de</strong> virtualização (MATHEWS, 2008).Segundo (Mathews et al, 2008, p.22), “a KVM é uma modificação do núcleo doLinux que efetivamente o transforma em um hypervisor quando se acrescenta um móduloadicional”.Silva et al, (2008, p.32) classifica os dois componentes principais do KVM: “umdriver <strong>de</strong> dispositivos para gerenciamento do hardware virtualizado, e um componente nouser-space, para emulação do hardware <strong>de</strong> um PC comum. Para essa modificação é utilizadauma versão modificada do QEMU”.1.3.3.6 Linux VServerO Linux VServer é uma ferramenta <strong>de</strong>stinada para a virtualização que foi<strong>de</strong>senvolvida pela comunida<strong>de</strong> Linux. Ela permite executar mais <strong>de</strong> um sistema operacionaldiferente, tudo no mesmo Kernel.


27Você po<strong>de</strong> pensar nele como um novo sistema num ambiente chroot, mas com umnome <strong>de</strong> host e en<strong>de</strong>reço IP diferentes, sendo como outro usuário root com menos privilégios,e gerenciamento <strong>de</strong> recursos configuráveis. São características similares ao jails do FreeBSDe os containers do Solaris 10+.Os VServers são uma proposta diferente do popular XEN Hypervisor, já que com oXEN você possui um kernel para cada servidor virtual, e com os VServers não. Com oVServer você possui pouco overhead (virtualmente nenhum), por outro lado você possuimenos recursos - atualmente é impossível ter um VServer com uma configuração <strong>de</strong> horadiferente do sistema host, por exemplo. Entretanto é possível executar um diferente fusohorário. O <strong>de</strong>sign do UNIX em geral permite que para uma gran<strong>de</strong> quantida<strong>de</strong> <strong>de</strong> aplicações,esta técnica <strong>de</strong> virtualização é perfeitamente a<strong>de</strong>quada.Note que o Xen e o VServer são propostas ortogonais - isto é, é perfeitamentepossíveis e algumas vezes até mesmo a<strong>de</strong>quadas se executar máquinas virtuais Xen em umsistema Linux, e <strong>de</strong>ntro <strong>de</strong>stas executar VServers Linux.1.3.4 Comparação entre tecnologiasAbaixo temos uma tabela comparativa entre os softwares <strong>de</strong> virtualização que foramvistos. Esta tabela exibe os softwares, VMware, Xen Server, Virtual Box, Virtual Server,Virtual PC, Hyper-V, Kernel-based Virtual Machine e Linux VServer. Os dados que sãoexibidos <strong>de</strong> cada sistema <strong>de</strong> virtualização são, criador, arquitetura CPU anfitrião, suportaarquitetura <strong>de</strong> CPU convidado, sistemas operacionais anfitriões, suporta sistemas operacionaiscomo convidados, licença, executa outro sistema operacional (kernel diferente), possui driverspor sistemas convidados suportados, suporte SMP para sistemas convidados, método <strong>de</strong>operação, comumente usado por quem, <strong>de</strong>sempenho do sistema operacional convidado emcomparação com sistema operacional anfitrião e possui suporte.


28NomeTabela 1.1 – Comparação entre características <strong>de</strong> ferramentas <strong>de</strong> virtualização.VmwareESXCriador Vmware Universida<strong>de</strong> <strong>de</strong>Cambridge,Intel eAMDArquiteturaCPUAnfitriãox86,AMD64Xen VirtualBox VirtualServerx86,AMD64,(PowerPC ex86-64)VirtualPC Hyper-V KVM LinuxVServerInnoTek Microsoft Microsoft Microsoft KVM ProjetoComunitáriox86,x86-64 Intel x86,AMD64x86, x64 x86, x64 CPU Intel/AMD comhardwareassist.x86, AMD64,PowerPC64,RISC/64,SPARC/64,ARM, S/390,SuportaArquitetura<strong>de</strong> CPUConvidadox86,AMD64Mesmo queo anfitriãox86 Intel x86 x86 x86/AMD64x86/AMD64CompatívelSOAnfitriõesSOpróprioNetBSD,Linux,SolarisWindows,Linux,Mac OS XWindows 2003,XPWindowsVista,XPWindows 2008 Linux LinuxSuporta SOcomoConvidadosLicençaWindows, RedHat,SuSe,Netware,SolarisFreeBSDComercialLinux,NetBSD,FreeBSD,OpenBSD,Solaris,WindowsGPLDOS, Windows,Linux, OS/2,FreeBSDGPL V2 versãocompletacomercialWindows NT,2000,2003, Linux(RedHat eSUSE)DOS,Windows,OS/2Windows2008,2003,CentOS,RedHat, SUSEGratuita Gratuito AcompanhaWindows 2008Linux,WindowsVáriasdistribuiçõesLinuxGPL 2 GPL 2Executa outroSO (Kerneldiferente)Possui driversporsistemasconvidadossuportadosSuporte SMPpara sistemasconvidadosSim Sim Sim Sim Sim Sim Sim NãoSim Sim Sim Sim Sim Sim N/D N/DSim Sim Não Não Não Sim Sim SimMétodo <strong>de</strong>operaçãoVirtualizaçãoTotalParavirtualizaçãoVirtualizaçãoTotalVirtualizaçãoTotalVirtualizaçãoTotalVirtualizaçãoTotalVirtualizaçãono nível <strong>de</strong>sistemaoperacionalVirtualizaçãono nível <strong>de</strong>sistemaoperacionalComumenteusadopor quemDesempenho<strong>de</strong> OSconvidado emcomparaçãocom OSanfitriãoPossuiSuporteConsolidação<strong>de</strong>servidoresPróximoao nativo? Estações <strong>de</strong>trabalho,consolidação <strong>de</strong>servidorese<strong>de</strong>senvolvimentoPróximo aonativo comperda <strong>de</strong><strong>de</strong>sempenhocomo oaumento <strong>de</strong>cargaPróximo aonativoSim Sim Sim (comlicençacomercial)Parque <strong>de</strong>servidoresPróximo aonativoEstações <strong>de</strong>trabalho,consolidação <strong>de</strong>servidorese<strong>de</strong>senvolvimentoPróximoao nativoEstações <strong>de</strong>trabalho,consolidação <strong>de</strong>servidorese<strong>de</strong>senvolvimentoPróximo aonativo? Hospedagem,isolamento <strong>de</strong>serviços esegurançaPróximoao nativo? ? Sim ? ?próximo aonativoFonte: Virtualização <strong>de</strong> sistema operacionais.


292 FERRAMENTAS DE BENCHMARKINGEm trabalho publicado, Otto Duarte (2008), afirma que, "A virtualização consiste naemulação <strong>de</strong> ambientes isolados, capazes <strong>de</strong> rodar diferentes sistemas operacionais <strong>de</strong>ntro <strong>de</strong>uma mesma máquina, aproveitando ao máximo a capacida<strong>de</strong> do hardware, que muitas vezesfica ociosa em <strong>de</strong>terminados períodos do dia, da semana ou do mês. Esse aproveitamento émaior <strong>de</strong>vido à possibilida<strong>de</strong> <strong>de</strong> fornecer ambientes <strong>de</strong> execução in<strong>de</strong>pen<strong>de</strong>ntes a diferentesusuários em um mesmo equipamento físico, concomitantemente.". Dessa forma é necessárioter o controle sobre o que realmente é exigido do hardware on<strong>de</strong> será implementada avirtualização <strong>de</strong> servidores.O termo benchmark não se aplica somente na área <strong>de</strong> informática, este termocomeçou a ser utilizado pela empresa XEROX para <strong>de</strong>finir o processo <strong>de</strong>les <strong>de</strong> comparar seusprodutos ou suas práticas com outras empresas e obter um melhor rendimento. Segundo oconceito da empresa IAPMEI:“A prática do benchmarking consiste na pesquisa dos melhoresmétodos utilizados nos diferentes processos <strong>de</strong> negócio e funçõesempresariais, com especial ênfase naqueles cujo impacto, no<strong>de</strong>sempenho, permite assegurar e sustentar vantagens competitivas.”No caso da informática, o benchmark consiste em testes <strong>de</strong> capacida<strong>de</strong> do hardwareou <strong>de</strong> software, executando diferentes rotinas que mol<strong>de</strong> seu tempo para concluir ou seu<strong>de</strong>sempenho ao executar as mesmas. O item a ser analisado recebe uma nota que varia <strong>de</strong> umaferramenta <strong>de</strong> benchmark para outra. Este resultado po<strong>de</strong> ser comparado com outrosresultados <strong>de</strong> testes que utilizaram a mesma ferramenta <strong>de</strong> benchmark, assim haverá umamesma métrica <strong>de</strong> pontuação, possibilitando a comparação entre os mesmos. A técnica <strong>de</strong>benchmark na informática po<strong>de</strong> ser dividida em três partes, sendo elas Quick-hit, Synthetic eApplication Benchmarks.Os testes conhecidos como Quick-hit, são testes normalmente simples e rápidos <strong>de</strong> seexecutarem. Não são muito eficientes para passar estatísticas muito aprofundadas sobre ohardware, como sua capacida<strong>de</strong> <strong>de</strong> processamento. Normalmente ele é utilizado para asimples i<strong>de</strong>ntificação do mesmo.Os testes sintéticos (Synthetic) são usados por quem busca um resultado maisaprofundado sobre o <strong>de</strong>sempenho do seu hardware. Eles <strong>de</strong>moram mais que os Quick-hit, mas


30conseguem retornar dados mais aprofundados, como capacida<strong>de</strong> máxima <strong>de</strong> algum hardwareou taxa <strong>de</strong> transferência máxima do mesmo. Mesmo com estes testes mais aprofundados, elenão consegue retornar resultados como se fossem em um aspecto real <strong>de</strong> carga <strong>de</strong> trabalho.Para isto que servem os testes <strong>de</strong> aplicação.O benchmark <strong>de</strong> aplicativos (application benchmark) é utilizado para fazer asimulação como se as aplicações estivessem em uma carga normal <strong>de</strong> trabalho, tornandoassim os resultados mais reais e fazendo com que a pessoa tenha uma melhor perspectivasobre o hardware em um ambiente mais próximo ao ambiente <strong>de</strong> trabalho (RajJain pag2).2.1 VMmarkAlgumas das métricas que veremos abaixo são as adotadas pela ferramenta <strong>de</strong>benchmark VMmark, que foram retiradas do seu manual. Nesta tabela são exibidas na colunada esquerda a que o servidor se <strong>de</strong>stina, na coluna do meio o sistema e na coluna da direita asua métrica, medida em que é avaliado. Sendo elas ações por minuto (servidor <strong>de</strong> e-mail),operações por minuto (olio server), none (quando não é avaliado, seja sistema ou unida<strong>de</strong> <strong>de</strong>medição, standby server, DRS), transações por minuto (DS2WebA, DS2WebB e DS2WeC),clones por hora (cópia e implantação) e migrações <strong>de</strong> VM por hora (vMotion e StoragevMotion).Tabela 2.1 – Unida<strong>de</strong> <strong>de</strong> medida por servidor.Workload Name Application(s) MetricMail Server Microsoft Action/minuteExchangeOlio Server tc Server, MySQL Operation/minuteStandby Server None NoneDS2WebA Apache, MySQL Transaction/minuteDS2WebB Apache, MySQL Transaction/minuteDS2WebC Apache, MySQL Transaction/minuteClone and NoneClones/hour<strong>de</strong>ployvMotion None VM migration/hourStorage vMotion None VM migration/hourDRS N/A NoneFonte: VMware VMmark® Benchmarking Gui<strong>de</strong>.Na tabela abaixo temos um exemplo <strong>de</strong> como a tabela é preenchida com os valoresobtidos após a <strong>análise</strong> <strong>de</strong> <strong>de</strong>sempenho. Constam nesta tabela somente qual o propósito doservidor na coluna a esquerda e sua pontuação atingida a direita, esta que utiliza as métricas


31vistas na tabela anterior e também mantém os mesmo exemplos <strong>de</strong> servidores da tabela acima,mesmo os que não se aplicam ao teste continuam na mesma.Tabela 2.2– Unida<strong>de</strong>s <strong>de</strong> medidas médias por servidor.Workload NameMail ServerOlio ServerStandby ServerDS2WebADS2WebBDS2WebCClone and<strong>de</strong>ployvMotionStorage vMotionDRSScore1000 actions/minuteNone1000 operations/minute1000 transaction/minute1000 transaction/minute1000 transaction/minute10 clones/hour10 VM migrations/hour10 VM migrations/hourNoneFonte: VMware VMmark® Benchmarking Gui<strong>de</strong>.Tendo como base estas métricas, se po<strong>de</strong> calcular manualmente o resultado <strong>de</strong> uma<strong>análise</strong> <strong>de</strong> benchmark. Abaixo segue um cálculo retirado do manual do VMmark para<strong>de</strong>monstrar como são feitos os mesmos, <strong>de</strong>monstrando assim como se obtém o resultado dostestes <strong>de</strong> forma completa.Neste exemplo temos resultados fictícios criados pelo manual <strong>de</strong> quatro etapas comresultados diferentes cada uma, conforme <strong>de</strong>monstrado na tabela abaixo.Tabela 2.3– Pontuação por servidores.Workload Name 1 2 3 4Mail Server 1100 1050 990 1080Olio Server n/a n/a n/a n/aStandby Server 940 950 890 940DS2WebA 950 1000 990 970DS2WebB 940 1010 1020 970DS2WebC 930 1020 960 1050Clone and21<strong>de</strong>ployvMotion 22Storage vMotion 11DRSn/aFonte: VMware VMmark® Benchmarking Gui<strong>de</strong>.Retirando-se os número <strong>de</strong>sta tabela e reduzindo eles conforme consta no manual,sendo os resultados do Mail Server, Standby Server, DS2WebA, DS2WebB, DS2WebC,


32divididos por 1000 cada um. /já os resultados do Clone and <strong>de</strong>ploy, vMotion e StoragevMotion divididos por 10 cada um, se obtêm os seguintes valores.Tabela 2.4– Calculo <strong>de</strong> simplificação.Workload Name Tile 1 Tile 2 Tile 3 Tile 4Mail Server 1,1 1,05 0,99 1,08Olio Server n/a n/a n/a n/aStandby Server 0,94 0,95 0,89 0,94DS2WebA 0,95 1 0,99 0,97DS2WebB 0,94 1,01 1,02 0,97DS2WebC 0,93 1,02 0,96 1,05Clone and2,1<strong>de</strong>ployvMotion 2,2Storage vMotion 1,1DRSn/aFonte: VMware VMmark® Benchmarking Gui<strong>de</strong>.Após fazer esta transformação, são unidos os resultados dos cinco (5) servidoresseparados por teste, transformando em um numero único. Para fazer esta junção é necessáriomultiplicar o resultado <strong>de</strong> um servidor pelo resultado <strong>de</strong> outro, <strong>de</strong>pois fazer o resultado damultiplicação dos cinco (5) valores multiplicados elevado na 0,2, como mostrado no exemploabaixo.(1,1 × 0,94 × 0,95 × 0,94 × 0,93) , Conseguindo-se <strong>de</strong>sta forma o valor0,969998, fazendo este mesmo cálculo para as outras colunas se obtém os seguintes valores.(1,05 × 0,95 × 1 × 1,01 × 1,02) , = 1,005465(0,99 × 0,89 × 0,99 × 1,02 × 0,96) , =0,968961(1,08 × 0,94 × 0,97 × 0,97 × 1,05) , =1,000592Com estes resultados já calculados é necessário somar os quatro (4) para finalizaresta etapa obtendo assim um número único.0,9699 + 1,0054 + 0,9689 + 1,0005 = 3,945016Para a segunda parte do cálculo é necessário juntar os valores do Clone and <strong>de</strong>ploy,vMotion e Storage vMotion tendo assim um único número como se obteve nos cálculos acimaexemplificados.(2,1 × 2,2 × 1,1) , = 1,719273


33Agora para concluir os cálculos é necessário unir os resultados ao resultado obtidonos cálculos da infraestrutura com o resultado obtido nos cálculos <strong>de</strong> aplicação, tendo assimum score total com o seguinte resultado.(3,9445 × 0,8) + (1,7192 × 0,2) = 3,499867Por <strong>de</strong>finição, no resultado dos cálculos <strong>de</strong> aplicação é necessário multiplicar por 0,8antes <strong>de</strong> somar, e no resultado da infraestrutura se multiplica por 0,2 também antes <strong>de</strong> fazer asoma. Obtendo no final a nota final da execução <strong>de</strong> benchmark, que neste caso é <strong>de</strong> 3,499867,po<strong>de</strong>ndo variar quando testado em outros dispositivos físicos com hardware diferente e comum layout <strong>de</strong> teste diferente.Como exemplos <strong>de</strong> resultados <strong>de</strong> testes <strong>de</strong> benchmark serão exibidos três resultados<strong>de</strong> três gran<strong>de</strong>s empresas <strong>de</strong> informática, po<strong>de</strong>ndo assim verificar resultados diferentes paraempresas diferentes. São elas: IBM, que foi a empresa que teve a primeira i<strong>de</strong>ia <strong>de</strong>virtualização, que alguns anos atrás produzia computadores pessoais e hoje tem seu foco maisvoltado para a área <strong>de</strong> gran<strong>de</strong>s servidores empresariais; Dell que é gran<strong>de</strong> produtora <strong>de</strong><strong>de</strong>sktops notebooks e servidores empresariais; e HP, também gran<strong>de</strong> produtora <strong>de</strong> <strong>de</strong>sktops,impressoras e servidores empresariais. Tendo todas as empresas citadas acima, comocaracterística principal que as fazem estar nesta lista temos o fator <strong>de</strong> produzirem servidores<strong>de</strong> gran<strong>de</strong> porte e terem seus resultados publicados.Cada uma <strong>de</strong>stas empresas utiliza um hardware próprio com as configurações que se<strong>de</strong>seja, tendo assim equipamentos diferentes em cada teste, o que por sua vez gera resultadosdiferentes entre si.Para a escolha das empresas que serão analisadas os testes, foi escolhido darpriorida<strong>de</strong> para as empresas que são conhecidas, principalmente por seus servidores <strong>de</strong> gran<strong>de</strong>potencia, sendo também mundialmente conhecidas por possuir testes recentes tornando oestudo o mais atual possível.Para facilitar o entendimento dos resultados, cada <strong>análise</strong> conta com uma imagem <strong>de</strong>parte dos resultados. Serão <strong>de</strong>scritos os servidores físicos que foram utilizados por cadaempresa, contendo <strong>de</strong>talhes <strong>de</strong> processador, memória e disco. Além disto serão feitos oscálculos para <strong>de</strong>monstrar como se obtiveram os resultados <strong>de</strong>monstrados nas imagens e assimenten<strong>de</strong>r o processo como um todo.Os testes <strong>de</strong>stas empresas contidos neste trabalho estão disponíveis para download nosite da VMware, on<strong>de</strong> também se po<strong>de</strong> encontrar outros <strong>de</strong>zesseis testes realizados por outras


34empresas com resultados diferentes. Além das que estão sendo estudas neste, no site se po<strong>de</strong>encontrar os resultados da Fujitsu e da Cisco, em alguns casos repetindo a empresa, sendo quea IBM possui um teste, a DELL possui um teste, a HP possui seis testes, a Cisco possui seistestes e a Fujitsu possui cinco testes, mas com uma configuração <strong>de</strong> hardware diferente.O download <strong>de</strong>stes resultados da aplicação com a ferramenta da VMware o VMmarkestão disponíveis <strong>de</strong> forma gratuita sem ser necessário que a pessoa interessada seja obrigadaa fazer o cadastro ou login no site da WMware ou seja, é possível fazer o download dosresultados sem ser necessário fornecer dados pessoais.2.1.1 IBMNo caso da avaliação <strong>de</strong> resultados da IBM, o servidor que foi avaliado é um IBMBla<strong>de</strong>Center HS22V, sendo 2 hosts testados no dia 29 (vinte e nove) <strong>de</strong> 9 (setembro) <strong>de</strong> doismil e onze (2011). Os testes foram realizados com um VMware ESX 4.1.0 Build 260247 eVMware vCenter Server 4.1.0 Build 25890. Sua configuração física é processador Intel XeonX5690 3.46GHz, possuindo 2 sockets, totalizando 12 núcleos, 96GB <strong>de</strong> RAM DDR3 sendo12 pentes <strong>de</strong> 8GB cada.Para o teste foram utilizados três (3) servidores <strong>de</strong> storage sendo dois (2) IBMSystem Storage DS5300, versão 07.70.38.00 e um (1) IBM Storwize V7000 Midrange DiskSystem, versão 6.2.0.2, tendo ocupados 1,6 TB <strong>de</strong> disco, tendo 61 discos físicos totalizando18,3 TB <strong>de</strong> espaço disponível.


Figura 2.1- Benchmark com VMmark IBMFonte: VMware35


362.2 BurnInTestBurnInTest é uma das diversas ferramentas <strong>de</strong> benchmark <strong>de</strong>senvolvidas pelaPassMark, empresa que tem como foco o <strong>de</strong>senvolvimento <strong>de</strong> softwares para benchmark.Esta ferramenta é uma ferramenta paga, possuindo apenas 30 dias <strong>de</strong> uso gratuito, comooutros softwares do tipo.2.2.1 ProcessadorNeste tópico serão especificados alguns <strong>de</strong>talhes sobre o teste <strong>de</strong> processador doBurnInTest, ferramenta usada para a geração <strong>de</strong> carga nos três cenários.Os números exibidos na janela <strong>de</strong> teste representam quantos milhões <strong>de</strong> operações daCPU foram realizados e verificados. Cada teste <strong>de</strong> matemática diferente é executado por meiosegundo. Após todos os testes serem executados a contagem <strong>de</strong> ciclo é incrementada. O cicloe a velocida<strong>de</strong> da CPU <strong>de</strong>terminam quantas operações po<strong>de</strong>m ser processadas durante operíodo.Para a avaliação da CPU, existe uma gran<strong>de</strong> varieda<strong>de</strong> <strong>de</strong> testes que po<strong>de</strong>m serrealizados no BurnInTest, <strong>de</strong>ntre eles temos alguns mais específicos e outros mais genéricos,sendo eles:1. Instruções gerais elementares (x86)2. Unida<strong>de</strong> <strong>de</strong> ponto flutuante (FPU) instruções (x87)3. CPU instruções <strong>de</strong> extensão (extensões x86), As instruções específicas <strong>de</strong>extensão po<strong>de</strong>m ser: MMX, 3DNow, SSE,SSE2, SSE3, SSE4.1, SSE4.2 eSSE4a!.4. Teste número primo5. Teste <strong>de</strong> temperatura máximaO teste padrão que vem previamente configurado no software, executa um teste emcada núcleo, a coluna threads exibe um relatório <strong>de</strong> processos que estão rodando nas CPUscaso exista mais <strong>de</strong> uma. Os testes po<strong>de</strong>m ser interrompidos a qualquer momento, portantoantes <strong>de</strong> completar os quinze minutos da versão gratuita, ou antes do tempo configurado naversão paga.Instruções gerais elementares (x86):


37O software possui um número máximo <strong>de</strong> processadores que po<strong>de</strong>m ser testados,sendo o limite 256, quando se fala <strong>de</strong> processadores, se refere a núcleos x pacotes x threads.O teste do processador avalia se as instruções do processador estão funcionando corretamente,instruções estas que seguem <strong>de</strong>scritas abaixo:• Matemática (somar, subtrair, multiplicar e dividir)• Instruções <strong>de</strong> transferência (por exemplo, pushing/popping dados <strong>de</strong>/para apilha)• Instruções lógicas (bit a bit and / or / xor)• Shift e girar instruções (por exemplo, dados <strong>de</strong> <strong>de</strong>slocamento x número <strong>de</strong>bits)• Instruções lógicas (por exemplo, igual)• Controle <strong>de</strong> instruções <strong>de</strong> transferência (por exemplo, salto em x maior que y)• Instruções <strong>de</strong> String (cópia <strong>de</strong> uma ca<strong>de</strong>ia <strong>de</strong> texto)O software gera combinações aleatórias <strong>de</strong> números para <strong>de</strong>sta forma, po<strong>de</strong>r testarmelhor o sistema sem a indução dos resultados. A ferramenta funciona em sistemas 32 ou <strong>de</strong>64 bits, gerando conjunto <strong>de</strong> dados <strong>de</strong> 32 bits para os sistemas 32 e conjunto <strong>de</strong> dados <strong>de</strong> 64bits para os sistemas 64 bits.Unida<strong>de</strong> <strong>de</strong> ponto flutuante (FPU) instruções (x87):Este teste exerce e verifica o funcionamento correto das instruções da CPU dosseguintes grupos:• Matemática <strong>de</strong> ponto flutuante (por exemplo, adicionar, subtrair, multiplicar edividir)• Transcen<strong>de</strong>ntal (por exemplo, seno, cosseno)• Carga constante (por exemplo, PI)Instruções <strong>de</strong> extensão (extensões x86):Esse teste exerce extensões para a instrução <strong>de</strong> CPU x86 para <strong>de</strong>finir uma varieda<strong>de</strong><strong>de</strong> aplicações, tais como multimídia.• 3DNow: Este teste exercita e verifica o funcionamento correto do CPU,incluindo uma amostra <strong>de</strong> 3DNow em movimento, adição, subtração e


38multiplicação. Conjuntos conhecidos e aleatória <strong>de</strong> dados são usados paraexecutar e verificar o funcionamento correto. Os conjuntos <strong>de</strong> dados sãopares <strong>de</strong> 32-bit flutuadores (por exemplo, x, y), on<strong>de</strong> X e Y são 32 bitsflutuadores.• MMX: Como para o teste 3DNow. As instruções incluem moverregistradores MMX, adição, subtração e multiplicação. Conjunto <strong>de</strong> dados:conjuntos <strong>de</strong> dados <strong>de</strong> 64 bits são usados.• SSE: Como para o teste MMX. As instruções incluem mover registros SSE,adição, subtração e multiplicação. Conjunto <strong>de</strong> dados: grupos <strong>de</strong> 4 x 32 bitsflutuadores (por exemplo, a, b, c, d) on<strong>de</strong> a, b, c, d são 32 bits flutuadores.• SSE2: Como para o teste <strong>de</strong> SSE. Conjunto <strong>de</strong> dados: pares <strong>de</strong> 64-bitflutuadores (por exemplo, x, y) em que x, y são 64 bits flutuadores.• SSE3: Como para o teste <strong>de</strong> SSE2. Conjunto <strong>de</strong> dados: pares <strong>de</strong> 64-bit.• SSE4.1: Como para o teste <strong>de</strong> SSE3. Instruções incluem uma amostra <strong>de</strong>mover registos e multiplicação. Conjunto <strong>de</strong> dados: os pares <strong>de</strong> inteiros <strong>de</strong> 64bits.• SSE4.2: Como para o teste SSE4.1. As instruções incluem funções auxiliaresCRC. Conjunto <strong>de</strong> dados: os pares <strong>de</strong> inteiros <strong>de</strong> 32 bits.• SSE4a: Como para o teste SSE4.1. As instruções incluem funções <strong>de</strong> extração<strong>de</strong> dados. Conjunto <strong>de</strong> dados: os pares <strong>de</strong> inteiros <strong>de</strong> 64 bits não assinados.Notas:1. MMX significa "Extensões <strong>de</strong> multimídia".2. SSE significa "Streaming SIMD Extensions".3. SIMD significa" Single Instruction Multiple Data".4. Os testes são realizados apenas se a CPU suporta o teste. Por exemplo, ostestes SSE3 só serão realizados se a CPU suporta SSE3.5. Conjuntos conhecidos e aleatórios <strong>de</strong> dados são usados para executar everificar o funcionamento correto.


396. Os dados do teste são gerados aleatoriamente, <strong>de</strong> forma regular, paraproporcionar um maior conjunto <strong>de</strong> dados, bem como assegurar que otransbordamento do cache da CPU.Número primo:Este teste exerce e verifica a operação correta da CPU através do uso <strong>de</strong> umalgoritmo <strong>de</strong> geração <strong>de</strong> número primo.Temperatura máxima:Com base em testes PassMark <strong>de</strong> um conjunto <strong>de</strong> algoritmos da CPU para osdiferentes sistemas, um teste que visa gerar a temperatura mais elevada possível CPU foiproduzido. Este teste <strong>de</strong>stina-se a verificação <strong>de</strong> que o sistema <strong>de</strong> refrigeração é capaz <strong>de</strong>fazer o seu trabalho com a CPU sob carga extrema, especialmente em casos em que a CPUsofreu um overclock.Observações:(1) Alguns testes do processador são suportados apenas na versão 32bits doBurnInTest, sendo eles: 3DNow, MMX, as operações <strong>de</strong> push/Pop pilha, Transcen<strong>de</strong>ntal e asconstantes <strong>de</strong> carga.(2) BurnInTest foi projetado para testar CPUs entre grupos <strong>de</strong> processadoresmúltiplos, ou seja, testar mais <strong>de</strong> 64 processadores lógicos.2.2.2 DiscoNeste tópico será especificado alguns <strong>de</strong>talhes sobre o teste <strong>de</strong> disco do BurnInTest,ferramenta usada para a geração <strong>de</strong> carga nos três cenários.O teste <strong>de</strong> disco tem como objetivo testar <strong>de</strong> modo os discos do computador, seja eleum disco rígido ou uma unida<strong>de</strong> USB conectada ao dispositivo on<strong>de</strong> está sendo executado oteste. A ferramenta trabalha com unida<strong>de</strong>s <strong>de</strong> armazenamento com sistema <strong>de</strong> arquivoscriados (NTFS, FAT, FAT32), sendo que a unida<strong>de</strong> a ser verificada po<strong>de</strong> ou não ser a partiçãoprincipal do sistema operacional.A ferramenta po<strong>de</strong> ser configurada para executar o teste em discos com o sistema <strong>de</strong>arquivos configurado como citado acima, ou também em discos em que ainda não foi <strong>de</strong>finidoo sistema <strong>de</strong> arquivos, ou seja, um disco ainda não formatado.


40Para os testes <strong>de</strong> disco, a ferramenta possibilita trabalhar com até 50 unida<strong>de</strong>s, sendoestas unida<strong>de</strong>s pendrives como citado anteriormente, disquetes, ou po<strong>de</strong>m estar ligadas aocomputador através <strong>de</strong> barramentos como o IDE, SATA, eSATA, SCSI, Firewire ou qualquerou meio compatível com Windows.Funcionamento dos testes:Os testes po<strong>de</strong>m ser selecionados na configuração ou simplesmente <strong>de</strong>ixar que aferramenta siga um ciclo previamente <strong>de</strong>finido. Abaixo os testes que po<strong>de</strong>m ser selecionados<strong>de</strong> acordo com a necessida<strong>de</strong>:• Default (Cyclic)• Sequential data pattern (0,1,2 ... 255)• Random data with random seeking• High Low freq. Data overwrite (10101 entail 00001)• Butterfly seeking• Bin Ary data pattern1 (10101010)• Bin Ary data pattern2 (01010101)• Zeros data pattern (00000000)• Ones data pattern (11111111)• Random data pattern• Quick physical drive test (BurnInTest Professional)Para realizar o teste, é criado a cada ciclo um novo arquivo no disco e feita suaverificação, este procedimento é feito em todos os testes, exceto nos teste <strong>de</strong> Butterfly seekinge no teste <strong>de</strong> Quickphysical drive test.No teste <strong>de</strong> disco sem um sistema <strong>de</strong> arquivos previamente <strong>de</strong>finida (NTFS, FAT32),a ferramenta irá criar arquivos virtuais diretamente no disco, isto <strong>de</strong>strói as informaçõespreviamente contidas no mesmo. Este teste é executado mais rápido e normalmente retornaresultados melhores por ser diretamente no disco.BurnInTest Professional Specificend:


41É <strong>de</strong>finido por padrão um tamanho <strong>de</strong> arquivo <strong>de</strong> 1% do tamanho do disco a sertestado, ou seja, se no teste a ser executado existir mais <strong>de</strong> um disco com tamanho diferente,serão adotados dois tamanhos <strong>de</strong> arquivos diferentes para cada disco. Este arquivo é criado naraiz do disco. Para unida<strong>de</strong>s com pouca capacida<strong>de</strong> <strong>de</strong> armazenamento como, por exemplo osdisquetes, existe um tamanho mínimo que é <strong>de</strong> 32KB.Os arquivos são criados e preenchidos com uma sequência <strong>de</strong> números previamente<strong>de</strong>finida, após a criação e a inserção <strong>de</strong> dados nos arquivos, é feita a verificação <strong>de</strong>stes dados.Os arquivos são criados no espaço disponível do disco, ao atingir 94% <strong>de</strong> ocupação do disco,todos os arquivos gerados são removidos e é iniciado novamente o teste. É adotado um padrão<strong>de</strong> 94% do disco para não interferir no swap do sistema.É necessário executar certa quantida<strong>de</strong> <strong>de</strong> procedimentos para os teste <strong>de</strong>scritos,procedimentos estes que seguem abaixo:Random data with random seeking: realiza dois procedimentos repetidos, um <strong>de</strong>lesengloba escrita, leitura e verificação <strong>de</strong> um arquivo <strong>de</strong> teste com dados aleatórios. O outrofunciona buscando locais aleatórios nos arquivos <strong>de</strong> teste e leitura ou gravação <strong>de</strong> blocos <strong>de</strong>dados.Procedimento 1, são gerados sete blocos <strong>de</strong> dados aleatórios para cada disco, ousuário po<strong>de</strong> <strong>de</strong>finir manual o tamanho <strong>de</strong>stes blocos se <strong>de</strong>sejar. A ferramenta escreve em umarquivo utilizando estes blocos <strong>de</strong> dados em sequencia, do primeiro ao sétimo bloco. Após aconclusão do ultimo bloco é iniciado novamente a escrita com o primeiro bloco, até o arquivoatingir o tamanho previamente <strong>de</strong>finido.Após a conclusão da criação do arquivo, os dados contidos nele são lidos e éverificada a integrida<strong>de</strong> do arquivo, concluindo <strong>de</strong>sta forma o procedimento 1.Com a conclusão do procedimento 1, o procedimento 2 seleciona aleatoriamente umarquivo gerado pelo procedimento 1. Abre este arquivo e seleciona <strong>de</strong>ntro <strong>de</strong>le um bloco <strong>de</strong>dados também <strong>de</strong> forma aleatória e irá ler e escrever neste bloco <strong>de</strong> dados selecionado damesma forma. Este procedimento é realizado <strong>de</strong> acordo com o número <strong>de</strong> vezes <strong>de</strong>finido pelousuário.Estes procedimentos 1 e 2 são repetidos até atingir o limite do disco mencionadoacima. Atingindo este limite, todos os arquivos <strong>de</strong> teste são apagados e o procedimentoreiniciado.


42Butterfly Seeking: Este teste executa uma busca aleatória pelo disco, procurando emsetores <strong>de</strong> disco entre 0 e X, sendo X o tamanho do disco. Este procedimento é realizado onúmero <strong>de</strong> vezes que é <strong>de</strong>finido pelo usuário. Este teste é suportado somente em versões doWindows XP ou superior.Quickphysical Drive Test: Este teste executa procedimentos <strong>de</strong> escrita e leitura dodisco <strong>de</strong> arquivos virtuais. Este procedimento é realizado do inicio ao fim do disco <strong>de</strong> formaaleatória.No teste <strong>de</strong> disco existe também a opção SMART, que po<strong>de</strong> ser selecionada paracada disco que o usuário consi<strong>de</strong>rar necessário. SMART significa Self-Monitoring Analysisand Reporting Technology, ou seja, a ferramenta executa primeiro uma varredura no disco e<strong>de</strong>pois executa um teste complete gerando logs mais <strong>de</strong>talhados sobre setores <strong>de</strong>feituososExibição <strong>de</strong> resultados:Durante o teste são exibidas barras laterais on<strong>de</strong> se po<strong>de</strong> acompanhar praticamenteem tempo real os testes <strong>de</strong> disco. Nestas barras se po<strong>de</strong> acompanhar <strong>de</strong>talhes comovelocida<strong>de</strong>, dados escritos, progresso da verificação do disco, ciclos realizados e status doprocesso.Figura 2.2 – Teste <strong>de</strong> discoFonte : Autor


43Observações:Quando mais <strong>de</strong> um BurnInTest está rodando ao mesmo tempo e na mesma re<strong>de</strong> oteste <strong>de</strong> verificação <strong>de</strong> discos, po<strong>de</strong>m ser gerados erros. Estes erros po<strong>de</strong>m se manifestar comoerro <strong>de</strong> criação <strong>de</strong> arquivo, pois dois testes po<strong>de</strong>m tentar criar o mesmo arquivo <strong>de</strong> teste e nãoconseguir por outra ferramenta já estar usando um com o mesmo nome.Para evitar este conflito po<strong>de</strong>m ser configurados nomes <strong>de</strong> unida<strong>de</strong>s <strong>de</strong> re<strong>de</strong>diferentes para cada máquina que estiver executando o BurnInTest.Para testar portas Firewire é recomendável ligar um disco removível na mesma eutilizar o BurnInTest configurado para testes <strong>de</strong> disco externo, o mesmo método érecomendável para os testes <strong>de</strong> leitores <strong>de</strong> cartões.2.2.3 MemóriaO teste <strong>de</strong> memória, testa a integrida<strong>de</strong> da memória RAM instalada nocomputador. Como BurnInTest é executado <strong>de</strong>ntro <strong>de</strong> janelas, parte da RAM disponível estásendo usado pelo Windows e outros aplicativos em execução. Qualquer memória que já nãoesteja em uso ativo pelo sistema ou por qualquer outro aplicativo, será testada pela ferramentaem questão.O teste <strong>de</strong> memória escreve um número padrão na memória RAM, em seguida,verifica se os números lidos da memória RAM correspon<strong>de</strong>m a esta sequência. O padrãousado po<strong>de</strong> alterar automaticamente <strong>de</strong> um ciclo para o outro.Padrões <strong>de</strong> teste disponíveis na ferramenta:1. Sequencia (0,1,2 ...)2. Binário 1 (10101010 ...)3. Binário 2 (01010101 ...)4. Zeros (00000000 ...)5. Ones (11111111 ...)6. Teste <strong>de</strong> adjacência celularO padrão <strong>de</strong> teste po<strong>de</strong> ser alterado para ser apenas um dos padrões <strong>de</strong> teste citadosacima. Alternativamente, a configuração padrão (cíclica) irá percorrer cada um dos padrões <strong>de</strong>teste.


44A quantida<strong>de</strong> total <strong>de</strong> memória RAM livre é exibida na janela <strong>de</strong> teste <strong>de</strong> memória.Parte da memória é sempre <strong>de</strong>ixado disponível para evitar erros <strong>de</strong> memória, evitando <strong>de</strong>staforma o swap. Os MBs escritos e MBs lidos, campos presentes na janela <strong>de</strong> teste <strong>de</strong> memória,são acumulativos <strong>de</strong>s<strong>de</strong> o início do ensaio, po<strong>de</strong>ndo <strong>de</strong>sta forma ser maior do que o tamanhoda memória RAM instalada no computador.Para o teste <strong>de</strong> memória, um ciclo é <strong>de</strong>finido como sendo o número <strong>de</strong> vezes que ostestes acima foram executados. Ou seja se cada teste for executado uma vez o resultado vaimostrar seis ciclos, se cada teste for executado duas vezes o resultado vai mostrar doze ciclosrealizados.O teste da memória RAM não necessariamente <strong>de</strong>tecta todas as falhas que po<strong>de</strong>mexistir na mesma, isto acontece se cache do sistema operacional Windows está ou nãoutilizando muito espaço. Nestes casos, erros da memória RAM serão apresentados como errosno sistema operacional ou erros no disco. Para evitar estes erros no teste o recomendável é umpré-teste na memória RAM.Funcionamento dos testes <strong>de</strong> memória RAM:O teste da memória RAM executa uma or<strong>de</strong>m <strong>de</strong> três passos que contem os padrões<strong>de</strong> teste binário 1, binário 2, Zeros e Uns. Segue abaixo a sequencia dos três testes executados:Alocação <strong>de</strong> memória: o teste aloca e libera dinamicamente a memória, este teste<strong>de</strong>pen<strong>de</strong> da quantida<strong>de</strong> <strong>de</strong> memória que está disponível para o teste.Escrevendo: registra dados <strong>de</strong> teste do inicio ao fim da memória RAM.RAM.Verificando: verifica a integrida<strong>de</strong> dos dados <strong>de</strong> teste do inicio ao fim da memória


45Figura 2.3 – Teste <strong>de</strong> memóriaFonte : AutorTeste padrão <strong>de</strong> memória:O teste padrão <strong>de</strong> memória é o teste normal para verificar erros na memória RAM,este teste já vem previamente configurado na ferramenta em questão.Teste <strong>de</strong> Tortura (BurnInTest Professional):O teste <strong>de</strong> tortura é um teste <strong>de</strong> memória que trabalha com multi-processo. Váriosprocessos são iniciados no seu próprio espaço <strong>de</strong> en<strong>de</strong>reço virtual e cada processo aloca umbloco <strong>de</strong> memória RAM para testes. Isto evita o problema <strong>de</strong> fragmentação <strong>de</strong> memóriavirtual, problema que o teste padrão po<strong>de</strong> sofrer tentando alocar um único bloco gran<strong>de</strong> <strong>de</strong>memória RAM. Cada processo é executado <strong>de</strong> forma assíncrona, <strong>de</strong> modo que a escrita e aleitura dos blocos <strong>de</strong> memória são feitos em vários lugares ao mesmo tempo e por processosdiferentes.O teste <strong>de</strong> tortura eventualmente faz mais atribuições a memória RAM do querealmente esta disponível no momento do teste, isto acaba fazendo um swap por falta <strong>de</strong>recursos. Esta troca contínua <strong>de</strong> dados da memória para o disco e do disco para a memóriaRAM, acaba gerando uma gran<strong>de</strong> carga para o sistema operacional o que <strong>de</strong>ixa a máquinasignificativamente mais lenta.


46Addressing Windows Extension (AWE) (disponível apenas no BurnInTestProfessional 32-bit)O Addressing Windows Extension (AWE), permite uma maior área <strong>de</strong> memória a sertestada em versões 32-bit do Windows. Ele requer que o usuário que está executando aferramenta possua direitos <strong>de</strong> administrador no sistema operacional. Este teste funcionasomente no Windows XP.2.3 PerformanceTestPerformanceTest é uma ferramenta <strong>de</strong>senvolvida pela PassMark, empresa focada no<strong>de</strong>senvolvimento <strong>de</strong> software para testes <strong>de</strong> hardware. Esta ferramenta em especifico é<strong>de</strong>senvolvida para executar um teste que avalia a performance do hardware e exibe umapontuações geral e uma por categoria.Esta ferramenta, que é <strong>de</strong>senvolvida para rodar em computadores com sistemaoperacional Windows, dispõe <strong>de</strong> testes <strong>de</strong> CPU, memória, disco, CD/DVD, placa mãe eví<strong>de</strong>o, todos esses com subtestes próprios, para gerar maior confiança nos resultados.No teste <strong>de</strong> disco, a ferramenta busca avaliar o <strong>de</strong>sempenho do disco medindo avelocida<strong>de</strong> <strong>de</strong> gravação e <strong>de</strong> leitura <strong>de</strong> dados entre a memória RAM e o disco a ser avaliado,po<strong>de</strong>ndo ser mais <strong>de</strong> um disco se necessário ou da vonta<strong>de</strong> do usuário. Esse teste po<strong>de</strong> serexecutado em discos locais, discos mapeados pela re<strong>de</strong>, discos USB, discos IDE, discos SCSI,discos com RAID e unida<strong>de</strong>s SATA.No teste <strong>de</strong> disco po<strong>de</strong>m ser configurados <strong>de</strong>talhes como o tamanho do arquivo a serutilizado, o que significa que os testes que utilizam cache geram um efeito menor nosresultados finais. Po<strong>de</strong> ser <strong>de</strong>finido também o tamanho do bloco para as solicitações <strong>de</strong> leiturae escrita, o que gera um número menor <strong>de</strong> solicitações ao disco e, por consequência, po<strong>de</strong>levar a uma alteração no resultado final.Para o teste po<strong>de</strong>m ser configurados os métodos <strong>de</strong> leitura e escrita, que sãoclassificados em:• Standard C/C++ API: método em que são utilizadas funções do C/C++,fwrite e fread. Este método <strong>de</strong> teste utiliza cache e o seu tamanho máximo <strong>de</strong>arquivo suportado é <strong>de</strong> 2GB.


47• Standard Win32 API (Cached): método que utiliza a interface padrão doWindows para comandos <strong>de</strong> entrada e saída (WriteFile/ReadFile). Estemétodo tem um pico <strong>de</strong> utilização no inicio, pois ele faz a transferência para ocache.• Standard Win32 API (Uncached): método é parecido com o “StandardWin32 API (Cached)”, com a diferença que este não utiliza o cache.• Raw Disk Access (Lowlevel): método em que se utiliza interface <strong>de</strong> baixonível para ler e escrever diretamente em disco, setor por setor sem o uso <strong>de</strong>cache. Este método possui um ponto fraco, pois a gravação <strong>de</strong> dadosdiretamente em disco po<strong>de</strong> corromper as tabelas <strong>de</strong> partição e formatação <strong>de</strong>disco.Outra opção do teste <strong>de</strong> disco é o formato <strong>de</strong> requisição, po<strong>de</strong>ndo ela ser síncrona ouassíncrona. A opção síncrona é quando as requisições <strong>de</strong> leitura e/ou escrita são feitassomente <strong>de</strong>pois que o sistema retornou a conclusão da solicitação anterior. A opçãoassíncrona é quando é feita uma solicitação <strong>de</strong> leitura e/ou escrita e enquanto a resposta dasolicitação não é recebida o sistema realiza outras operações.Entre as opções, há também uma barra on<strong>de</strong> se po<strong>de</strong> selecionar se o teste vaiexecutar 100% <strong>de</strong> leitura ou 100% <strong>de</strong> gravação. Esta barra é configurada por padrão para 50%<strong>de</strong> cada. Existe também a opção <strong>de</strong> <strong>de</strong>finir qual é a porcentagem <strong>de</strong> chance da próxima leituraou escrita em disco seja em sequencia ou em modo aleatória.em:Para o teste <strong>de</strong> memória, no software há dois tipos que <strong>de</strong> execução, classificados• Memory Speed Per Access Step Size: este método executa um teste em váriasetapas, sendo a primeira um teste completo da memória, do inicio ao fim. Emseguida ele executa outro teste, pulando <strong>de</strong> dois em dois setores da memória e<strong>de</strong>pois disto ele executa o mesmo teste novamente, mas <strong>de</strong>sta vez <strong>de</strong> quatroem quatro setores.• Memory Speed Per Block Size: este método testa a memória por blocos,fazendo uma requisição ao sistema e alocando todo um bloco para testes, osblocos po<strong>de</strong>m ser <strong>de</strong>finidos <strong>de</strong> 8 em 8bits, 16 em 16bits, 32 em 32bits ou <strong>de</strong>64 em 64bits.


48Após a conclusão do teste padrão do PerformanceTest, ele exibe uma imagemcontendo uma nota geral do teste feito, conforme na figura 3.1. Nesta tela, além da notaencontra-se a opção <strong>de</strong> fazer upload dos resultados obtidos e <strong>de</strong>sta forma comparar comoutros resultados. Existe também um botão para a explicação <strong>de</strong>ste resultado e um botão parasair <strong>de</strong>sta tela.Figura 2.4 – Resultado geral PerformanceTestFonte :PassMarkO resultado geral é obtido através <strong>de</strong> um cálculo que precisa, necessariamente,envolver todos os dispositivos testados, com exceção do teste <strong>de</strong> CD/DVD, recursos quepo<strong>de</strong>m estar ausentes em alguns computadores, e por este motivo não são exigidos.Tabela 3.1– Exemplo cálculo da nota geral.HardwarePesoDisco 21%CD / DVD 5%Memória 19%Gráficos 3D 12%Gráficos 2D 14%CPU 29%Total 100%Fonte: PassMark.Para o cálculo do resultado geral é levado em consi<strong>de</strong>ração a importância <strong>de</strong> algumaparte do hardware, <strong>de</strong>ste modo algumas partes possuem um peso maior na nota final que


49outros, para facilitar o entendimento do cálculo da nota po<strong>de</strong>mos observar na tabela acima ovalor <strong>de</strong> cada componente.Os valores registrados na tabela acima são apenas para exemplificar <strong>de</strong> modo simplescomo é feito o cálculo, os algoritmos para o ele são outros e estes números não po<strong>de</strong>m serutilizados para se tentar obter o mesmo resultado.Estes valores utilizados como exemplo, portanto não necessariamente representamuma pontuação real, pois varia conforme a necessida<strong>de</strong> <strong>de</strong> cada usuário. Como para umapessoa que utiliza o computador para jogos, um dos testes mais importantes seria o teste <strong>de</strong>gráficos 3D, enquanto para um administrador <strong>de</strong> re<strong>de</strong>s o mais importante seria a velocida<strong>de</strong> <strong>de</strong>disco.Por este motivo o software também exibe uma avaliação individual do hardwarepara que não seja consi<strong>de</strong>rada apenas uma pontuação geral, mas sim uma pontuação porhardware específico.Figura 2.5 – Resultado geral PerformanceTestFonte :PassMarkA imagem acima representa o resultado do PerformanceTest, exibindoprimeiramente o resultado geral da execução e em seguida os resultados <strong>de</strong> cada hardwareespecifico, <strong>de</strong>sta forma possibilitando que o usuário <strong>de</strong>cida o que consi<strong>de</strong>ra mais importante.


502.4 Outras ferramentas <strong>de</strong> benchmarkExistem muitas ferramentas <strong>de</strong> benchmark, algumas são especificas para algum tipo<strong>de</strong> hardware enquanto outras trabalham com vários tipos. Dentro <strong>de</strong>stas faixas temosferramentas <strong>de</strong> benchmark que acompanham jogos digitais, por exemplo. Estas ferramentasrealizam o teste do hardware para a parte gráfica do computador, executando suasferramentas pondo o foco no <strong>de</strong>sempenho do ví<strong>de</strong>o. Assim, o usuário po<strong>de</strong> escolher se <strong>de</strong>sejafazer benchmark <strong>de</strong> todo o hardware <strong>de</strong> seu computador, ou só daquilo que lhe interessa.Além das já citadas ferramentas <strong>de</strong> benchmark <strong>de</strong> hardware, existem tambémferramentas <strong>de</strong>senvolvidas pelo próprio fabricante para comparar o <strong>de</strong>sempenho <strong>de</strong> seuproduto com o <strong>de</strong> outro fabricante, neste caso po<strong>de</strong>ndo gerar até uma interação entre seusclientes. Como ao disponibilizar um local para que seja feita a troca <strong>de</strong> conhecimentos sobre ohardware especifico e a exibição dos seus resultados, por exemplo.Os aplicativos <strong>de</strong> benchmark também auxiliam na manutenção do computador, comono caso dos testes <strong>de</strong> benchmark criados pelos próprios fabricantes <strong>de</strong> processadores, com fins<strong>de</strong> monitorar as condições <strong>de</strong> seu produto. Nesse exemplo, se po<strong>de</strong> manter um monitoramentosobre o processador e <strong>de</strong>sse modo acompanhar a sua temperatura, a fim <strong>de</strong> evitaro aquecimento do mesmo.Ainda com o objetivo <strong>de</strong> auxiliar na manutenção <strong>de</strong> computadores em geral, existemsoftwares que são in<strong>de</strong>pen<strong>de</strong>ntes <strong>de</strong> fabricantes e que não funcionam apenas em um tipo <strong>de</strong>hardware especifico. Esses softwares normalmente disponibilizam um gran<strong>de</strong> espaço paraque o usuário possa interagir com outras pessoas trocando conhecimentos e avaliando seuhardware.Abaixo na tabela 3.2, po<strong>de</strong>m ser observados alguns softwares <strong>de</strong> benchmark. Algunssendo exclusivos para <strong>de</strong>terminados hardwares, outros criados por seus fabricantes paraavaliar seu hardware, ou ainda softwares diversos sem vínculo algum comempresas, <strong>de</strong>dicados principalmente à avaliação <strong>de</strong> hardware.


51Tabela 3.2 – Ferramentas <strong>de</strong> benchmark.AMD N-Bench2Característica Desenvolvedor SiteProcessador,Ví<strong>de</strong>oAMDhttp://www.amdboard.com/amd_nbench3.htmlATAINF 1.3 Disco Computall Services http://web.ncf.ca/aa571/docs/atainf.txtBapco Sysmark 2002Disco, Memória,Ví<strong>de</strong>o, Re<strong>de</strong> eProcessadorBAPCOhttp://www.bapco.com/BurnInTestDisco, Memória,Ví<strong>de</strong>o, Re<strong>de</strong> eProcessadorPassMarkhttp://www.passmark.com/products/bit.htmChameleonMark Ví<strong>de</strong>o NVIDIA http://www.ntcompatible.com/news/story/nvidia_chameleonmark_review.htmlCPU RightMarkProcessador eVí<strong>de</strong>oRightMarkGatheringhttp://cpu.rightmark.org/manifest.shtmlCPU-Z Processador CPUID http://www.cpuid.com/softwares/cpuz.htmlCtcmProcessador eMemóriaCT-magazinehttp://www.thg.ru/cpu/19960919/print.htmlHardware SysinfoDisco, Memória,Ví<strong>de</strong>o, Re<strong>de</strong> eProcessadorHardware SystemInfohttp://www.drhardware.com/pghpdrhd.htmHot CPU Tester Processador 7Byte Computers http://www.7byte.com/in<strong>de</strong>x.php?page=hotcpuKribiBenchProcessador eVí<strong>de</strong>oInartis AShttp://www.inartis.com/Products/Kribi%203D%20Engine/Default.aspxMax Payne Ví<strong>de</strong>o RemedyEntertainmentMemtest86http://remedygames.com/http://www.memtest86.com/PerformanceTestDisco, Memória,Ví<strong>de</strong>o, Re<strong>de</strong> eProcessadorPassMarkhttp://www.passmark.com/products/pt.htmPC ClinicDisco, Memória,Ví<strong>de</strong>o, Re<strong>de</strong> eProcessadorGeniyisis ComputerSystemshttp://www.geniyisis.com/in<strong>de</strong>x.html?/diagnostic/pc_clinic.htmSiSoft SandraDisco, Memória,Ví<strong>de</strong>o, Re<strong>de</strong> eProcessadorSISoftwarehttp://www.sisoftware.net/WCPUID Processador H.Oda! http://www.h-oda.com/Fonte: Autor.


522.5 Importância da <strong>análise</strong>Veremos a utilida<strong>de</strong> <strong>de</strong> se ter uma boa <strong>análise</strong> <strong>de</strong> um sistema virtualizado. Uma<strong>análise</strong> bem feita ajuda a medir e quantificar a potenciados servidores, obtendo assim mais<strong>de</strong>talhes sobre sua capacida<strong>de</strong> e po<strong>de</strong>ndo optar sé é necessário aumentar a quantida<strong>de</strong> <strong>de</strong>sistemas virtualizados em um computador, ou se é necessário adquirir outro caso o hardwareem questão já tenha estourado seu limite <strong>de</strong> máquinas virtuais possíveis.Tendo como base uma boa <strong>análise</strong> do hardware, on<strong>de</strong> se preten<strong>de</strong> montar osservidores <strong>de</strong> virtualização e do sistema que será utilizado como base para virtualizar. Épossível prever problemas como mudança da carga <strong>de</strong> trabalho. Visto que um hardwarefísico po<strong>de</strong> suportar um ou mais sistemas virtuais e durante a carga <strong>de</strong> trabalho é comumserem executados diversos aplicativos em servidores virtuais que costumam ficar acessívelpara usuários. Com estes aplicativos frequentemente entrando em execução e saindo <strong>de</strong>execução, o VMM po<strong>de</strong> não suportar da maneira certa estas alterações frequentes, o que po<strong>de</strong>gerar falhas inesperadas e transtornos in<strong>de</strong>sejados, ou até mesmo <strong>de</strong>ixar o servidorindisponível em parte do tempo.


533 METODOLOGIAEste capítulo apresenta toda a metodologia adotada para a aplicação dos testespropostos neste projeto. É preparado o ambiente, que engloba os três cenários criados para aexecução das ferramentas, on<strong>de</strong> é usado o software ESX da VMware como base para osmesmos. São instaladas e configuradas as máquinas virtuais, com configurações <strong>de</strong> hardwaredistintas. Após este processo, são configuradas as ferramentas, que são softwares escolhidospara os testes <strong>de</strong> benchmark. Por fim, temos os resultados expressos na forma <strong>de</strong> números,para que sejam analisados e classificados em forma <strong>de</strong> gráficos.3.1 AmbienteOs cenários, ou ambientes propostos neste projeto, são divididos em Cenário 1,Cenário 2 e Cenário 3. Estes três cenários estão classificados pela configuração <strong>de</strong> hardware,<strong>de</strong> forma que o Cenário 1 possua maior capacida<strong>de</strong> <strong>de</strong> processamento, o Cenário 2 possuacapacida<strong>de</strong> média comparado aos Cenários 1 e 3, enquanto o Cenário 3 possui a capacida<strong>de</strong>inferior comparado aos <strong>de</strong>mais sistemas virtualizados. Configurações que são <strong>de</strong>scritas<strong>de</strong>talhadamente na seção <strong>de</strong> software abaixo.3.1.1 HardwarePara po<strong>de</strong>r gerar três máquinas virtuais com configurações <strong>de</strong> hardware distintas,on<strong>de</strong> uma máquina virtual possuísse uma diferença <strong>de</strong> <strong>de</strong>sempenho para a outra, foinecessário configurar um computador para armazenar e rodar os sistemas virtualizados. Ocomputador, cujo o ambiente <strong>de</strong> teste foi configurado possui as seguintes características:• Processador Intel Core2 Quad Q6600 2,4GHz• 4GB <strong>de</strong> memória RAM 800MHz• Disco rígido <strong>de</strong> 250 GBPara po<strong>de</strong>r ter acesso aos sistemas virtualizados e gerenciar os mesmos, foinecessário um segundo computador com as seguintes configurações <strong>de</strong> hardware:• Processador Intel Celeron M410 1,4GHz• 2GB <strong>de</strong> memória RAM 800MHz• Disco rígido <strong>de</strong> 40 GB


54As configurações <strong>de</strong>ste segundo computador não exigem gran<strong>de</strong> capacida<strong>de</strong> dohardware, pois o seu verda<strong>de</strong>iro foco é o acesso ao host que armazena as máquinas virtuaiscriadas.3.1.2 SoftwarePara a criação e gerenciamento das três máquinas virtuais foi utilizado, como sistemahospe<strong>de</strong>iro, o software VMware ESX 5 Build 441354. Nele foram criados os três sistemasutilizados para os testes, sendo três Windows 2008R2, ambos em x64. A fim <strong>de</strong> facilitar oacesso a interface <strong>de</strong> configuração dos sistemas virtualizados e do sistema base dasvirtualizações, foi utilizado o software Vmware vSphere 5, também ferramenta da VMware.Conforme os testes planejados, foram criadas máquinas virtuais, cada uma com umaconfiguração diferente <strong>de</strong> processador e <strong>de</strong> memória, conforme po<strong>de</strong> ser verificado na tabela4.1, que exibe as máquinas virtuais e suas configurações.Tabela 3.3 – Máquinas virtuais.Cenário 1 Cenário 2 Cenário 3SISTEMA 2008R2 2008R2 2008R2NÚCLEO 4 2 1MEMÓRIA 4Gb 2Gb 512MbDISCO 30Gb 30Gb 30GbVM 8 8 8IP 192.168.0.30 192.168.0.14 192.168.0.17Fonte: Autor.Tendo em mente as máquinas virtuais que foram criadas para os testes, po<strong>de</strong>mosseguir para o próximo tópico on<strong>de</strong> veremos mais a fundo como foram criadas e configuradasestas máquinas.3.2 Cenários propostosComo base para os cenários planejados é necessário possuir um sistema que executea comunicação das máquinas virtuais com o hardware. Nesse caso, o projeto está trabalhandocom ferramentas da VMware, portanto, foi escolhido o VMwareESXi 5 para executar estacomunicação.Para possibilitar a instalação do VMwareESXi no host, foi criado um CD <strong>de</strong> bootcom o software <strong>de</strong>sejado e feita a inicialização da máquina com ele. Após a inicialização peloCD, o sistema executa uma verificação <strong>de</strong> compatibilida<strong>de</strong> com o hardware on<strong>de</strong> está sendo


55instalado, conforme se po<strong>de</strong> ver na imagem 4.1. Caso exista algum tipo <strong>de</strong> incompatibilida<strong>de</strong><strong>de</strong> hardware o software da VMware, exibe um aviso na tela e, <strong>de</strong>pen<strong>de</strong>ndo do tipo <strong>de</strong>incompatibilida<strong>de</strong>, o mesmo impe<strong>de</strong> a continuação da instalação.Durante a instalação foi solicitada a senha <strong>de</strong> acesso para o usuário “root”,responsável pela configuração do sistema após a conclusão. Ao concluir a instalação foi feita,a configuração <strong>de</strong> ip do sistema <strong>de</strong> base para acesso, criação e configuração das máquinasvirtuais pelo VMware vSphere.Figura 3.1 – Instalação VMwareESXiFonte: autorPara possuir acesso a interface <strong>de</strong> criação e configuração das máquinas virtuais apósa instalação e configuração do VMwareESXi, foi instalado em outro computador um softwareda VMware o vSphere Client, conforme po<strong>de</strong> ser verificado na figura 4.2. Com o ESXinstalado e o vSphere tendo acesso a interface <strong>de</strong> configuração, é possível fazer oprocedimento <strong>de</strong> criação das máquinas virtuais <strong>de</strong>sejadas.


56Figura 3.2 – vSphere ClientFonte: autor3.2.1 Cenário 1O Cenário 1 foi o primeiro a ser configurado, após a conclusão da instalação econfiguração do VMware ESX, foi possível dar inicio a instalação do Cenário 1, este que apósa conclusão, possibilitou a criação dos Cenários 2 e 3.Num primeiro momento, foi criada uma nova máquina virtual e <strong>de</strong>finida aconfiguração <strong>de</strong> hardware, sendo esta configuração <strong>de</strong>finida como:• Processador com 4 núcleos;• 4Gb <strong>de</strong> memória RAM;• 30Gb <strong>de</strong> disco rígido;• Versão da máquina virtual 8.Visto que o Cenário 1 possui esta configuração, <strong>de</strong> modo que ele seja a máquina commaior capacida<strong>de</strong> <strong>de</strong> processamento, <strong>de</strong>sta forma sendo ela a que possui a configuração <strong>de</strong>


57hardware mais próxima da máquina física.Com a configuração <strong>de</strong> hardware do Cenário 1<strong>de</strong>finida, foi utilizado um disco com o Microsoft Windows Server 2008R2 Standard Edition64 bits, em inglês, como sistema operacional base das ferramentas a serem configuradas.Figura 3.3 – Instalação Windows 2008Fonte: autorBuscando uma maior agilida<strong>de</strong> na máquina virtual e uma maior precisão tanto nomanuseio quanto nos resultados, foi instalado o VMware Tools, que tem como objetivoaprimorar a utilização da máquina virtual, <strong>de</strong>ixando a mesma mais rápida e com comandosmais precisos.Após a instalação do sistema operacional e da VMware Tools, foi <strong>de</strong>finido um ipfixo, <strong>de</strong>sta forma evitando futuras alterações <strong>de</strong> ip. Em seguida foi feita a ativação e o updatedo sistema operacional para os testes serem executados em máquinas virtuais atualizadas, comtodas as correções <strong>de</strong> segurança disponíveis.Para executar a instalação <strong>de</strong> uma das ferramentas escolhidas com o objetivo <strong>de</strong>avaliar o <strong>de</strong>sempenho da máquina virtual, foi feito o download do site do fabricante doPerformanceTest da PassMark® Software PtyLtd. Concluído o download foi iniciada a


58instalação, sem fazer alteração na configuração padrão do instalador, sendo ele instalado no“C:\Program Files\PerformanceTest\”.Ao concluir a instalação foi escolhido por executar o software para que sejamconfigurados os itens a serem avaliados pela ferramenta durante a execução, sendo estes itenso processador, a memória e o disco rígido.Iniciada a instalação da segunda ferramenta <strong>de</strong> benchmark escolhida para avaliar o<strong>de</strong>sempenho da máquina virtual. Feito o download da ferramenta BurnInTest <strong>de</strong>senvolvidapela PassMark® Software PtyLtd"C:\Program Files (x86)\BurnInTest\”, ao concluir ainstalação o software pergunta se <strong>de</strong>seja adquirir a versão completa do software ou se <strong>de</strong>sejaapenas testar ele por trinta dias, no caso <strong>de</strong>ste teste foi escolhido por apenas avaliar aferramenta por trinta dias.Executada a ferramenta para que se possa configurar ela <strong>de</strong> acordo com os testesplanejados. Acessado as configurações e removidos todos os testes com exceção dos testes <strong>de</strong>processador, memória e disco. Por se tratar <strong>de</strong> um software pago e nestes testes foramutilizadas as versões gratuitas do mesmo, não foi possível alterar o tempo <strong>de</strong> execução ou aquantida<strong>de</strong> <strong>de</strong> ciclos para o fim da execução, po<strong>de</strong>ndo apenas selecionar o que vai ser testadoe a carga <strong>de</strong> trabalho que irá ser utilizada. Para uma primeira execução do software foiselecionado uma carga <strong>de</strong> 25 para cada item a ser testado, sendo o mínimo 1 e o máximo 100por item.Estas configurações foram feitas nas duas ferramentas para que elas executem osmesmos tipos <strong>de</strong> teste e mantenham o foco no objetivo principal <strong>de</strong> avaliação <strong>de</strong>ste projeto.3.2.2 Cenário 2Para a configuração do Cenário 2 foi criada uma máquina virtual com menoscapacida<strong>de</strong> <strong>de</strong> processamento que o Cenário 1. Para isto foi criada uma máquina virtual comum hardware qualquer, em seguida foi acessado o storage do host físico na pasta on<strong>de</strong> estãoos arquivos <strong>de</strong> configuração <strong>de</strong> disco do Cenário 1 e feita uma cópia para a pasta que foicriada pelo ESX para o Cenário 2.Ao iniciar novamente a máquina virtual correspon<strong>de</strong>nte ao segundo cenário, ovSphere exibe um aviso <strong>de</strong> erro, pois ele <strong>de</strong>tecta que os arquivos foram editados e solicita oque fazer com estes novos arquivos <strong>de</strong> configuração <strong>de</strong> máquina virtual, neste caso foimarcado a opção cópia e selecionado para iniciar a máquina virtual.


59Após a inicialização do sistema operacional, a máquina virtual é exatamente igual àmáquina criada para o primeiro cenário, incluindo o hardware. Para alterar estasconfigurações <strong>de</strong> hardware, foi <strong>de</strong>sligada a máquina virtual e acessado as configurações damesma, <strong>de</strong>sta forma foi possível alterar o hardware e <strong>de</strong>ixar a máquina com as seguintesconfigurações:• Processador com 2 núcleos;• 2Gb <strong>de</strong> memória RAM;• 30Gb <strong>de</strong> disco rígido;• Versão da máquina virtual 8.Essas configurações <strong>de</strong> hardware foram feitas com o objetivo <strong>de</strong> possuir umamáquina virtual com capacida<strong>de</strong> <strong>de</strong> processamento intermediário entre as três máquinas.Tendo, <strong>de</strong>ssa forma, uma máquina com potencia total do hardware e uma com a meta<strong>de</strong> dapotencia.Com os Cenários 1 e 2 possuindo configurações <strong>de</strong> hardware diferentes, foi iniciadoo Cenário 2 para fazer a última alteração necessária, que é a alteração do ip. Removendo <strong>de</strong>staforma, o ip 192.168.0.30 e configurando o ip 192.168.0.14.3.2.3 Cenário 3Com a conclusão da configuração dos Cenários 1 e 2, restou apenas configurar oterceiro e ultimo cenário necessário para os testes,Para a configuração do Cenário 3, foi criada uma máquina virtual com menoscapacida<strong>de</strong> <strong>de</strong> processamento que os Cenários 1 e 2. Para isto foi criada uma máquina virtualcom um hardware qualquer, em seguida foi acessado o storage do host físico na pasta on<strong>de</strong>estão os arquivos <strong>de</strong> configuração <strong>de</strong> disco do Cenário 1 (po<strong>de</strong>ndo também acessar asconfigurações <strong>de</strong> disco do Cenário 2) e feita uma cópia para a pasta que foi criada pelo ESXpara o Cenário 3.Ao iniciar novamente a máquina virtual correspon<strong>de</strong>nte ao terceiro cenário, ovSphere exibe um aviso <strong>de</strong> erro, pois ele <strong>de</strong>tecta que os arquivos foram editados e solicita oque fazer com estes novos arquivos <strong>de</strong> configuração <strong>de</strong> máquina virtual. Neste caso foimarcado a opção cópia e selecionado para iniciar a máquina virtual.


60Após a inicialização do sistema operacional, a máquina virtual é exatamente igual àmáquina que foi utilizada para fazer a cópia, incluindo o hardware. Para alterar estasconfigurações <strong>de</strong> hardware, foi <strong>de</strong>sligada a máquina virtual e acessado as configurações damesma, <strong>de</strong>sta forma foi possível alterar o hardware e <strong>de</strong>ixar a máquina com as seguintesconfigurações:• Processador com 1 núcleo;• 512Mb <strong>de</strong> memória RAM;• 30Gb <strong>de</strong> disco rígido;• Versão da máquina virtual 8.O Cenário 3 possui estas configurações <strong>de</strong>vido ao fato <strong>de</strong>sta ser esta a configuraçãomínima recomendada pelo fabricante do sistema operacional, neste caso a Microsoft.Com os Cenários 1, 2 e 3 possuindo configurações <strong>de</strong> hardware diferentes, foiiniciado o Cenário 3 para fazer a ultima alteração necessária, que é a alteração do ip,removendo <strong>de</strong>sta forma o ip 192.168.0.30 e configurando o ip 192.168.0.17.Desta forma a configuração dos 3 cenários ficou como <strong>de</strong>scrito na figura 4.4, sendoum host físico (VMwareESXi 5) e três cenários (máquinas virtuais).


61Figura 3.4 – AmbienteFonte: autor3.3 MétodoCom a criação e configuração das máquinas virtuais concluídas <strong>de</strong>u-se inicio aostestes propostos neste trabalho. Para facilitar o estudo dos resultados, os testes realizadosforam divididos em três grupos, sendo classificados <strong>de</strong> acordo com a máquina virtual on<strong>de</strong>foram executados.Foram adotados cinco tipos <strong>de</strong> testes a serem executados, um com a ferramentaPerformanceTest e BurnInTest com carga 1%, outro com a ferramenta PerformanceTest eBurnInTest com carga 25%, outro com a ferramenta PerformanceTest e BurnInTest com carga50%, outro com a ferramenta PerformanceTest e BurnInTest com carga 75% e outro com aferramenta PerformanceTest e BurnInTest com carga 100%.Desta forma temos os testes classificados em:Cenário 1


62• PerformanceTest e BurnInTest com carga 1%• PerformanceTest e BurnInTest com carga 25%• PerformanceTest e BurnInTest com carga 50%• PerformanceTest e BurnInTest com carga 75%• PerformanceTest e BurnInTest com carga 100%Cenário 2• PerformanceTest e BurnInTest com carga 1%• PerformanceTest e BurnInTest com carga 25%• PerformanceTest e BurnInTest com carga 50%• PerformanceTest e BurnInTest com carga 75%• PerformanceTest e BurnInTest com carga 100%Cenário 3• PerformanceTest e BurnInTest com carga 1%• PerformanceTest e BurnInTest com carga 25%• PerformanceTest e BurnInTest com carga 50%• PerformanceTest e BurnInTest com carga 75%• PerformanceTest e BurnInTest com carga 100%No momento não serão exibidos todos os testes realizados, <strong>de</strong>ixando assim, os<strong>de</strong>talhes para serem analisados no capítulo “Resultados”. Dessa forma, os testes a seremexibidos abaixo serão:Cenário 1• Resultados BurnInTest 75Cenário 2• Resultados BurnInTest 25Cenário 3• Resultados PerformanceTest


633.3.1 Cenário 1No segundo teste executado com a segunda ferramenta, a mesma foi configuradapara trabalhar com 75 <strong>de</strong> carga, sendo ela relativamente alta para verificar como a máquinavirtual se comportaria no teste <strong>de</strong> exigência alta nos recursos a serem avaliados, como po<strong>de</strong>ser verificado na figura 4.5.Para ter um acompanhamento do uso em tempo real da máquina virtual em que estásendo executado o teste, foi aberto um gerenciador <strong>de</strong> tarefas e selecionada a aba“Performance”, <strong>de</strong>ste modo foi possível visualizar um gráfico em tempo real do inicio ao fimda execução dos testes selecionados.Como é possível visualizar no gráfico da figura 4.5, assim como neste teste quantonos outros, o processador oscilou bastante, mas por se tratar <strong>de</strong> uma execução do softwarecom carga <strong>de</strong> 75 o mesmo se manteve com muita carga na maior parte do tempo. Tornando,assim, o gráfico bem diferente nos testes com carga <strong>de</strong> 25 em todas as máquinas virtuais, poisnos casos dos testes com carga <strong>de</strong> 25, o gráfico raramente passava dos 50% <strong>de</strong> carga doprocessador.


64Figura 3.5: Execução BurnInTest carga 75% vm Cenário 1Fonte: autor3.3.2 Cenário 2No primeiro teste executado com a segunda ferramenta, a mesma foi configuradapara trabalhar com 25 <strong>de</strong> carga, sendo ela relativamente baixa para verificar como a máquinavirtual se comportaria no primeiro teste <strong>de</strong> pouca exigência, como po<strong>de</strong> ser verificado nafigura 4.6.Para ter um acompanhamento do uso em tempo real da máquina virtual em que estásendo executado o teste, foi aberto um gerenciador <strong>de</strong> tarefas e selecionada a abaPerformance. Deste modo foi possível visualizar um gráfico em tempo real do inicio ao fimda execução dos testes selecionados.Como é possível visualizar no gráfico presente na figura 4.6, assim como neste testequanto nos outros o processador oscilou bastante, mas por se tratar <strong>de</strong> uma execução do


65software com carga apenas <strong>de</strong> 25 o mesmo se manteve com pouca carga na maior parte dotempo, tendo apenas alguns gran<strong>de</strong>s picos <strong>de</strong> uso, picos estes que não estão visíveis nestaimagem. Gráfico este que apresentou mudanças nos testes com carga <strong>de</strong> 75 em todas asmáquinas virtuais.Figura 3.6 : Execução BurnInTest carga 25% vm Cenário 2Fonte: autorNo topo da figura 4.6 po<strong>de</strong> ser visto como segundo plano os três primeiros testes queestavam sendo executados nesta máquina virtual, sendo o primeiro da esquerda o teste <strong>de</strong>processador, o teste do meio sendo <strong>de</strong> disco e o da direita sendo o teste <strong>de</strong> memória. Todoseles exibidos em janelas separadas com informações em tempo <strong>de</strong> execução dos mesmos.Conforme observado na parte superior da figura 4.6, é possível verificar que o teste<strong>de</strong> disco está no sexto ciclo da verificação do disco C:, enquanto isto o teste <strong>de</strong> memóriaRAM está no ciclo 18. Observando estes testes se percebe que os ciclos <strong>de</strong> teste são


66in<strong>de</strong>pen<strong>de</strong>ntes entre <strong>de</strong> um hardware para o outro, ou como o teste <strong>de</strong> processador que nãotrabalha por ciclos e sim por instruções.3.3.3 Cenário 3Ao iniciar o teste com a ferramenta Performance Test, o software exibe uma tela comimagens centrais cada uma <strong>de</strong>las po<strong>de</strong>ndo ser selecionada e representando uma parte dohardware do computador, sendo estas partes o drive <strong>de</strong> CD, HD, placa <strong>de</strong> ví<strong>de</strong>o, placa mãe,processador e memória. Esta primeira tela permite selecionar algum hardware específico paraque seja exibido informações sobre o mesmo.O teste do hardware po<strong>de</strong> ser iniciado clicando no ícone que fica no canto esquerdosuperior, escrito Run Benckmark. Após selecionar a opção, a ferramenta exibe uma tela comum aviso “You are about to run all tests, this may take several minutes. Are you sure yourwant to continue?” que permite ao usuário selecionar as opções sim ou não.O primeiro teste a ser executado é o teste <strong>de</strong> processador com os seus subtestes, emseguida ele executa os testes gráficos 2D, gráficos 3D, memória, disco rígido e drive <strong>de</strong> CD,todos estes seguidos também pelos seus subtestes.Por se tratar <strong>de</strong> uma ferramenta que avalia e disponibiliza uma nota para o hardwareque esta sendo testado, ela faz uso <strong>de</strong> diferentes testes que utilizam gran<strong>de</strong> parte dacapacida<strong>de</strong> <strong>de</strong> processamento do hardware. Para que o teste seja o mais fiel possível o i<strong>de</strong>al énão utilizar o computador enquanto o teste estiver sendo executado.Abaixo uma imagem <strong>de</strong>monstrando a execução da ferramenta, no momento em que aimagem foi gerada, a ferramenta estava passando pelo teste <strong>de</strong> memória, estando quase no fimdo mesmo. Po<strong>de</strong> ser acompanhado a pontuação <strong>de</strong> cada subteste da memória, Allocate SmallBlock, Read Cached, Read Uncached e outros. Para facilitar a visualização dos resultados, osmesmos estão sendo exibidos com uma barra gráfica e um resultado numérico dos testes jáconcluídos.


Figura 3.7 : Execução Performance TestFonte: autor67


684 RESULTADOSEste capítulo apresenta os resultados obtidos com a execução das ferramentaspropostas neste trabalho. Para esta apresentação o capítulo é divido em três subtópicos, sendoestes, CPU, MEMÓRIA e DISCO.Cada um dos subtópicos é responsável por apresentar uma parte do hardwareavaliado e a <strong>análise</strong> <strong>de</strong>stes resultados.Abaixo seguem três tabelas divididas por cenários, cada uma <strong>de</strong>stas tabelas contémos resultados do inicio ao fim dos testes. Para melhor compreen<strong>de</strong>r a tabela, esta é divididaem CPU, DISCO e MEMÓRIA, nas linhas e nas colunas estão <strong>de</strong>stacadas as cargas que foramaplicadas para se obter estes resultados.A primeira tabela a ser analisada é a do Cenário 1, esta sendo a máquina virtual commaior capacida<strong>de</strong> <strong>de</strong> hardware como foi explicado anteriormente.Avaliando o teste <strong>de</strong> CPU po<strong>de</strong> ser visto que do teste <strong>de</strong> carga 1% para o teste <strong>de</strong>carga 25% se obteve 216,5 pontos a menos, ou seja, foi obtida uma diferença <strong>de</strong>aproximadamente 6,7%. Do teste <strong>de</strong> carga 25% para a carga 50%, sendo a meta<strong>de</strong> da carga, seobteve 725,5 pontos a menos, tendo uma queda <strong>de</strong> aproximadamente 24,2% da pontuação. Adiferença <strong>de</strong> pontuação da carga <strong>de</strong> 50 para a carga <strong>de</strong> 75 obteve um resultado muito próximo,diminuindo apenas 44,2 pontos, atingindo 1,9% <strong>de</strong> diferença. Já do teste com carga <strong>de</strong> 75 parao teste <strong>de</strong> carga 100% se obteve a maior diferença nos resultado, chegando a 938,5 <strong>de</strong>diferença chegando aos 42,2%.Tabela 4.1 – Resultado Cenário 1.CENARIO 1 1 25 50 75 100CPU 3208,4 2991,9 2266,4 2222,2 1283,7DISCO 468,5 453,7 413,8 441,2 486,4MEMÓRIA 505,3 523,5 552,6 417,7 229,3GERAL 914,9 877,7 734,1 735,8 345,0Fonte: Autor.Nos testes em geral do Cenário 1, o processador obteve uma pontuaçãoconsi<strong>de</strong>ravelmente mais elevada que as outras partes do hardware. Desta forma o restante dohardware acabou se tornando um gargalo para a pontuação do processador.


69Tabela 4.2 – Resultado Cenário 2.CENARIO 2 1 25 50 75 100CPU 1541,5 1466,8 1293,9 1038,2 560,6DISCO 487,1 415,3 403,0 401,5 399,4MEMÓRIA 563,3 514,9 501,8 395,2 167,6GERAL 774,1 690,7 677,2 529,3 294,8Fonte: Autor.No Cenário 2 é perceptível a diferença do teste <strong>de</strong> carga 1% da CPU para o mesmoteste realizado no cenário, sendo que no Cenário 1 a pontuação foi <strong>de</strong> 3208,4 e no Cenário 2 apontuação foi <strong>de</strong> 1541,5. Ou seja, se obteve uma diferença <strong>de</strong> cerca <strong>de</strong> 50% do teste doCenário 1 para o teste do Cenário 2. Do teste <strong>de</strong> carga 1% para o teste <strong>de</strong> carga 25% houveuma pequena queda na performance do processador, aproximadamente 4,8%. Como já eraesperado, <strong>de</strong>vido a uma pequena alteração da carga <strong>de</strong> processamento. No caso do teste <strong>de</strong>carga 25% para o teste <strong>de</strong> carga 50% houve uma queda <strong>de</strong> 172,9 pontos, atingindoaproximadamente 11,7% dos pontos <strong>de</strong> diferença, pouco mais que a diferença do teste <strong>de</strong>carga 1% para o teste <strong>de</strong> carga 25%.Tabela 4.3 – Resultado Cenário 3.CENARIO 3 1 25 50 75 100CPU 909,9 812,8 779,5 742,1 475,7DISCO 444,4 375,1 310,6 366,3 404,5MEMÓRIA 445,6 409,7 387,0 377,2 118,2GERAL 572,6 520,3 473,1 474,1 249,5Fonte: Autor.Tratando dos resultados gerais, po<strong>de</strong> ser observado também que em todos os cenárioso teste com quantida<strong>de</strong> <strong>de</strong> 100 <strong>de</strong> carga apresentou um resultado muito inferior ao teste <strong>de</strong>carga 75%, sendo que os três resultados com carga <strong>de</strong> 100 apresentaram resultados muitopróximos, enquanto os resultados com as outras cargas apresentaram valores um pouco maisdiferentes entre eles.Ao se verificar os resultados gerais dos Cenários 1, 2 e 3, é possível perceber queeles seguem uma redução na pontuação continua e próxima, sem diferença significativa doresultado geral do teste do Cenário 1 para o resultado geral do teste do Cenário 2. O mesmopo<strong>de</strong> ser verificado em comparação entre os resultados gerais do Cenário 2 para os resultadosgerais do Cenário 3.


70Título do GráficoÍNDICE100090080070060050040030020010001 25 50 75 100CENARIO 1 914,9 877,7 734,1 735,8 345CENARIO 2 774,1 690,7 677,2 529,3 294,8CENARIO 3 572,6 520,3 473,1 474,1 249,54.1 CPUEste tópico tem como objetivo apresentar por completo os testes que foramexecutados no processador com os três cenários. Para isto foi gerado um gráfico on<strong>de</strong> são<strong>de</strong>monstrados os resultados obtidos nos testes, totalizando quinze testes divididos em trêscenários <strong>de</strong> cinco testes cada um.Abaixo segue o gráfico representando a redução no <strong>de</strong>sempenho da CPU conformeaumenta a carga gerada nos três cenários, sendo que esta redução é mais significativa paraalguns cenários do que para outros.


71CPU350030002500íNDICE20001500100050001 25 50 75 100CENÁRIO 1 3208,4 2991,9 2266,4 2222,2 1283,7CENÁRIO 2 1541,5 1466,8 1293,9 1038,2 560,6CENÁRIO 3 909,9 812,8 779,5 742,1 475,7Figura 4.1: Gráfico <strong>de</strong> uso da CPU nos três cenáriosFonte: autorSegundo o gráfico po<strong>de</strong> se perceber uma diferença na capacida<strong>de</strong> <strong>de</strong> processamentodo Cenário 1 para os Cenários 2 e 3. Também é possível verificar que o Cenário 1 é o quesofreu uma maior queda na performance conforme sua carga aumentava.Com carga <strong>de</strong> 1, o Cenário 1 obteve uma pontuação <strong>de</strong> 3208,4, o Cenário 2 obteveuma pontuação <strong>de</strong> 1541,5 e o Cenário 3 obteve uma pontuação <strong>de</strong> 909,9. Já no teste comcarga 100% o Cenário 1 obteve uma pontuação <strong>de</strong> 1283,7, o Cenário 2 obteve uma pontuação<strong>de</strong> 560,6 e o Cenário 3 obteve uma pontuação <strong>de</strong> 475,7.Desta forma, o Cenário 1 obteve uma queda <strong>de</strong> 1924,7, cerca <strong>de</strong> 60% <strong>de</strong> perda na suapontuação, enquanto o Cenário 2 teve uma queda <strong>de</strong> 980,9, em torno <strong>de</strong> 63% da suapontuação. O Cenário 3 obteve uma queda <strong>de</strong> apenas e 434,2, aproximadamente 47% <strong>de</strong> perdana sua pontuação. O Cenário 3 foi o que menos per<strong>de</strong>u carga, já pelo fato <strong>de</strong> ele ser o quemenos tem capacida<strong>de</strong> a per<strong>de</strong>r perante os <strong>de</strong>mais cenários. Pois enquanto os outros cenáriostinham muito mais capacida<strong>de</strong> a ser gasta com o gerador <strong>de</strong> carga, acabam per<strong>de</strong>ndo maiorpontuação que o cenário que não tem muita capacida<strong>de</strong> <strong>de</strong> processamento para per<strong>de</strong>r.Entre as quedas <strong>de</strong> <strong>de</strong>sempenho no Cenário 2, duas foram as que mais se <strong>de</strong>stacaram,sendo elas do teste <strong>de</strong> <strong>de</strong>sempenho com carga <strong>de</strong> 1 para o teste com carga <strong>de</strong> 25 e a segundaque da acentuada que se teve foi do teste <strong>de</strong> carga 75% para o teste <strong>de</strong> carga 100%.No caso do teste <strong>de</strong> carga 1% para 25, o resultado se <strong>de</strong>ve a uma oscilação no<strong>de</strong>sempenho da máquina virtual. Com mais testes se obteve um resultado que segue um


72número uniforme, mas para <strong>de</strong>monstrar as oscilações que po<strong>de</strong>m acontecer em sistemasvirtualizados foi optado por permanecer com a fi<strong>de</strong>lida<strong>de</strong> do primeiro resultado obtido semalterações.Os Cenários 2 e 3 mantiveram resultados muito próximos durante os testes, sendoque a maior diferença entre os dois cenários ocorreu no teste com carga 1%, obtendo 631,6,aproximadamente 41% <strong>de</strong> diferença entre os dois resultados. Enquanto o teste <strong>de</strong> mesmacarga obteve 1666,9, cerca <strong>de</strong> 51% <strong>de</strong> diferença entre os cenários 1 e 2.4.2 DISCOEste tópico tem como objetivo apresentar por completo os testes que foramexecutados no disco com os três cenários. Para isto foi gerado um gráfico on<strong>de</strong> estão sendo<strong>de</strong>monstrados os resultados do início ao fim <strong>de</strong> cada teste, totalizando quinze testes divididosem três cenários <strong>de</strong> cinco testes cada um.Nestes testes, mesmo com a gran<strong>de</strong> variação <strong>de</strong> carga, não houve gran<strong>de</strong> mudança nográfico dos três cenários, todos eles estando em limites próximos. Enquanto a mudança doCenário 1 fica entre 486,4 pontos e 413,8 pontos, para o Cenário 2 ficou entre 487,1 pontos e401,5 pontos, enquanto para o Cenário 3 ficou entre 444,4 pontos e 310,6 pontos.Desta forma, o gráfico ficou limitado entre 487,1 pontos, visto que a pontuação maisalta dos três cenários, obtida pelo Cenário 2 e a pontuação mais baixa com 310,6 pontos,pontuação esta obtida pelo Cenário 3. O gráfico ficou com diferença <strong>de</strong> aproximadamente36%, entre a pontuação mais alta e a pontuação mais baixa, <strong>de</strong> toda a categoria <strong>de</strong> testes.Abaixo segue o gráfico representando a oscilação no <strong>de</strong>sempenho do disco conformeaumenta a carga gerada nos três cenários, mudança que fica muito mais perceptível no testecom carga <strong>de</strong> 100 em específico para o Cenário 1.


73DISCO600500400íNDICE300200Figura 4.2 : Gráfico <strong>de</strong> uso do disco nos três cenáriosFonte: autorComo é possível ver no gráfico acima, os testes do Cenário 2 e do Cenário 3obtiveram resultados muito próximos em gran<strong>de</strong> parte dos testes. Finalizando com o resultadomais próximo <strong>de</strong> todos os testes.Diferente dos Cenários 2 e 3, o Cenário 1 esteve em queda durante gran<strong>de</strong> parte doteste, finalizando com a maior pontuação dos três cenários, enquanto o Cenário 3 obteve amaior queda <strong>de</strong> pontuação até o teste <strong>de</strong> carga 50%, recuperando a sua pontuação logo após.Enquanto isto o Cenário 2 teve uma queda <strong>de</strong> 87,7 pontos e o Cenário 3 teve uma queda <strong>de</strong>39,9 pontos, sendo esta ultima a menor queda dos três cenários durante o teste <strong>de</strong> disco.No teste <strong>de</strong> disco a ferramenta <strong>de</strong> benchmark avaliou pela velocida<strong>de</strong> <strong>de</strong> gravação etambém pela velocida<strong>de</strong> <strong>de</strong> leitura, estas que não foram alteradas para nenhum dos trêscenários. Assim como não foi alterado também o tamanho do disco. Neste caso é possívelperceber que o teste oscilou pouco em comparação com outros testes, atingindo uma diferença<strong>de</strong> 176,5 pontos entre o teste com maior pontuação e o teste <strong>de</strong> menor pontuação dos trêscenários.Neste comparativo, o teste com menor pontuação seria o Cenário 3 com carga <strong>de</strong> 50atingindo 310,6 pontos e a melhor pontuação o Cenário 2 com carga <strong>de</strong> 1 atingindo 487,1pontos.10001 25 50 75 100CENÁRIO 1 468,5 453,7 413,8 441,2 486,4CENÁRIO 2 487,1 415,3 403 401,5 399,4CENÁRIO 3 444,4 375,1 310,6 366,3 404,5Em uma comparação entre os resultados dos testes <strong>de</strong> disco, o teste que obteve umresultado final mais próximo do resultado inicial foi o teste do Cenário 1, obtendo uma


74diferença <strong>de</strong> 17,9 pontos, aproximadamente 3,6% <strong>de</strong> diferença do teste <strong>de</strong> carga 1%, para oteste <strong>de</strong> carga 100%.4.3 MEMÓRIAEste tópico tem como objetivo apresentar por completo os testes que foramexecutados na memória com os três cenários. Para isto foi gerado um gráfico on<strong>de</strong> é exibidoos resultados obtidos nos testes <strong>de</strong> <strong>de</strong>sempenho, totalizando quinze testes divididos em trêscenários <strong>de</strong> cinco testes cada um.Abaixo o gráfico representando o <strong>de</strong>sempenho da memória conforme aumenta acarga gerada nos três cenários, <strong>de</strong>sempenho que se manteve sem gran<strong>de</strong> oscilação na maiorparte do tempo, tendo apenas uma gran<strong>de</strong> queda na sua pontuação no último teste com carga100%.600500400MEMÓRIAíNDICE3002001000Figura 4.3 : Gráfico <strong>de</strong> uso da memória nos três cenáriosFonte: autorNo teste <strong>de</strong> memória, todos os três apresentaram resultados com padrões <strong>de</strong>pontuação parecidos até os penúltimos testes. O teste <strong>de</strong> carga 75%, as três máquinascomeçaram a apresentar uma queda visualmente significativa. A queda visualizada no final dográfico se <strong>de</strong>ve ao fato <strong>de</strong> que no último teste a memória passou a ser usada praticamente porcompleto. Dessa forma o teste <strong>de</strong> <strong>de</strong>sempenho da máquina virtual teve que competir com ogerador <strong>de</strong> carga pelo uso da memória e assim gerou um resultado significativamente menornos três cenários.1 25 50 75 100CENÁRIO 1 505,3 523,5 552,6 417,7 229,3CENÁRIO 2 563,3 514,9 501,8 395,2 167,6CENÁRIO 3 445,6 409,7 387 377,2 118,2


75Esta queda po<strong>de</strong> ser vista no Cenário 1, com a perda <strong>de</strong> 323,3 pontos do teste <strong>de</strong>carga 50% para o teste <strong>de</strong> carga 100%, também no Cenário 2 com a perda <strong>de</strong> 334,2 pontos doteste <strong>de</strong> carga 50% para o teste <strong>de</strong> carga 100%. No caso do Cenário 3, que obteve menorqueda na pontuação que os outros três cenários, per<strong>de</strong>u apenas 268,8 pontos do teste <strong>de</strong> carga50% para o teste <strong>de</strong> carga 100%.4.4 GERALEste tópico tem como objetivo apresentar os resultados gerais dos três cenários,gerando um comparativo dos resultados e os apresentado em forma <strong>de</strong> gráfico. Desta forma,tirando o foco dos três dispositivos que foram analisados anteriormente.Abaixo o gráfico representando o calculo da média final dos três cenários, conformea ferramenta PerformanceTest, <strong>de</strong>sempenho que se manteve conforme esperado durantegran<strong>de</strong> parte dos testes.Título do GráficoTítulo do Eixo100090080070060050040030020010001 25 50 75 100CENÁRIO 1 914,9 877,7 734,1 735,8 345CENÁRIO 2 774,1 690,7 677,2 529,3 294,8CENÁRIO 3 572,3 520,3 473,1 474,1 249,5Figura 4.4 : Gráfico dos resultados gerais dos três cenáriosFonte: autorConforme po<strong>de</strong> ser visto no gráfico acima os três cenários apresentaram resultadosconforme o esperado, havendo apenas uma pequena oscilação nos três cenários no teste comcarga <strong>de</strong> 50%. No teste <strong>de</strong> carga 50%, o Cenário 1 apresentou queda <strong>de</strong> aproximadamente16%, o Cenário 2 apresentou queda <strong>de</strong> em torno <strong>de</strong> 1% e o Cenário 3 apresentou quedaaproximada <strong>de</strong> 9% da sua performance.


76No caso do teste <strong>de</strong> 100% <strong>de</strong> carga, os três cenários apresentaram gran<strong>de</strong> queda naperformance, conforme o esperado. Dessa forma o Cenário 1 atingiu uma queda <strong>de</strong>aproximadamente 53%, enquanto o Cenário 2 obteve uma queda <strong>de</strong> aproximadamente 44% eo Cenário 3 <strong>de</strong> obteve uma queda <strong>de</strong> aproximadamente 47%. Resultando <strong>de</strong>ssa forma emresultados próximos um do outro.


77CONCLUSÃOCom a opção <strong>de</strong> virtualização <strong>de</strong> servidores se tornando cada vez mais a melhorescolha para a administração <strong>de</strong> um data center, surge a dúvida sobre como será feita talestrutura e o que realmente é necessário para montá-la e mantê-la.Se percebe que na hora <strong>de</strong> planejar e executar um projeto <strong>de</strong> virtualização <strong>de</strong> um datacenter é extremamente necessário fazer a medição e analisar <strong>de</strong>talhadamente como estatecnologia vai ser implantada. Mesmo sendo uma técnica antiga já, iniciada em 1960, aindahoje não se tem o costume <strong>de</strong> executar testes <strong>de</strong> Benchmark a fim <strong>de</strong> avaliar mais a fundo averda<strong>de</strong>ira necessida<strong>de</strong>. Essa falta <strong>de</strong> costume po<strong>de</strong> em alguns casos até gerar problemas pelafalta <strong>de</strong> planejamento, visto que planejar e monitorar o hardware que será necessário evitafuturos problemas como falta <strong>de</strong> estrutura física para suportar cargas <strong>de</strong> trabalho. Com estetrabalho vimos alguns exemplos <strong>de</strong> ferramentas <strong>de</strong> avaliação <strong>de</strong> <strong>de</strong>sempenho para executaruma melhor inspeção do hardware on<strong>de</strong> se preten<strong>de</strong> aplicar a virtualização. Para tentar tornara técnica <strong>de</strong> virtualizar servidores uma aliada das empresas e não fazer com que ela acabegerando transtornos <strong>de</strong>snecessários para os administradores <strong>de</strong> data centers.Dentre as ferramentas vistas tivemos o <strong>de</strong>staque do BunrInTest que foi <strong>de</strong> extremaimportância, pois com ele se conseguiu gerar cargas diferentes <strong>de</strong> trabalho e ter maiorcontrole sobre o uso do hardware que estava sendo analisado. Outra ferramenta <strong>de</strong> extremaimportância foi o Performance Test, esta mais focada na <strong>análise</strong> <strong>de</strong> <strong>de</strong>sempenho do sistema enão em geração <strong>de</strong> carga, o que possibilitou a geração <strong>de</strong> resultados que avaliaram o hardware<strong>de</strong> forma a gerar uma pontuação do mesmo.Este trabalho teve como objetivo utilizar estas duas ferramentas acima citadas paragerar carga em 3 cenários com especificações <strong>de</strong> hardware diferentes entre si e avaliar osresultados gerados pela ferramenta utilizada.Dessa forma ficou claro que as ferramentas testadas nos três cenários apresentaramresultados coerentes e que são <strong>de</strong> gran<strong>de</strong> utilida<strong>de</strong> para a avaliação do hardware virtual,po<strong>de</strong>ndo ser aplicada durante a avaliação <strong>de</strong> <strong>de</strong>sempenho <strong>de</strong> um servidor virtual assim como<strong>de</strong> um servidor físico. A medida que a pratica <strong>de</strong> virtualização ganha mais força surgenecessida<strong>de</strong> <strong>de</strong> mais avaliações do hardware.Dando continuida<strong>de</strong> a este estudo, surgem algumas outras i<strong>de</strong>ias <strong>de</strong> trabalhosrelacionados que po<strong>de</strong>m ser <strong>de</strong>senvolvidos: 1) Trabalhar com outras variáveis <strong>de</strong> hardware a


78serem analisadas; 2) Utilizar outras bases <strong>de</strong> virtualização, como por exemplo, XenServer; 3)Aplicar outras ferramentas para a execução dos testes <strong>de</strong> benchmark; 4) Executar testes emsistemas operacionais Linux e Windows; 5) Executar testes <strong>de</strong> benchmark em duas máquinasvirtuais sobre o mesmo hardware ao mesmo tempo.


REFERÊNCIAS BIBLIOGRÁFICASBenchmarking e Boas Práticas; Conceito; disponível em < http://www.iapmei.pt/iapmei-bmkartigo-01.php?temaid=2&subtemaid=2&PHPSESSID=1558646a41f928dd36b383ece864147c >Acesso em junho <strong>de</strong> 2012.DUARTE, Otto ; Virtualização - VMWare e Xen; Disponível em: Acesso em abril <strong>de</strong> 2012.FERREIRA, Rodrigo da Silva. Virtualização <strong>de</strong> Sistemas Operacionais.< http://herculesnow.com/2010/07/02/virtualizacao-<strong>de</strong>-sistemas-operacionais/>Acesso em agosto <strong>de</strong> 2011HP. O QUE É VIRTUALIZAÇÃO E O QUE ELA PODE FAZER PELA MINHAEMPRESA? Disponível em: . Acesso em 8 <strong>de</strong> agosto<strong>de</strong> 2011.Jain,Raj; A Surveyof Hardware Performance Analysis Tools. Acesso em 01 <strong>de</strong> outubro <strong>de</strong>2011.KORELC, Justin; ANALYZIN PERFORMANCE IN VIRTUALIZED ENVIROMENTS,disponível em: < http://searchservervirtualization.techtarget.com/tip/Analyzing-performancein-virtualized-environments> .Acesso em 9 <strong>de</strong> setembro <strong>de</strong> 2011.Laurindo, Fernando José Barbin; BENCHMARKING DE ESTRATÉGIAS DETECNOLOGIA DA INFORMAÇÃO; MENASC, Daniel A.; VIRTUALIZATION: CONCEPTS, APPLICATIONS, ANDPERFORMANCE MODELING. Acesso nove <strong>de</strong> setembro <strong>de</strong> 2011.MATHEWS, Jeanna Neefe et al; QUANTIFYING THE PERFORMANCE ISOLATIONPROPERTIES OF VIRTUALIZATION SYSTEMS. Acesso em 09 <strong>de</strong> setembro <strong>de</strong> 2011.MATHEWS, Jeanna N. et al. Executando o Xen: Um Guia Prático para a Arte daVirtualização. Rio <strong>de</strong> Janeiro: Alta Books, 2008. 584 p.PassMark; BurnInTest usersgui<strong>de</strong>; disponível em . Acesso em 06 <strong>de</strong> março <strong>de</strong>2012.PassMark; Using BurnInTest on a System With no Operating System installed: MicrosoftWindows Pre-install Environment.; disponível em . Acesso em 06 <strong>de</strong> março <strong>de</strong> 2012.PassMark; PassMark PerformanceTest; disponível em . Acesso em 06 <strong>de</strong> março <strong>de</strong> 2012.


80Rozenfeld, Henrique; Benchmarking; disponível em SILVA, D. E. et al. Virtualização Como Alternativa Para Ambientes <strong>de</strong> Servidores.2008. 85 p. Acesso em abril <strong>de</strong> 2012TICKOO, Omesh; MODELING VIRTUAL MACHINE PERFORMANCE: CHALLANGESAND APPROACHES. Acesso em 08 <strong>de</strong> agosto <strong>de</strong> 2011.VMware, HISTÓRIA DA VIRTUALIZAÇÃO. Disponível em: . Acesso em 08<strong>de</strong> agosto <strong>de</strong> 2011.VMware; PERFORMANCE COMPARISON OF VIRTUAL NETWORK DEVICES,disponívelemXEN SOURCE, Projeto Open Source <strong>de</strong> virtualização. < http://www.xen.org/ >. Acesso em08 <strong>de</strong> agosto <strong>de</strong> 2011.VMware; VMware VMmark® Benchmarking Gui<strong>de</strong> disponível em . Acesso em 15 <strong>de</strong> novembro <strong>de</strong>2011.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!