• Nenhum resultado encontrado

Análise Comparativa entre Sistemas Operacionais Virtualizados

N/A
N/A
Protected

Academic year: 2021

Share "Análise Comparativa entre Sistemas Operacionais Virtualizados"

Copied!
29
0
0

Texto

(1)

1

FACULDADE CAMPO LIMPO PAULISTA

BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO

Trabalho de Diplomação

Felipe Machado da Costa de Andrade – 061247 Andre Marcos Silva (Orientador)

Trabalho de Diplomação

Análise Comparativa entre

Sistemas Operacionais

Virtualizados

(2)

2

FACULDADE CAMPO LIMPO PAULISTA

BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO

Análise Comparativa entre Sistemas Operacionais

Virtualizados

Trabalho submetido à Coordenação de Ciência da Computação da Faculdade Campo Limpo Paulista como requisito parcial para obtenção do título de Bacharel em Ciência da Computação.

Campo Limpo Pta. (SP), 2 de junho de 2012.

Banca examinadora

Prof. M.Sc. Andre Marcos Silva (Orientador) Prof. Dr. Luis Mariano del Val Cura

(3)

3

FACULDADE CAMPO LIMPO PAULISTA

BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO

Análise Comparativa entre Sistemas Operacionais

Virtualizados

Agradecimentos

Agradeço a Deus acima de tudo, à minha família que em todo tempo me deu apoio nas horas difíceis, aos meus pais que sempre acreditaram e investiram em meus estudos, ao meu orientador Mestre André Marcos Silva pelo tempo disponibilizado entre as suas atividades, e a todos que me ajudaram nesta difícil caminhada.

(4)

4

FACULDADE CAMPO LIMPO PAULISTA

BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO

Análise Comparativa entre Sistemas Operacionais

Virtualizados

RESUMO

Este trabalho busca demonstrar e explorar a virtualização em um ambiente próprio. Considerando essa proposta, será realizado um estudo da tecnologia e apresentado os resultados comparativos entre duas das principais soluções de mercado disponíveis. Para isto, serão necessários testes em sistemas com e sem virtualização, o que possibilitará a análise de desempenho de escrita e leitura em disco, processamento e utilização de memória. Assim, estes testes, determinarão se a tecnologia de virtualização realmente é vantajosa ou não quando aplicada a um domínio específico.

(5)

5

FACULDADE CAMPO LIMPO PAULISTA

BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO

Análise Comparativa entre Sistemas Operacionais

Virtualizados

SUMÁRIO 1. INTRODUÇÃO ... 6 2. PROBLEMA ... 6 3. OBJETIVO ... 7 4. METODOLOGIA APLICADA ... 7 5. REFERÊNCIAL TEÓRICO ... 8 Virtualização ... 8 Máquina Virtual ... 8

Monitor de máquina virtual ... 9

Tipos de Virtualização ... 10

Máquinas virtuais Tipo I ... 10

Máquinas virtuais Tipo II ... 10

Formas de Virtualização ... 12

Aplicado ao Hardware... 12

Aplicado em Sistemas Operacional ... 13

Aplicado em linguagem de programação ... 13

Modelos de Técnica de Virtualização ... 14

Virtualização Total ... 14

Paravirtualização ... 16

Recompilação Dinâmica ... 16

Vantagens e desvantagens da Virtualização ... 17

Vantagens... 17

Desvantagens ... 18

6. DESENVOLVIMENTO DO TRABALHO ... 19

Preparação do Ambiente não Virtualizado ... 19

Apresentação do Ambiente com virtualização VMware WorkStation ... 19

Apresentação do Ambiente com virtualização VMware Server ... 19

Ferramentas de Apoio Utilizadas ... 21

VMWare Workstation 7.1 ... 21

VMWare Server 2.0.2 ... 22

7. RESULTADOS OBTIDOS ... 22

Resultados de Processamento ... 22

Resultados de Memória ... 24

Resultados de Gravação em Disco ... 25

8. CONCLUSÃO ... 27

(6)

6 1. INTRODUÇÃO

Com o objetivo de reduzir os custos de administração, manutenção e centralizar o trabalho em um ambiente, as empresas estão retomando a utilização de sistemas virtualizados. A virtualização é um sistema computacional no qual, vários sistemas operacionais são executados em um único equipamento. Assim, tem-se um único computador com várias máquinas virtuais. Cada máquina virtual é um ambiente operacional completo que se comporta como se fosse um computador independente (Liess, 2008).

Este conceito não é novo no meio computacional. Ele surgiu na década de 60 e foi implantado nos mainframes. Nesta época, os computadores eram muito grandes, caros e muitas vezes compartilhados para vários usuários. A virtualização foi criada a fim de possibilitar o melhor aproveitamento de todo o equipamento. Com a tecnologia de sistemas virtuais, era possível executar diferentes sistemas operacionais no mesmo mainframe o que acarretava na melhor exploração de todos os recursos disponíveis (Liess, 2008).

A motivação da utilização desta tecnologia naquela época era proporcionar uma utilização eficiente de todos os equipamentos, visto que eles eram de alto custo. Atualmente, o custo e a capacidade dos computadores não impactam tanto á área de informática quanto naquela época, porém os aplicativos estão mais complexos e os custos de administração estão cada vez mais altos. Apesar da tecnologia de virtualização existir a mais de cinqüenta anos, o contexto atual é totalmente diferente daquele da década de 60, a dos mainframes. No decorrer da história foram criadas diversas técnicas de virtualização, o que acaba dificultando muito a escolha da mais adequada para atender às necessidades específicas de determinado problema computacional.

Tendo em vista o cenário exposto, este trabalho busca explorar a virtualização em conjunto com sistemas operacionais. Com objetivo de realizar um estudo da tecnologia e apresentar os resultados comparativos entre as soluções disponíveis no mercado. Proporcionando determinar a usabilidade da solução.

2. PROBLEMA

A escolha de um sistema operacional pode influenciar e muito nos resultados de um projeto, considerando a perda de benefícios, como produtividade e desempenho. Um agravante para este problema é encontrado ao deparar com sistemas operacionais disponíveis para aplicar a virtualização.

(7)

7 3. OBJETIVO

Como objetivo principal, será realizado um estudo da tecnologia de virtualização através de análises comparativas quanto ao apoio a sistemas operacionais. Desta forma, pretende-se:

 Explorar a tecnologia de virtualização.

 A análise comparativa entre os sistemas operacionais.  Avaliação de ferramenta e ambientes.

4. METODOLOGIA APLICADA

Para realização dos testes serão desenvolvidas três aplicações com o objetivo de gerar dados para análise de desempenho do ambiente virtualizado e sem virtualização. Com intuito de executar as rotinas de testes serão criados dois diferentes ambientes: um ambiente sem virtualização, e outro com virtualização do tipo II aplicada. A virtualização do tipo II consiste em um sistema hospedeiro que gerencia o sistema de virtualização sobre o hardware, isso também a diferencia da virtualização de tipo I, onde não é utilizado o hospedeiro e o sistema de virtualização opera diretamente sobre o hardware.

Para facilitar o estudo comparativo, todos os ambientes utilizarão o mesmo equipamento de infraestrutura.

Para os testes, serão utilizados os sistemas operacionais Microsoft Windows Server (Microsoft Windows, 2011) e Linux Ubuntu (Ubuntu Linux, 2011), tornando possível a verificação de qual obtém melhor desempenho quando utilizado em ambientes com e sem virtualização. Nos testes com a plataforma Microsoft será utilizada o Windows Server 2003 R2 (Microsoft Windows, 2011). Para testes com Linux, a distribuição Ubuntu 11.04 (Ubuntu Linux, 2011) será utilizada.

Para testes com virtualização serão utilizados como monitor de máquina virtual o VMware WorkStation 7.1 (VMWare, 2011) e VMware Server 2.0.2 (VMWare, 2011).

(8)

8

5. REFERÊNCIAL TEÓRICO

Virtualização

Máquina Virtual

Uma VM (Virtual Machine) termo utilizado quando se trabalha com sistemas virtualizados, tem por definição um espaço dedicado com acesso ao hardware onde funciona um sistema virtual. Pode também ser entendida como uma cópia do sistema físico que pode ser manipulada de forma isolada (Laureano, 2006).

Então, as máquinas virtuais simulam um ou mais ambientes de hardware para que sistemas operacionais possam ser instalados em um único hardware físico compartilhado. Os sistemas instalados nestas máquinas virtuais têm a percepção de que estão instalados diretamente no hardware real, e desta maneira podem operar da forma convencional.

A Figura 1 exemplifica um ambiente que era muito utilizado, no qual a técnica de virtualização veio para mudar. Ele é composto por um hardware para cada tipo de serviço em uma determinada rede. Então, nota-se que é necessário: um grande espaço físico para alocar estes equipamentos; gerenciamento individual de cada máquina; grande área a ser refrigerada; e alto consumo de energia.

Figura 1 – Rede Local sem Virtualização (Adaptado de Fonte: http://img.tfd.com/cde/lan2.gif).

A Figura 2 mostra o mesmo ambiente, porém com virtualização aplicada. Nele existe um único hardware para prover todos os serviços. Neste ambiente computacional virtual existem dois tipos de sistemas operacionais: o hospedeiro e o convidado. O hospedeiro é aquele que é executado diretamente sobre o hardware físico. O

(9)

9

convidado é aquele que é executado sobre o sistema operacional hospedeiro como uma máquina virtual.

Ao contrário dos sistemas hospedeiros tradicionais, é possível manter simultaneamente vários sistemas convidados operando. Assim, sobre um único hardware é instalado um sistema operacional hospedeiro e vários sistemas operacionais convidados, onde cada um provê um serviço diferente. A quantidade de sistemas convidados é limitada pela quantidade de memória e disco disponíveis e capacidade de processamento do equipamento (Laureano, 2006).

Figura 2 – Rede Local com Virtualização (Adaptado de Fonte: http://www.vmware.com/files_inline/images/comparison_chart_01.gif).

Monitor de máquina virtual

Uma máquina virtual é um ambiente criado e gerenciado por um monitor de máquina virtual (VMM – Virtual Machine Monitor). O VMM é também conhecido como, “sistema operacional para sistemas operacionais” ou “hypervisor”.

Um VMM (Virtual Machine Monitor) pode criar uma ou mais máquinas virtuais em uma única máquina real.

Cada máquina virtual, que recebe uma cópia da máquina real, pode fornecer facilidades e recursos a uma aplicação ou mesmo a um sistema operacional

(10)

10

convidado. O sistema operacional convidado que é instalado na máquina virtual acredita estar sendo executado em um ambiente convencional com acesso direto ao

hardware.

Tipos de Virtualização

Segundo Laureano (2006), as máquinas virtuais podem ser divididas em dois tipos: Tipo I: O VMM é implementado entre os sistemas convidados e o

hardware.

 Tipo II: O VMM é implementado entre o sistema hospedeiro e o convidado.

Máquinas virtuais Tipo I

Nas máquinas virtuais do tipo I, o VMM (Virtual Machine Monitor) tem total controle do hardware e cria um ambiente de máquinas virtuais onde cada uma se comporta como se fosse uma máquina física que pode executar o seu próprio sistema operacional.

Este tipo de virtualização gera a possibilidade de diversos sistemas operacionais serem instalados no mesmo hardware e também executados simultaneamente. A Figura 3 apresenta o modelo de máquinas virtuais do tipo I.

Figura 3 – Máquina virtual do Tipo I (Laureano, 2006).

Máquinas virtuais Tipo II

Nas máquinas virtuais do tipo II, o VMM (Virtual Machine Monitor) é executado no sistema hospedeiro como um processo. Este funciona de forma muito parecida ao monitor de máquina virtual do tipo I, sendo que sua principal diferença é a existência de um sistema hospedeiro abaixo dele. Neste modelo, o monitor de máquina virtual

(11)

11

simula todas as operações que o sistema hospedeiro controlaria. A Figura 4 apresenta o modelo de máquinas virtuais do tipo II.

Figura 4 – Máquina virtual do Tipo II (Laureano, 2006).

De acordo com Laureano (2006), os modelos conceituais de máquina virtual apresentado nas Figuras 3 e 4 são utilizados como base para o desenvolvimento das ferramentas de virtualização.

Nas máquinas virtuais, um dos pontos cruciais são as operações de E/S (entrada e saída), desta forma os desenvolvedores estão constantemente buscando otimizações para aplicar nos modelos de máquinas virtuais existentes.

Um exemplo de otimização para VMM’s do tipo I é o sistema convidado acessar diretamente o hardware. Este acesso se dá pela implementação de modificações do no núcleo do sistema convidado e no VMM. A Figura 5 apresenta um exemplo de otimização para máquinas do tipo I.

(12)

12

Em VMM’s do tipo II, existem três otimizações disponíveis.  O sistema convidado acessa diretamente o hardware.

 O sistema convidado acessa diretamente o sistema hospedeiro.  O VMM acessa diretamente o hardware.

Formas de Virtualização

Conforme apresentado anteriormente, a virtualização é a capacidade de fazer com que os recursos de um computador possam ser divididos em múltiplos ambientes de execução.

Os VMM’s (Virtual Machine Monitor) são utilizados para fazer a separação dos recursos, o isolamento destes e, por fim, a criação do ambiente final para que a aplicação possa rodar de forma transparente, imaginando ser ela a detentora dos recursos de hardware.

Existem três formas diferentes de virtualização: a virtualização do hardware, a virtualização do sistema operacional e por fim a virtualização das linguagens de programação, todas podendo ser aplicadas tanto para máquinas virtuais do tipo I quando do tipo II.

Aplicado ao Hardware

Segundo Laureano (2006), a virtualização exporta o sistema físico como uma abstração do hardware. Neste modelo, qualquer software escrito para a arquitetura x86 irá funcionar. Na figura 6 o exemplo da virtualização do hardware é

apresentado.

Figura 6 – Exemplo de virtualização do hardware (Laureano, 2006).

(13)

13

O sistema de virtualização cria uma nova camada de hardware entre o sistema operacional convidado e ele. Desta forma o sistema operacional tem a impressão de que está instalado diretamente no hardware sem a interferência de outro sistema.

Aplicado em Sistemas Operacional

Segundo Laureano (2006), a virtualização exporta um sistema operacional como abstração de um sistema específico. A máquina virtual executa aplicações de um sistema operacional específico. Na Figura 7 o exemplo da virtualização do sistema operacional é apresentado.

Figura 7 – Exemplo de virtualização do sistema operacional (Laureano, 2006).

Este modelo de virtualização é mais conhecido em utilizações em computadores pessoais e consolidação de servidores. Nesta aplicação o sistema de virtualização fica diretamente entre o sistema operacional hospedeiro e o sistema operacional da máquina virtual.

Aplicado em linguagem de programação

Neste último modelo, a máquina virtual fica entre a aplicação e o sistema operacional. Não existe necessidade de simulação de hardware, nem tampouco de múltiplos sistemas operacionais. A camada de virtualização cria uma aplicação no topo do sistema operacional.

Máquinas virtuais desta categoria são desenvolvidas para máquinas fictícias projetadas para uma finalidade específica. Um exemplo de linguagem de programação virtualizada é o Java. O computador fictício, neste caso, é a JVM (Java Virtual Machine) instalada na máquina real para que a aplicação seja executada. Na Figura 8 é demonstrado um exemplo de virtualização de linguagem de programação.

(14)

14

Figura 8 – Exemplo virtualização da linguagem de programação (Laureano, 2006).

O sistema de virtualização exporta uma abstração para a execução dos programas escritos para determinada aplicação.

Modelos de Técnica de Virtualização

Atualmente existe uma série de técnicas desenvolvidas para a virtualização. Dentre as existentes, podem ser destacadas, são elas: paravirtualização (paravirtualization), virtualização total (total virtualization) e a recompilação dinâmica (dynamic

recompilation). Estas técnicas podem ser utilizadas tanto para máquinas virtuais do

tipo I quando do tipo II.

Virtualização Total

Segundo Laureano (2006), na virtualização total, uma estrutura completa de

hardware é virtualizada fazendo com que o sistema convidado não precise sofrer

algum tipo de alteração.

A vantagem da virtualização total encontra-se exatamente no fato de que o sistema convidado não sofrerá algum tipo de alteração. Por outro lado, o sistema virtualizado é executado de forma mais lenta e o VMM precisa implementar alternativas para que as operações privilegiadas possam ser executadas em processadores que não suportem virtualização nativamente (Laureano, 2006).

Desenvolvedores como Intel e AMD estão trabalhando arduamente em busca de aprimorar suas tecnologias existentes e criar novos modelos que atendam as exigências. Atualmente existem linhas em que os processadores estão preparados para utilização de máquinas virtuais. Na F igura 9 é apresentado um modelo de máquina virtual que utiliza a virtualização total.

(15)

15

Figura 9 – Máquina executando Virtualização Total (Adaptada de Laureano, 2006).

Como pode ser visto na figura 10, para o sistema operacional convidado não existe a necessidade de sua estrutura ser modificada, pois a tecnologia de virtualização apresenta ao sistema uma interface de hardware como se fosse a própria máquina real.

A virtualização total exige do VMM um trabalho adicional para o gerenciamento de memória e disco. Para o sistema convidado, ele está utilizando o inicio da memória, uma vez que o VMM passa esta impressão para ele.

Segundo Laureano (2006), uma máquina real possui endereçamento de memória iniciando de 0000 e indo até FFFF. O VMM reserva espaço compreendido entre 000F

e 00FF, mas o sistema convidado enxerga esse espaço como sua memória total e, portanto iniciando em 0000 e finalizando em 000F. Sempre que o sistema convidado faz algum tipo de operação envolvendo endereçamento de memória, o VMM é obrigado a traduzir estes endereços para endereços reais na memória e vice e versa. Esta tradução simultânea acaba degradando o desempenho da máquina convidada. O mesmo exemplo citado pode ser aplicado na questão do gerenciamento do disco. Sempre que o sistema convidado gera uma chamada de sistema para acesso a disco o VMM deve capturar esta chamada e traduzi-la para que seja executada.

(16)

16

Paravirtualização

De acordo com Laureano (2006), na paravirtualização, o sistema a ser virtualizado sofre modificações para que a interação com o VMM seja mais eficiente.

A paravirtualização permite que o sistema convidado consiga acessar recursos do

hardware diretamente. Este acesso é monitorado pelo VMM, que por sua vez oferece

ao sistema convidado os limites do sistema, tais como endereços de memória que podem ser utilizados e endereçamento em disco.

A principal razão para se utilizar esta técnica de virtualização é o desempenho obtido, uma vez que o acesso ao hardware diretamente elimina a necessidade da interação com o VMM como no caso dos sistemas que utilizam a virtualização total. Na paravirtualização o VMM separa uma parte do disco e da memória e informa para o sistema convidado seus limites, o próprio sistema convidado é que trabalha com estes espaços definidos, lendo, gravando ou apagando dados na memória ou nos discos da máquina. Na Figura 10 é apresentado o m odelo de uma máquina virtual que utiliza a paravirtualização.

Figura 10 – Máquina executando Paravirtualização (Adaptada de Laureano, 2006).

Recompilação Dinâmica

Na técnica de recompilação dinâmica, partes do código de uma aplicação são recompilados em tempo de utilização. Com esta compilação durante a execução, o

(17)

17

sistema pode adequar o código gerado de forma a refletir o ambiente original do programa, explorando informações que normalmente não estão disponíveis para um compilador estático tradicional (Laureano, 2006).

Um exemplo seria a otimização adaptável para executar uma representação portátil de um programa, como bytecodes de Java. Bytecode é uma espécie de codificação que traduz tudo o que foi escrito no programa para um formato que a máquina virtual do Java (JVM) entenda e seja capaz de executar. Assim, se for feito um programa em Java no Linux, ele será capaz de rodar no Windows ou em qualquer outro sistema operacional que possua a JVM instalada.

Vantagens e desvantagens da Virtualização

Para Laureano (2006), a virtualização possui características positivas e negativas, abaixo se encontra a lista respectivamente detalhada.

Vantagens

Isolamento: Essa propriedade garante que um software em execução em uma máquina virtual não acesse nem modifique outro software em execução no monitor ou em outra máquina virtual, ou seja, permite que um software seja executado na máquina virtual, em uma máquina real, ou em outras máquinas virtuais, sem que um interfira na execução do outro. Esta propriedade é muito usada para que erros de software, problemas causados por hackers ou de outra origem sejam contidos na máquina afetada, sem causar problemas para as demais máquinas.

Desempenho: Adicionar uma camada de software a um sistema pode afetar o desempenho do software que funciona na máquina virtual, mas os benefícios proporcionados pelo uso de sistemas virtuais compensam a perda de desempenho. Hardwares virtualizáveis, como as máquinas mainframe da IBM, têm uma propriedade chamada execução direta que permite que essas máquinas virtuais trabalhem com o mesmo desempenho de um sistema sendo executado diretamente em um hardware.

 Testes: As máquinas virtuais facilitam o aperfeiçoamento e testes de novos sistemas operacionais. Testes podem ser feitos sem que um possível travamento venha a atrapalhar os demais sistemas ou possíveis usuários que utilizem recursos oferecidos pelas máquinas virtuais.

 Ensino: A utilização das máquinas virtuais também auxilia muito no cenário de treinamentos e práticas para o ensino de sistemas operacionais e programação.

(18)

18

Multiplataforma: A tecnologia de virtualização oferece a capacidade de rodar múltiplos sistemas operacionais em uma determinada máquina simultaneamente.

 Simulação: Podem-se utilizar as máquinas virtuais para simular configuração e situações diferentes do mundo real, como, por exemplo, acréscimo de memória ou outros dispositivos de E/S antes de aplicar as modificações nos hardwares de produção.

 Custo: Com a virtualização acredita-se que possa diminuir consideravelmente o custo com a aquisição de hardwares para atender às necessidades das empresas. Ela possibilita o uso da consolidação de servidores e desta maneira é possível rodar diversos serviços diferentes em múltiplos sistemas que por sua vez utilizam diferentes máquinas virtuais dentro de uma máquina real. Este estudo prova se tecnicamente este recurso é viável.

 Administração: Com a tecnologia de virtualização, os sistemas podem ser mais facilmente gerenciados e administrados uma vez que estão confinados em um único local. Outra facilidade existente é a questão de restauração de uma máquina em caso de desastre. Pode-se fazer backup de uma determinada máquina virtual inteira e caso ela venha a ser danificada, basta, em poucos minutos, restaurar a imagem no VMM e voltar a trabalhar como se nada houvesse acontecido.

Desvantagens

 Diversidade de equipamentos: Como existe uma grande quantidade de equipamentos disponíveis, torna-se praticamente impossível aos programadores desenvolverem aplicações capazes de gerenciar todos os tipos de hardwares existentes, pois, isto exigiria um esforço sobre-humano.

Preexistência de softwares: Ao contrário dos mainframes, os desktops e laptops geralmente já vêm com o sistema operacional instalado e pré-configurado na estação. Neste tipo de ambiente é de extrema importância que o usuário possa utilizar as máquinas virtuais, e sem perder a capacidade de trabalhar com seu sistema hospedeiro sem diferenças significativas.

 Custo de processo: Há informações de que em um sistema que hospeda máquinas virtuais, o custo do processo pode ser elevadíssimo podendo chegar a até 50% a mais do que em plataformas sem a virtualização aplicada.

(19)

19 6. DESENVOLVIMENTO DO TRABALHO Preparação do Ambiente não Virtualizado

No primeiro ambiente a virtualização não está presente. O equipamento foi formatado e nele instalado o Windows Server 2003 R2 (Microsoft Windows, 2011).

Os testes de desempenho de processador, alocação de memória e gravação em disco foram aplicados e os resultados adquiridos, armazenados para análise.

Depois de finalizado o teste com a plataforma Windows, o equipamento foi formatado e nele instalado o sistema Ubuntu 11.04 (Ubuntu Linux, 2011). Para o ambiente Linux os mesmos aplicativos já mencionados foram utilizados para execução dos testes. Os resultados foram armazenados para análise.

Apresentação do Ambiente com virtualização VMware WorkStation Na segunda bateria de testes, o equipamento foi formatado e nele instalado o sistema operacional Windows Server 2003 R2 (Microsoft Windows, 2011). Nesta fase, este sistema foi utilizado como hospedeiro para a virtualização do tipo II na ferramenta VMware WorkStation (VMWare, 2011).

Depois de configurado o VMM (Virtual Machine Monitor) no hospedeiro, duas máquinas virtuais foram criadas. Uma hospedando um segundo sistema operacional Windows Server 2003 R2 (Microsoft Windows, 2011) e outra o sistema Ubuntu 11.04 (Ubuntu Linux, 2011). Os testes já mencionados anteriormente foram aplicados nas máquinas virtuais existentes. Com os testes finalizados no Windows Server como hospedeiro o equipamento foi formatado e nele instalado o Ubuntu 11.04 (Ubuntu Linux, 2011), para que a segunda bateria de testes fosse aplicada nele, como hospedeiro.

Da mesma forma que no Windows, foi realizado no Ubuntu a criação de duas máquinas virtuais, uma com Windows Server 2003 R2 (Microsoft Windows, 2011) e a outra com Ubuntu 11.04 (Ubuntu Linux, 2011). Todos os dados resultantes dos testes foram armazenados para análise.

Apresentação do Ambiente com virtualização VMware Server

A terceira bateria de testes envolve a mesma rotina de virtualização da seção anterior, mas agora utilizando a ferramenta VMware Server (VMWare, 2011) como VMM (Virtual Machine Monitor).

O equipamento foi formatado e nele instalado o sistema operacional Windows Server 2003 R2 (Microsoft Windows, 2011). Depois de configurado o VMM (Virtual

(20)

20

hospedando um segundo sistema operacional Windows Server 2003 R2 (Microsoft Windows, 2011) e outra o sistema Ubuntu 11.04 (Ubuntu Linux, 2011). Os testes já mencionados anteriormente foram aplicados nas máquinas virtuais existentes. Com os testes finalizados no Windows como hospedeiro o equipamento foi formatado e nele instalado o Ubuntu 11.04 (Ubuntu Linux, 2011) para que a segunda bateria de testes fosse aplicada nele, como hospedeiro.

Da mesma forma que no Windows, no Ubuntu foram criadas duas máquinas virtuais, uma com Windows Server 2003 R2 (Microsoft Windows, 2011) e a outra com um segundo Ubuntu 11.04 (Ubuntu Linux, 2011). Todos os dados resultantes dos testes foram armazenados para análise.

A Figura 11 apresenta graficamente os ambientes de testes descritos:

(21)

21

Nos testes com sistema operacional Windows Server 2003 R2 (Microsoft Windows, 2011) foram utilizados os recursos, de logs e alertas de desempenho, ambos nativos do próprio sistema operacional. Para testes na plataforma Linux foi utilizado o Multi

Router Traffic Grapher (MRTG). Também analises comparativa de execução versus

tempo em que foi executado. Com propósito de auxiliar na coleta de dados de desempenho entre os ambientes.

Ferramentas de Apoio Utilizadas

O computador disponível para efetuar testes foi um AMD Atlhon 64 Processor 3200+ (2.20Ghz), 2,00GB RAM; 160 GB de espaço em disco.

Nos testes onde foi utilizado o recurso de virtualização, o equipamento passou a ter a quantidade de memória RAM alterada, tendo 512MB e disponível em disco 20GB cada máquina virtual devido à necessidade das máquinas virtuais instaladas sobre os VMM’s terem a mesma configuração e características de hardware em todos os testes, facilitando a comparação e análise dos dados.

VMWare Workstation 7.1

Segundo Craig Liess (2008), administrador de servidores da empresa VMWare, o VMware Workstation é um software padrão ouro em virtualização para computadores

desktops e laptops. Ele permite que usuários executem diversos sistemas operacionais

em um simples computador pessoal.

Com a ferramenta, os usuários podem facilmente trocar de um ambiente de computação para outro sem a necessidade de reiniciar seus sistemas, efetuar a troca de discos rígidos nem tampouco paralisar suas tarefas em andamento.

A ferramenta é capaz de oferecer a redução dos custos com investimento de

hardware, tempo com a formatação e reinstalação dos sistemas, maximizar a

utilização dos recursos de hardware e reduzir o risco de paralisação dos sistemas em caso de erros causados por atualizações de hardware e softwares não testados previamente, etc.

De acordo com Craig Liess (2008), o software de virtualização VMWare Workstation mapeia recursos físicos de hardware para recursos de máquinas virtuais, desta forma cada máquina virtual é equipada com sua própria CPU, memória, discos e dispositivos de rede. As máquinas virtuais são uma réplica exata de uma máquina x86 e são capazes de executar muitos dos sistemas Windows, Linux e Novell tanto para servidores quanto para desktops.

(22)

22

VMWare Server 2.0.2

Para Craig Liess (2008), o VMWare Server permite o particionamento de um servidor em múltiplas máquinas virtuais. O VMWare Server é um sistema robusto e ao mesmo tempo fácil de ser utilizado por novos usuários da tecnologia.

Dentre os diversos benefícios que a ferramenta possui, Craig Liess (2008) destaca a adição de novos servidores em minutos sem a necessidade de aquisição de novos

hardwares, considerando a execução de sistemas Windows, Linux, Solaris e Netware

em um mesmo servidor físico; melhora na utilização do processador; gerenciamento centralizado dos sistemas instalados, etc.

Segundo Craig Liess (2008), o VMWare Server é instalado e executado como uma aplicação sobre um sistema hospedeiro, podendo este ser um sistema Windows ou Linux. O sistema de virtualização particiona o hardware em camadas, criando a possibilidade de múltiplas máquinas virtuais serem instaladas e executadas simultaneamente em um único servidor físico. O VMWare Server isola cada uma das máquinas do seu hospedeiro e das demais máquinas virtuais, fazendo com que as máquinas com problemas não afetem as demais instaladas sobre o monitor de máquina virtual.

7. RESULTADOS OBTIDOS Resultados de Processamento

Para apresentar os resultados realizados sobre o processamento, foi criada uma tabela para facilitar a visualização dos dados:

Tabela 1 – Análise de Tempo de Processador x Ambiente de Teste

A Tabela 1 apresenta os resultados obtidos quando os diversos ambientes foram submetidos ao teste de processamento.

Como pode ser verificado, quando utilizada a tecnologia de Virtualização VMWare Workstation (VMWare, 2011) sobre um hospedeiro Windows Server 2003 R2

(23)

23

(Microsoft Windows, 2011), e sobre este ambiente uma máquina virtual com sistema operacional Ubuntu 11.04 (Ubuntu Linux, 2011), o melhor tempo de processamento é atingido. Encontramos este melhor tempo também quando realizado o teste sobre o sistema operacional hospedeiro Ubuntu 11.04 (Ubuntu Linux, 2011) sem virtualização aplicada. Note que a velocidade de processamento foi à mesma obtida com o teste aplicado diretamente no sistema operacional hospedeiro. Encontra-se evidência que não houve maior eficiência do sistema de virtualização em questão as requisições de processamento. Neste cenário obtido, pode-se constatar que não se torna viável a utilização da tecnologia de virtualização, lembrando que o que está sendo considerado e avaliado é o melhor (menor) tempo encontrado.

Há apenas uma observação que se faz necessária, é importante notar que múltiplos ambientes devem ser testados antes da escolha da plataforma. A tabela apresenta ambientes aonde o tempo de processamento chegou a ser o dobro do que o menor tempo obtido em um ambiente virtualizado como exemplo no VMWare Server (VMWare, 2011).

O Gráfico 1 apresenta os dados da Tabela 1 facilitando sua visualização.

(24)

24 Resultados de Memória

Para apresentar os resultados da analise realizada sobre alocação de memória, foi criada uma tabela para facilitar a visualização dos dados.

Tabela 2 – Análise de Alocação de Memória x Ambiente de Teste

A Tabela 2 apresenta os resultados obtidos quando os diversos ambientes foram submetidos ao teste de alocação de memória.

Quando utilizada a tecnologia de virtualização VMWare Workstation (VMWare, 2011) e VMWare Server (VMWare, 2011) sobre um hospedeiro Windows Server 2003 R2 (Microsoft Windows, 2011), e sobre este ambiente uma máquina virtual com sistema operacional Ubuntu 11.04 (Ubuntu Linux, 2011), o melhor tempo de alocação de memória é atingido. Note que o tempo de alocação foi inferior ao tempo obtido com o teste aplicado diretamente no sistema operacional hospedeiro. Isto indica que as modificações que o sistema de virtualização efetua, fazem com que o sistema convidado gerencie com maior eficiência a alocação e gerenciamento de memória. Pode-se constatar que é viável a utilização da tecnologia de virtualização. Como no caso do ambiente de teste de processamento, há apenas uma observação, é importante notar que múltiplos ambientes devem ser testados antes da escolha da plataforma. A tabela apresenta ambientes aonde o tempo de alocação de memória chegou a ser consideravelmente maior do que o menor tempo obtido com um ambiente sem virtualização.

(25)

25

O Gráfico 2 apresenta os dados da tabela 2 facilitando sua visualização

Gráfico 2 – Análise de Alocação de Memória x Ambiente de Teste Resultados de Gravação em Disco

Para apresentar os resultados da analise realizada sobre a gravação em disco, foi criada uma tabela para facilitar a visualização dos dados.

Tabela 3 – Análise de Gravação em Disco x Ambiente de Teste

A Tabela 3 apresenta os resultados obtidos quando os diversos ambientes foram submetidos ao teste de gravação em disco.

Apenas para reforçar, quando a máquina que estava sendo submetida aos testes possuía o sistema Ubuntu 11.04 (Ubuntu Linux, 2011) instalado, a partição para gravação do arquivo de teste era EXT3, quando o sistema Windows Server 2003 R2 (Microsoft Windows, 2011) estava sendo testado, a partição era NTFS. Isto para que

(26)

26

os sistemas operacionais não precisassem utilizar nenhum artifício para ler e escrever na partição não nativa do sistema.

Como pode ser verificado, quando utilizada a tecnologia de virtualização VMWare Workstation (VMWare, 2011) e VMWare Server (VMWare, 2011), sobre um hospedeiro Windows Server 2003 R2 (Microsoft Windows, 2011), e sobre este ambiente uma máquina virtual com sistema operacional Windows Server 2003 R2 (Microsoft Windows, 2011), foi possível igualar o tempo mais baixo de gravação em disco. Neste cenário obtido, pode-se constatar que é viável a utilização da tecnologia de virtualização.

Como no caso dos dois primeiros ambientes de teste já apresentados, há apenas uma observação que se faz necessária, é importante notar que múltiplos ambientes devem ser testados antes da escolha da plataforma. A tabela apresenta ambientes onde o tempo de gravação em disco chegou a ser consideravelmente maior do que o menor tempo obtido com um ambiente virtualizado porém com outro sistema operacional como hospedeiro.

Um ponto importante e que merece destaque é que, em todos os casos (tempo de processamento, alocação de memória e gravação em disco) a escolha equivocada do ambiente pode trazer consequências que influenciam ao ambiente de produção que utiliza a tecnologia de virtualização.

O Gráfico 3 apresenta os dados da tabela 3 facilitando sua visualização.

(27)

27 8. CONCLUSÃO

Antes de serem apresentadas as conclusões obtidas através dos resultados dos ambientes de testes deste trabalho, é preciso relembrar e reafirmar alguns pontos que foram apresentados no decorrer deste tema.

Em primeiro lugar, vale salientar que este trabalho procurou se assemelhar no máximo possível aos ambientes de trabalho no uso cotidiano da ferramenta de virtualização.

As comparações envolveram ambiente onde o sistema operacional trabalhava diretamente sobre o hardware, efetuando suas operações de E/S e requisições de processador sem a intervenção de nenhuma ferramenta intermediária; e ambientes onde máquinas virtuais, com seus componentes de hardware e sistema operacional, foram criadas sobre um hospedeiro.

Em relação à tecnologia de virtualização escolhida, o trabalho utilizou duas diferentes ferramentas do fabricante VMware, sendo a primeira VMWare WorkStation 7.1 (VMWare, 2011) e a segunda VMWare Server 2.0.2 (VMWare, 2011).

Um dos principais objetivos deste trabalho será responder se compensa ou não utilizar a tecnologia de virtualização, e graças aos testes, foi possível chegar a uma conclusão satisfatória. Para apresentá-la, alguns pontos são importantes e merecem destaque.

Neste trabalho foram apresentadas algumas vantagens e desvantagens existentes em relação à utilização da tecnologia de virtualização, nem todas serão reapresentadas, apenas as de maior relevância.

Abaixo são apresentadas algumas das vantagens mencionadas neste trabalho e inseridas novas informações.

Isolamento - Realmente, no desenvolvimento deste trabalho, foi possível constatar que a questão de isolamento entre as máquinas virtuais é uma grande vantagem da tecnologia. Quando são criadas as máquinas virtuais, é necessário destinar “fatias” de recursos de hardware para que estas máquinas possam executar suas tarefas. Quando estes recursos são destinados, uma determinada máquina virtual não consegue enxergar os recursos das demais. Um exemplo que pode ser apresentado foi no caso de uma das máquinas virtuais, no decorrer dos testes, precisar ser formatada devido a um problema no sistema operacional. Apenas a máquina com o erro foi afetada, as demais permaneceram trabalhando de forma inalterada.

O bom desempenho – Nos testes executados houve uma grande variação de desempenho dependendo do ambiente em que se aplicavam os testes. Porém, de modo geral, o desempenho das máquinas virtuais não é inferior aos sistemas

(28)

28

executados diretamente sobre o hardware, em alguns casos a tecnologia consegue até superar a capacidade de processamento.

Multiplataforma – Realmente a facilidade de executar diferentes sistemas operacionais sobre um hospedeiro está presente nas tecnologias de virtualização. Nos testes aplicados foi utilizada a plataforma Linux sobre Windows e vice versa, mostrando assim que não há incompatibilidade. Em contrapartida, pode-se notar que determinados sistemas trabalham melhor como hospedeiros e outros como clientes, e é neste ponto que se devem concentrar os testes para a boa montagem do ambiente de produção.

Custo processo – No desenvolvimento deste trabalho foi possível notar que algumas implementações que são feitas pela tecnologia de virtualização, acabam melhorando a capacidade de o processador executar suas tarefas. Pode-se ver em alguns campos das tabelas apresentadas que algumas vezes a capacidade de processamento da máquina virtual foi superior ao processamento do sistema operacional executado diretamente sobre o hardware. Sendo assim, pode-se dizer que esta desvantagem está diretamente associada ao tipo de ambiente criado.

Concluindo, o ambiente de virtualização realmente voltou para ficar. Com ambientes bem montados, com testes bem definidos e aplicados é possível alcançar cenários onde o processamento, alocação de memória e gravação em disco se aproxima de um ambiente onde o sistema opera diretamente sobre o hardware, sendo que em alguns destes quesitos, pode-se obter melhor resultado no ambiente virtualizado.

Se um hardware for bem desenhado, este pode perfeitamente atender múltiplas máquinas virtuais. Com isso o máximo do equipamento será extraído, haverá redução no custo de energia elétrica, administração do ambiente, infraestrutura de rede, mão de obra especializada, espaço físico necessário, etc.

Com base empírica, em relação à questão: A virtualização está sendo adotada por ser realmente vantajosa ou apenas porque todos a estão utilizando. A resposta é afirmar que a virtualização é realmente vantajosa, a base para esta resposta foi conquistada durante a elaboração e desenvolvimento deste trabalho.

9. REFERÊNCIAS BIBLIOGRÁFICAS

CARISSIMI, A. (2009). Virtualização: Princípios Básicos e Aplicações. ERAD, SBC, 2009.

FIGUEIREDO, et al. (2005). Resource Virtualization Renaissance. IEEE. 2005, p. 28-31.

LAUREANO, M. (2006). Máquinas Virtuais e Emuladores: Conceitos, Técnicas e

(29)

29

LAUREANO, M. (2011). Sistemas Operacionais. [on-line]. Disponível em “http://www.mlaureano.org/ensino/sistemas-operacionais/”. Acessado em Março de 2011.

LIESS, C. (2008). VMware Workstation The Leading Desktop Virtualization

Software. VMware Inc, 2008.

LIESS, C. (2008). VMware Server Free Virtualization for Windows and Linux

Servers. VMware Inc, 2008.

MAZIERO, C. (2012). Máquinas Virtuais de Processo. [on-line]. Disponível em “http://dainf.ct.utfpr.edu.br/~maziero/doku.php/so:livro_de_sistemas_operacionais”. Acessado em Março de 2012.

Microsoft Windows, (2011). Página de Download Center da Microsoft. [on-line]. Disponível em “http://www.microsoft.com/en-us/download”. Acessado em Junho de 2011.

NICHOLS, S. (2002). New Approach to Virtualization Is a Lightweight. USENIX Annual Technical Conference. 2002.

ROSENBLUM, et al. (2005). Virtual machine monitors: current technology and

future trends. IEEE Computer Magazine 2005, v. 38, n. 5, p. 39-47.

SMITH, J. NAIR, R. (2005). The Architecture of Virtual Machines. IEEE. 2005, p. 32-38.

SEETHARAMAN, S. MURTHY, K. (2006). Test Optimization Using Software

Virtualization. IEEE. 2006, v. 23, p. 66-69.

TANENBAUM, A. (2003). Sistemas Operacionais Modernos. São Paulo: Prentice Hall do Brasil, 2003, 2.ed.

Ubuntu Linux, (2011). Página de Download do Ubuntu. [on-line]. Disponível em “http://www.ubuntu.com/download”. Acessado em Junho de 2011.

VMWare, (2011). Página de Suporte e Download do VMware. [on-line]. Disponível em “http://www.vmware.com/br/support”. Acessado em Junho de 2011.

VMWARE, INC. (2012). VMware Documentation. [on-line]. Disponível em “http://www.vmware.com/support/pubs”. Acessado em Fevereiro de 2012.

Referências

Documentos relacionados

MARIA CHRISTINA DE MEDEIROS NUNES MARIA CREUZA BEZERRA DE OLIVEIRA MARIA CRISTINA BALBINO RIBEIRO CABRAL MARIA CRISTINA CABRAL NASCIMENTO MARIA CRISTINA DE SOUZA PEREIRA PINTO

José Antônio Costabeber (NEA) reúne professores, técnicos e estudantes com o intuito de discutir e promover a Agroecologia, enquanto campo de conhecimento.. Com o intuito de

5.1 O Processo Seletivo 2015 é classificatório em cada data do respectivo concurso. 5.3 A classificação dos candidatos será feita por opção, obedecendo à ordem

fenômeno da educação profissional desenvolvida no ambiente do Instituto Federal para descrever como a interação entre biblioteca e docente propicia

Hoje. Já morou em países como Holanda, Bolívia e Argentina. Em 2007, publicou seu primeiro livro, Rilke Shake, já traduzido para inglês, francês, es- panhol e alemão. Fez parte

Classificação Fornecedor lance/proposta (R$) Valor do último Percentual de economia sobre o preço de referência(%) 1 19.876.529/0001-00 - AMMER COMERCIO DE PRODUTOS QUIMICOS DO BRASIL

Também observamos associações com variáveis nunca antes relatadas, como o maior risco de óbito por DECH para indivíduos com intervalo mais prolongado entre o diagnóstico de

Destacar a importância de coleções têxteis como patrimônio cultural e histórico, para as gerações atuais e futuras de nossa sociedade; Estudar a conservação preventiva