mÁrcio da silva klauck - faculdade online - esab · virtualizaÇÃo de sistemas: implementação...

65
ESCOLA SUPERIOR ABERTA DO BRASIL – ESAB CURSO DE REDES DE COMPUTADORES MÁRCIO DA SILVA KLAUCK VIRTUALIZAÇÃO DE SISTEMAS: Implementação com o VMware no Ambiente Servidor do Frigorífico Excelência VILA VELHA – ES 2008

Upload: vuongtram

Post on 10-Nov-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

ESCOLA SUPERIOR ABERTA DO BRASIL – ESAB CURSO DE REDES DE COMPUTADORES

MÁRCIO DA SILVA KLAUCK

VIRTUALIZAÇÃO DE SISTEMAS: Implementação com o VMware no Ambiente Servidor do Frigorífico Excelência

VILA VELHA – ES

2008

MÁRCIO DA SILVA KLAUCK

VIRTUALIZAÇÃO DE SISTEMAS: Implementação com o VMware no Ambiente Servidor do Frigorífico Excelência

Monografia apresentada à ESAB-Escola Superior Aberta do Brasil, sob a orientação do Prof. Dr. Jaime Roy Doxsey, para conclusão do Curso de Pós-Graduação Lato Sensu em Redes de Computadores.

VILA VELHA – ES 2008

MÁRCIO DA SILVA KLAUCK

VIRTUALIZAÇÃO DE SISTEMAS: Implementação com o VMware no Ambiente Servidor do Frigorífico Excelência

Aprovado em____ de ____________ de 200__.

________________________________

________________________________

________________________________

VILA VELHA – ES

2008

Dedico a Deus por me dar forças, e ser meu guia

durante toda esta trajetória...

Aos meus pais pelo incentivo e apoio continuo...

A minha esposa Cristiane por compreender os

diversos momentos em que tive de abdicar dela

o tempo necessário para os estudos e

desenvolvimento desta...

AGRADECIMENTO

A ESAB por oportunizar de forma competente a

continuidade de nossos estudos.

Ao meu Orientador, aos colegas de trabalho

Anderson e Douglas, por de uma forma ou de

outra terem partilhado conhecimento

possibilitando o desenvolvimento desta.

A empresa Intercoop - Frigorífico Excelência por

incentivar aos seus colaboradores quanto a

importância da continuidade dos estudos.

RESUMO

No cotidiano atual das empresas, figura a filosofia da alta produtividade com grande economia, sendo que o setor de TI (tecnologia da informação) se depara com o “enigma” de investir e ao mesmo tempo economizar, ou seja, oferecer sempre as melhores tecnologias, economizando ao máximo. Este cenário crítico impõe a busca por tecnologias alternativas capazes de suprir as necessidades quanto a desempenho e produtividade. O que tornou oportuno a utilização da tecnologia de virtualização, a qual permite ao usuário de computador instalar e usar simultaneamente mais de um sistema operacional na mesma máquina, gerando mais produtividade ao ambiente, com menos gastos e investimentos em manutenção e equipamentos. Além dos tipos de virtualização se fez importante o estudo sobre outras tecnologias como a paravirtualização, emulação e a abstração, pois possuem atuação semelhante. Foram apresentados alguns tipos de máquinas virtuais e softwares conhecidos como monitores de máquinas virtuais. Tendo como destaque o software VMware visto em suas versões. Conclui-se apresentando a implementação de sistemas virtuais com a instalação de monitores VMware e a criação de máquinas virtuais no ambiente servidor do Frigorífico excelência, bem como as vantagens, benefícios, dificuldades, desempenho e pretensões futuras quanto ao uso desta tecnologia.

LISTA DE FIGURAS

Figura 01 - Modelo de multitarefa.............................................................. 03

Figura 02 - Modelo de Virtualização.......................................................... 03

Figura 03 - Modelo de Virtualização de Hardware..................................... 05

Figura 04 – Modelo de Virtualização do Sistema Operacional................... 06

Figura 05 – Modelo de Virtualização de Linguagens de Programação...... 06

Figura 06 – Representação do monitor de máquinas virtuais do tipo I...... 11

Figura 07 – Representação do monitor de máquinas virtuais do tipo II..... 12

Figura 08 – Exemplo de abstração............................................................ 15

Figura 09 – Exemplo de virtualização........................................................ 15

Figura 10 – Representação de Virtualização total..................................... 16

Figura 11 – Representação de Paravirtualização...................................... 17

Figura 12 – Servidores que não utilizam a técnica de virtualização.......... 20

Figura 13 – Servidor utilizando a técnica de virtualização......................... 20

Figura 14 – VMware Infrastructure Web Access…………………………… 32

Figura 15 – VMware-server-console.......................................................... 32

Figura 16 – Particionamento de Servidor físico......................................... 33

Figura 17 – Opções para criação de Máquinas Virtuais............................ 39

Figura 18 – Configurações para Máquinas Virtuais................................... 39

Figura 19 – Tela inicial para download do VMware Server....................... 41

Figura 20 – Tela de cadastro VMware Server........................................... 41

Figura 21 – Tela de opção de download do VMware Player..................... 42

Figura 22 –Versões do VMware Player..................................................... 42

Figura 23 – Cadastro para liberação de download do VMware Player..... 43

Figura 24 – Inicio da instalação do VMware Server.................................. 44

Figura 25 – Progresso da instalação do VMware Server.......................... 44

Figura 26 – Contrato de licença para uso do VMware Server................... 44

Figura 27 – Local para instalação do VMware Server............................... 44

Figura 28 – Configuração de Acesso via Web para o VMware Server...... 45

Figura 29 – Criação de atalhos no VMware Server................................... 45

Figura 30 – Inicio da instalação do VMware Server.................................. 45

Figura 31 – Preparando a instalação do VMware Server.......................... 45

Figura 32 – Inicio da cópia dos arquivos do VMware Server..................... 45

Figura 33 – Finalização da cópia dos arquivos do VMware Server........... 45

Figura 34 – Número serial para o VMware Server..................................... 46

Figura 35 – Finalizando a instalação do VMware Server........................... 46

Figura 36 – Inicio da instalação do VMware Player................................... 46

Figura 37 – Preparação para instalação do VMware Player...................... 46

Figura 38 – Local de instalação do VMware Player................................... 47

Figura 39 – Progresso da instalação do VMware Player 47

Figura 40 - Finalização da instalação do VMware Player 47

Figura 41 – Mensagem de Erro 48

Figura 42 – Escolha da Opção “1” para criação de Máquinas Virtuais 49

Figura 43 – Hardware Virtual Debian 4.03 49

Figura 44 – Hardware Virtual Ubuntu 8.04 49

Figura 45 – Configuração da Placa de Rede 50

Figura 46 – Configuração do CD-ROM e Disco 50

Figura 47 – Configuração USB, portas serial e paralela 50

Figura 48 – Arquivo com a Máquina Virtual 50

SUMÁRIO

1.0 - INTRODUÇÃO 01

2.0 – VIRTUALIZAÇÃO 03

2.1 – FORMAS DE VIRTUALIZAÇÃO 05

2.1.2 – Virtualização do Hardware 05

2.1.3 – Virtualização do Sistema Operacional 06

2.1.4 – Virtualização de Linguagens de Programação 06

2.2 – BENEFÍCIOS DA VIRTUALIZAÇÃO 07

2.2.1 – Particionamento 07

2.2.2 – Isolamento 07

2.2.3 – Encapsulamento 08

2.3 – DESVANTAGENS DA VIRTUALIZAÇÃO 08

3. 0 – MÁQUINA VIRTUAL 09

3.1 – MÁQUINA REAL 10

3.2 – MONITORES DE MÁQUINAS VIRTUAIS 10

3.2.1 – Tipos de Monitores de Máquinas Virtuais 11

3.2.2 – Monitor de Máquinas virtuais clássicas ou de Tipo I 11

3.2.3 – Monitor de Máquinas virtuais Hospedadas ou de Tipo II 12

4.0 – TÉCNICAS DE EMULAÇÃO, ABSTRAÇÃO, VIRTUALIZAÇÃO TOTAL E

PARAVIRTUALIZAÇÃO 14

4.1 – EMULAÇÃO 14

4.2 – ABSTRAÇÃO 15

4.3 – VIRTUALIZAÇÃO TOTAL 15

4.4 – PARAVIRTUALIZAÇÃO 16

5.0 - POR QUE IMPLEMENTAR A VIRTUALIZAÇÃO 18

5.1 – CONSOLIDAÇÃO DE SERVIDORES 18

5.1.2 – Consolidação na forma aplicada 20

6.0 – ALGUNS SOFTWARES PARA VIRTUALIZAÇÃO 24

6.1 – VIRTUAL SERVER E VIRTUAL PC 24

6.2 – VIRTUALBOX 25

6.3 – XEN 26

6.4 – VMWARE 27

6.4.1 – VMware ESX Server 29

6.4.1.1 - Virtualização de CPU 30

6.4.1.2 - Virtualização de memória 30

6.4.1.3 - Virtualização de disco 31

6.4.1.4 - Virtualização de rede 31

6.4.2 – VMware Server 32

6.4.2.1 - Vantagens do VMware Server 34

6.4.2.2 – Desvantagens 35

6.4.3 - VMware Workstation 35

6.4.4 - VMware Player 36

6.4.5 - VMware Infrastructure 36

7.0 – A PROPOSTA DESTE TRABALHO 37

7.1 – FONTES DE PESQUISA 38

7.2 – FERRAMENTAS UTILIZADAS 38

8.0 – IMPLEMENTAÇÃO 40

8.1 – OBTENDO OS SOFTWARES WMWARE SERVER E PLAYER 40

8.2 – INSTALANDO OS SOFTWARES WMWARE SERVER E PLAYER 43

8.3 – DIFICULDADES NA INSTALAÇÃO DOS SOFTWARES 47

8.3.1 – Mudança de Estratégia 48

8.4 – CRIANDO MÁQUINAS VIRTUAIS 49

8.5 – INSTALAÇÃO DOS SISTEMAS 51

8.5.1 – Dificuldades 51

8.5.2 – Desempenho 52

8.5.3 – Benefícios 52

8.5.4 – Pretensões Futuras 53

9.0 – CONCLUSÃO 54

REFERÊNCIAS BIBLIOGRAFIAS 55

1

1.0 - INTRODUÇÃO

As primeiras máquinas virtuais surgiram no inicio dos anos 60, permitindo o

particionamento de grandes mainframes, um recurso para poucos, pois era

extremamente custoso. Após alguns anos, microcomputadores e PC’s (Personal

Computer’s) tornaram–se mais eficientes e passaram a distribuir o poder de

processamento satisfatoriamente, fazendo com que a virtualização fica-se de “lado”.

Nos anos 90, pesquisadores começaram a enxergar a virtualização como

uma alternativa a resolver alguns dos problemas associados à proliferação de

hardware mais baratos, incluindo subutilização, custos de gerenciamento e

vulnerabilidades.

A virtualização tem ganhado terreno na empresas e surge como uma ótima

forma de consolidação do parque de servidores, pois é um recurso que utilizando

softwares monitores permite a execução simultânea de múltiplas máquinas virtuais

com sistemas operacionais heterogêneos, em uma única plataforma de hardware.

Possibilitando a cada máquina virtual ter seu próprio hardware virtual (por exemplo:

memória ram, disco rígido, placa de rede, etc.), sobre um sistema operacional

existente ou mesmo diretamente no hardware físico da máquina. Através de alguns

desses softwares monitores é possível configurar e até re-configurar máquinas

virtuais, possibilitando um controle e gerenciamento total sobre os sistemas

virtualizados. Além da virtualização existem outras técnicas semelhantes, como a

paravirtualização, emulação, abstração e a própria virtualização total.

Apoiado neste contexto, este trabalho fornecer subsídios quanto ao

conhecimento sobre o conceito de virtualização, algumas formas de virtualização,

algumas vantagens, desvantagens, o que são máquinas virtuais, máquinas reais,

monitores de máquinas virtuais, tipos de monitores, por que implementar a

virtualização, a consolidação de servidores, os softwares monitores para

virtualização Virtual Server e Virtual PC, VirtualBox e VMware, além do Xen utilizado

na paravirtualização. Algumas versões do VMware com suas vantagens e

desvantagens, fechando a primeira parte do trabalho.

Na segunda parte chegamos a proposta do trabalho, onde objetiva-se

acompanhar os passos necessários para a virtualização de sistemas utilizando o

VMware no ambiente servidor do Frigorífico Excelência, bem como as fontes de

2

pesquisa utilizadas, ferramentas, os processos de instalação e aquisição das

softwares VMware Server e VMware Player, as dificuldades encontradas, a

necessidade de uma mudança de estratégia, a instalação dos sistemas, os

benefícios, o desempenho e as pretensões quanto a instalações futuras.

3

2.0 – VIRTUALIZAÇÃO

Várias pessoas confundem virtualização com multitarefa. Na multitarefa,

existe um único sistema operacional e vários programas trabalhando em paralelo.

Na virtualização você pode ter vários sistemas operacionais trabalhando em

paralelo, cada um com diversas aplicações distintas em execução. Cada sistema

operacional roda em um processador virtual, ou seja, em uma máquina virtual. É a

forma de dividir os recursos de um computador em múltiplos ambientes de

execução.

As figuras abaixo mostram o funcionamento de um sistema operacional

modelo multitarefa (figura 01) e modelo de virtualização (figura 02):

Figura 01 – Modelo de multitarefa.

Figura 02 – Modelo de Virtualização

A virtualização permite que instâncias do sistema operacional sejam

executadas simultaneamente em um único computador. É uma forma de abstrair o

hardware de um único sistema operacional, sendo a interposição do software

(máquina virtual) em várias camadas do sistema. A tecnologia de virtualização cria

uma espécie de “camada” de software capaz de acessar o hardware físico e simula-

lo, desta forma permite com que vários sistemas operacionais de diferentes

plataformas compartilhem do mesmo hardware simultaneamente.

4

A projeção de hardware e software é definida por Laureano (2006, p. 16)

como independente, pois:

Normalmente os projetistas de hardware, sistemas operacional e aplicações trabalham de forma independente (em empresas e tempos diferentes). Esses trabalhos independentes geraram, ao longo dos anos, várias plataformas operacionais diferentes (e não compatíveis entre si). (LAUREANO, 2006, p. 16)

Todos os sistemas operacionais “convidados” são gerenciados por um VMM

(Virtual Machine Monitor), também conhecido como hypervisor ou monitor. Como o

ambiente de virtualização fica entre o convidado (guest) e o hardware, consegue

controlar o uso da CPU, da memória e armazenamento pelos convidados, e até

mesmo permitir que o sistema operacional de um convidado migre de uma máquina

para outra.

Estações de trabalho virtualizadas permitem que desenvolvedores hospedem

sucessivas interações de uma pilha de software, incluído a versão de produção, em

separadas partições da mesma plataforma. Isso pode aumentar a utilização de

hardware e simplificando o ciclo de vida gerencial. Novas e atualizações de um

produto podem ser testadas na mesma plataforma de produção sem interromper o

meio produtivo, eliminando a custosa necessidade de duplicação do meio.

A virtualização muda o conceito sobre população e gerenciamento de

servidores, fornecendo mais opções que podem ajudar a diminuir custos e riscos,

melhorando a continuidade de negócios e aumentando a eficiência de TI e agilidade

de negócios.

Apesar de ver e tocar apenas um servidor físico pode-se ter vários servidores

consolidados internamente em um único hardware. Quanto à limitação ao número de

máquinas virtuais a serem instaladas em um servidor, pode-se compartilhar um

conjunto de recursos apenas até que eles se esgotem ou que as partes não

ofereçam capacidade suficiente. A única restrição para o número de máquinas

virtuais é definida pelos limites de memória, espaço em disco e poder de

processamento da CPU. Qualquer computador que espera hospedar uma ou mais

máquinas virtuais deve possuir recursos não apenas para o hospedeiro como

também para acomodar os sistemas convidados. Cabe destacar, que se o servidor

não tem grande volume de espaço em disco, não poderá oferecer aos sistemas

operacionais convidados recursos de armazenamento adequados. O mesmo vale

para as memórias e demais periféricos, se o computador hospedeiro não apresenta

5

memória RAM ou capacidade de processamento suficiente, o sistema operacional

convidado sofrerá com baixo desempenho.

2.1 – FORMAS DE VIRTUALIZAÇÃO

Para Laureano (2006), existem três formas de virtualização: a virtualização do

hardware, a virtualização do sistema operacional e a virtualização de linguagens de

programação.

2.1.2 – Virtualização do Hardware

Este tipo de virtualização simula a existência de um sistema (hardware) físico

virtual a partir de sistema (hardware) real. Este modelo foi adotado na década de

1960 para o VM/370 nos mainframes IBM, e é utilizada pelo VMware na plataforma

x86.

Figura 03 – Modelo de Virtualização de Hardware

Aplicação Aplicação

Sistema Operacional (Linux, Windows, Unix)

CPU, RAM, dispositivos de E/S - Virtual

Máquina Virtual

Sistema Operacional (Linux, Windows, Unix)

- Real

CPU, RAM, dispositivos de E/S - Real

6

2.1.3 – Virtualização do Sistema Operacional

Neste a máquina virtual roda aplicações – ou um conjunto de aplicações – de

um sistema operacional especifico. O FreeBSD Jail e o User Mode Linux utilizam

essa tecnologia.

Figura 04 – Modelo de Virtualização do Sistema Operacional

2.1.4 – Virtualização de Linguagens de Programação

Nessa categoria as máquinas virtuais atendem uma finalidade especifica, ou

seja, cria-se uma aplicação a ser executada através da máquina virtual que por sua

vez executa diretamente no sistema operacional do hardware hospedeiro. Como

exemplo de tipo de máquina virtual temos o Java e Smalltalk.

Figura 05 – Modelo de Virtualização de Linguagens de Programação

Aplicação Aplicação

Sistema Operacional (Linux, Windows, Unix)

Máquina Virtual

Sistema Operacional (Linux, Windows, Unix) - Real

CPU, RAM, dispositivos de E/S - Real

Aplicação

Sistema Operacional (Linux, Windows,

Máquina Virtual

CPU, RAM, dispositivos de E/S - Real

7

2.2 – BENEFÍCIOS DA VIRTUALIZAÇÃO

A virtualização de servidores e máquinas proporciona às empresas a

consolidação de servidores, que consiste em centralizar ou diminuir o número de

equipamentos e aplicações instaladas em cada um dos servidores de uma

organização, com o objetivo de aumentar a produtividade da infra-estrutura,

melhorar o gerenciamento do ambiente, aumentar a segurança diminuir a

manutenção e economizar em recursos humanos, físicos e financeiros.

Segundo Viana (2008) a criação de ambientes virtuais proporciona diversas

vantagens e benefícios que podem ser utilizadas na segurança de sistemas e outras

aplicações, destacando-se o Particionamento, Isolamento e o Encapsulamento.

2.2.1 - Particionamento:

- Múltiplas aplicações e sistemas operacionais podem ser executados em um

único sistema físico.

- Servidores podem ser consolidados em máquinas virtuais, escalando

arquiteturas.

- Recursos computacionais são tratados em uma política uniforme para que

sejam alocadas máquinas virtuais de maneira controlada.

Para Laureano (2006) essa propriedade garante que um software em

execução em uma máquina virtual não acesse nem modifique outro software em

execução em outra máquina virtual.

2.2.2 - Isolamento:

- Ambientes virtuais (máquinas virtuais convidadas) são completamente

isoladas da máquina hospedeira e de outras máquinas virtuais. Se um ambiente

virtual (máquina virtual) tem problemas, todas as outras não são afetadas.

8

- Dados não vazam entre ambientes virtuais e podem somente se comunicar

em conexões de rede configuradas.

Segundo Viana (2008), a camada de virtualização pode ser usada para

manipular e controlar a execução do software na máquina virtual.

2.2.3- Encapsulamento:

- Um completo ambiente de máquina virtual é salvo em um simples arquivo,

fácil de fazer backup, de ser movido e copiado.

- Padronização de hardware virtualizado é fornecida para a aplicação,

garantindo compatibilidade.

De acordo com Viana (2008), o encapsulamento fornece outra propriedade,

que é o encapsulamento de estado, que salva o estado de funcionamento atual da

máquina virtual, para posterior restauração.

2.3 – DESVANTAGENS DA VIRTUALIZAÇÃO

Segundo Laureano (2006), a principal desvantagem da virtualização é o custo

adicional para a execução dos processos, uma vez que a máquina virtual utiliza

recursos de hardware da plataforma real em uma plataforma virtual, ou seja, pode

ocorrer pequena perda de performance das aplicações dependendo do hardware

utilizado. Muitas vezes o consumo de memória elevado, exige melhoramentos nas

configurações do hardware existente, ou até a substituição do mesmo.

9

3. 0 – MÁQUINA VIRTUAL

Descrito na década de 1960 o termo máquina virtual permaneceu pouco

conhecido até a metade dos anos 90, quando o termo ressurgiu, sobretudo com o

aparecimento de aplicações voltadas para virtualização de recursos nos

microcomputadores PC (Personal Computer) de plataforma Intel (arquitetura x86).

Uma máquina virtual é um ambiente criado por um monitor de máquina virtual

(Virtual Machine Monitor – VMM), também denominado “sistema operacional para

sistemas operacionais”, com o objetivo de possibilitar a virtualização de sistemas

operacionais e aplicativos sobre uma única máquina real.

Máquina Virtual é definida por Lopes (2006, p. 126) como:

Uma máquina virtual é um espaço virtual isolado com acesso ao hardware, onde funciona um sistema virtual. Máquina virtual (em inglês, Virtual Machine – VM) é o termo a que nos referimos quando estamos trabalhando com sistemas virtuais executando em uma máquina real.

Máquinas virtuais são encapsuladas em arquivos, as tornando fácil de serem

salvas, copiadas e de se prover uma máquina virtual. Sistemas completos (com

aplicações totalmente configuradas, sistema operacional, BIOS e hardware virtual)

podem ser movidos, em questão de minutos, de um servidor físico a outro para

manutenção em tempo mínimo, evitando transtornos e possível paralisação das

atividades.

Por definição Laureano (2006, p.17) afirma que:

Uma máquina virtual (Virtual Machine – VM) pode ser definida como “uma duplicata eficiente e isolada de uma máquina real”. A IBM define uma máquina virtual como uma cópia isolada de um sistema físico, e essa cópia está totalmente protegida.

Cada instância de sistema operacional é chamada de Virtual Machine (VM) e

roda em sua própria partição. O software de virtualização, chamado Virtual Machine

Monitor (VMM), gerencia requisições e atividades do sistema operacional (SO),

mudando o controle do hardware para cada SO requisitado.

Partições separadas isolam falhas ou ataques de software para uma única

VM, mantendo um alto nível de segurança e disponibilidade do meio virtual. A

virtualização isola os sistemas operacionais e seus aplicativos de recursos de

plataforma de hardware, dando o controle de cada partição, deixando que se pare

ou reinicie qualquer VM sem afetar outras atividades na plataforma. VM podem ser

10

duplicadas em um único servidor para recuperação em caso de alguma instância do

aplicativo falhar, possibilitando maior continuidade de negócios em menos

plataformas e por menor custo.

3.1 - MÁQUINA REAL

Uma Máquina real é formada segundo Laureano (2006, p.17):

Uma máquina real é formada por vários componentes físicos que fornecem operações para o sistema operacional e suas aplicações. “A funcionalidade e o nível de abstração de uma máquina virtual encontram-se em uma posição intermediária entre uma máquina real e um emulador, de forma que os recursos de hardware e de controle são abstraídos e usados pelas aplicações.

Em ambientes virtualizados as máquinas virtuais simulam uma réplica física

de uma máquina real. Dispositivos adicionais como drives de disquetes, CD-ROM e

dispositivos USB (Universal Serial Bus) também podem ser compartilhados entre as

máquinas virtuais e o sistema anfitrião (também chamado de sistema host). Os

usuários têm a ilusão de que o sistema está disponível para seu uso exclusivo.

Embora as funcionalidades das diversas máquinas virtuais sejam diferentes, todos

compartilham de atributos comuns (ROSEMBLUM, 2007) como:

� Compatibilidade do software: a máquina virtual fornece uma abstração

compatível de modo que todo o software escrito para ela funcione.

� Isolamento: garante que os softwares executados em cada uma das

máquinas virtuais e os da máquina real estejam totalmente isolados entre si.

� 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

de uso de sistemas virtuais devem compensar.

3.2 – MONITORES DE MÁQUINAS VIRTUAIS

As soluções de combinação entre hardware e software não são um conceito

novo e suas origens remetem ao início da história dos computadores nos anos 60,

11

nas máquinas VM/370 da IBM. Na solução de hardware e software há uma

cooperação entre um software virtualizador (conhecido como monitor) e que faz o

papel principal com o hardware, cujo qual fornece partes chaves do processo.

Na virtualização totalmente baseada em software, não é preciso um hardware

provendo recursos para suportá-la, ao invés disso, é o software virtualizador

(conhecido como monitor) que provê totalmente os recursos no processo. Essa

tecnologia tem como vantagens o baixo custo de implementação e a portabilidade

entre plataformas. São exemplos dessas tecnologias: VMWare, VirtualBox, Microsoft

Virtual Server e Virtual PC, Xen, Solaris Zones, FreeBSD, Jails e outras.

3.2.1 – Tipos de Monitores de Máquinas Virtuais

Para a construção de monitores de máquinas virtuais, existem duas abordagens:

� Monitor de Máquinas virtuais clássicas ou de Tipo I

� Monitor de Máquinas virtuais hospedadas ou de Tipo II.

3.2.2 – Monitor de Máquinas virtuais clássicas ou de Tipo I

Nesta abordagem o monitor de máquinas virtuais é implementado entre o

hardware e os sistemas convidados (também chamados de sistemas guest ou guest

systems).

Figura 06 – Representação do monitor de máquinas virtuais do tipo I

Aplicação

Monitor de Máquinas Virtuais

CPU, RAM, dispositivos de E/S (Hardware) - Real

Aplicação

Convidado Convidado

12

O monitor possui controle sobre o hardware e cria um ambiente de máquinas

virtuais dando a cada máquina virtual o comportamento de uma máquina física,

podendo executar sobre esses ambientes, sistemas operacionais iguais ou

diferentes, totalmente isolados entre si.

Um monitor deste tipo executa com a maior prioridade sobre os sistemas convidados

de forma que ele pode interceptar e emular todas as operações que acessam ou

manipulam os recursos de hardware provenientes dos sistemas convidados.

3.2.3 – Monitor de Máquinas virtuais Hospedadas ou de Tipo II

Nesta abordagem o monitor é implementado como um processo de um

sistema operacional “real” subjacente, denominado sistema anfitrião (host ou host

system).

O monitor do tipo II funciona de forma análoga ao de tipo I, com a diferença

que ele é executado sobre o sistema operacional anfitrião (host), como um processo

deste, ou seja, um sistema convidado. Neste modelo o monitor simula todas as

operações que o sistema anfitrião controlaria.

Figura 07 – Representação do monitor de máquinas virtuais do tipo II

Aplicação

Monitor de Máquinas

Virtuais

CPU, RAM, dispositivos de E/S (Hardware) -

Real

Aplicação

Convidado Convidado

Sistema Anfitrião (Host)

Aplicação

13

Cabe destacar que os monitores de tipo I e tipo II raramente são projetados

em sua forma conceitual, pois muitos desenvolvedores de produtos para esta

tecnologia inserem otimizações para aumentar o desempenho dos sistemas

convidados.

Em monitores de tipo I:

� O sistema convidado acessa diretamente o hardware. Neste processo, é

necessário que sejam feitas alterações no sistema operacional para que suporte a

otimização.

Em monitores de tipo II:

� O sistema convidado acessa diretamente o sistema anfitrião. Nessa

otimização, o monitor permite que sejam acessadas certas API (Application

Programming Interface - Interface de Programação das Aplicações) do sistema

anfitrião pelo sistema convidado.

� O sistema convidado acessa diretamente o hardware. Essa otimização é

conseguida quando o monitor permite o acesso direto a drivers de dispositivo do

sistema anfitrião.

� O monitor acessa diretamente o hardware. Nessa otimização o monitor tem

seus próprios drivers de dispositivos acessando o hardware com uma interface

própria (de baixo nível).

14

4.0 – TÉCNICAS DE EMULAÇÃO, ABSTRAÇÃO, VIRTUALIZAÇÃO TOTAL E PARAVIRTUALIZAÇÃO

4.1 – EMULAÇÃO

É importante salientar que os termos virtualização e emulação de sistemas

apesar de parecerem referir-se ao mesmo tema, na verdade possuem grandes

diferenças.

Um emulador é um agente escrito para tornar possível a interação entre dois

sistemas distintos e incompatíveis entre si (os quais podem ser um software e um

hardware, ou um software e outro software). Para isto, o emulador “traduz” as

instruções entre um sistema e outro, intermediando o processo.

Um emulador é definido por Laureano (2006, p.18) como:

Um emulador é o oposto da máquina real. O emulador implementa todas as instruções realizadas pela máquina real em um ambiente abstrato de software, possibilitando executar um aplicativo de uma plataforma em outra, por exemplo, um aplicativo do Windows sendo executado no Linux ou um aplicativo i386 sendo executado em uma plataforma Sparc. Um emulador “engana”, fazendo com que todas as operações da máquina real sejam implementadas em um software.

Já a virtualização, por sua vez, utiliza a emulação e outras técnicas para

oferecer um conjunto completo de recursos, com o objetivo de permitir que vários

sistemas executem sobre uma mesma plataforma visando o máximo de

desempenho.

O foco da emulação é fazer um sistema executar totalmente sobre outro para

o qual não foi originalmente construído, mesmo que isto cause uma perda de

desempenho. De um modo contrário, a virtualização preocupa-se sempre com o

desempenho e executa o sistema virtual diretamente no hardware quando possível,

através de uma máquina virtual.

15

4.2 – ABSTRAÇÃO

Embora a virtualização seja descrita como uma abstração em software existe uma

diferença entre os termos abstração e virtualização.

Segundo Laureano (2006) a abstração é uma forma simples de prover alguns

recursos específicos de hardware para software, enquanto a virtualização provê um

conjunto completo de recursos.

A abstração permite que softwares acessem os arquivos do sistema

operacional anfitrião (host) para operações específicas e simples. A virtualização

fornece para o software um sistema de arquivos (disco virtual) montado sobre

arquivos do sistema operacional anfitrião (host), e nesse caso, é possível realizar

operações mais complexas.

Virtualização

Abstração

Figuras 08 – Exemplo de abstração Figura 09 – Exemplo de Virtualização

4.3 – VIRTUALIZAÇÃO TOTAL

Nesta técnica uma estrutura completa de hardware é virtualizada, ou seja,

cria-se um hardware virtual com as mesmas características do real, desta forma o

sistema a ser virtualizado (sistema convidado) não precisa sofrer qualquer tipo de

alteração.

Software

Arquivos no Sistema Operacional

Anfitrião

Disco Real

Software

Disco Virtual

Disco Real

Arquivos no Sistema Operacional

Anfitrião

16

Figura 10: Representação da virtualização total

Como maior benefício nesta técnica é justamente o fato de o sistema a ser

virtualizado não sofrer alteração alguma, porém é importante ressaltar que o mesmo

executa de forma mais lenta e o monitor de máquinas virtuais precisa implementar

alternativas para que as operações privilegiadas possam ser executadas em

processadores que não suportem a virtualização nativamente. Vale destacar ainda,

que a partir do uso desta técnica é possível encontrar diversas formas “genéricas”

de virtualização.

4.4 – PARAVIRTUALIZAÇÃO

Paravirtualização é uma técnica que apresenta uma interface de software

para máquinas virtuais que é similar (mas não idêntica) à subcamada de hardware.

Permite que máquinas virtuais específicas comuniquem-se diretamente com o

hardware. Ao invés de todas as máquinas virtuais se comunicarem com o sistema

anfitrião, é a máquina privilegiada que gerencia a interação e recebe as chamadas

passadas pelos outros sistemas virtuais. Esta capacidade minimiza os custos

adicionais em processamento ou armazenamento (fator significativo no desempenho

dos sistemas de computação) e otimiza o desempenho do sistema para suportar a

virtualização.

Na Paravirtualização, “[...] o sistema a ser virtualizado (sistema convidado) sofre

modificações para que a interação com o monitor de máquinas virtuais seja mais

eficiente” (LAUREANO, 2006, p.30).

Sistema convidado

(sem modificações)

Monitor de Máquinas virtuais

Hardware x86 (CPU, memória RAM,

dispositivos de E/S)

Sistema convidado

(sem modificações)

Hardware x86 (Virtual)

17

O maior inconveniente da paravirtualização é a necessidade de que o sistema

operacional convidado seja previamente adaptado (modificado), o que diminui a

portabilidade do sistema, em contrapartida a performance obtida valoriza a utilização

da paravirtualização. O sistema convidado pode acessar diretamente o hardware,

sendo que este processo é totalmente gerenciado pelo monitor de máquinas virtuais.

Esta técnica é utilizada pelo monitor Xen, por exemplo.

Figura 11: Representação de paravirtualização

Sistema convidado

paravirtualizado

(com

modificações)

Monitor de máquinas virtuais

Hardware x86 (disco, CPU, dispositivos de

E/S)

Sistema convidado

paravirtualizado

(com

modificações)

18

5.0 - POR QUE IMPLEMENTAR A VIRTUALIZAÇÃO

Há décadas, muitas empresas investem pesado em novos aplicativos de

negócios e infra-estrutura de TI. Em toda a empresa, houve uma proliferação de

servidores e armazenamento de e-mails, banco de dados na Web, arquivos e

impressões, controladores de domínio, servidores de diretório e outros aplicativos.

Com a virtualização, não há o limite de executar somente um sistema

operacional em um servidor ou estação de trabalho. É possível consolidar facilmente

múltiplas plataformas rodando diferentes sistemas operacionais e aplicações

heterogêneas em uma única poderosa e confiável plataforma. Desta forma há uma

redução no número de sistemas a serem gerenciados para a mesma tarefa e

operação, contribuindo na economia de energia elétrica e custos sobre hardware.

Em vez da utilização de vários equipamentos com seus respectivos sistemas

operacionais, utiliza-se somente um computador com diferentes máquinas virtuais

abrigando os vários sistemas operacionais, suas aplicações e serviços.

De acordo com Tanebaum & Woodhull (2000) como tudo o que se refere a

computadores, os sistemas operacionais evoluem a passos largos. É essa evolução

que abre caminho para aplicativos mais poderosos e tem aumentado dia-a-dia a

presença de computadores em nossas vidas.

5.1 – CONSOLIDAÇÃO DE SERVIDORES

Diante deste contexto chamado “Virtualização” torna-se oportuno o assunto

“Consolidação de Servidores”, principalmente no meio empresarial, pois é uma

excelente alternativa para redução de custos no ambiente de TI (tecnologia da

informação).

Atualmente as empresas estão cada vez mais buscando produtividade e

redução de custos, aliado a estes fatores inclui-se a centralização e diminuição do

número de servidores físicos em suas instalações, processo conhecido como

consolidação de servidores. Esta técnica proporciona ao ambiente servidor de uma

empresa o aumento de produtividade da infra-estrutura, um melhor gerenciamento

19

do ambiente, aumento na segurança, redução da manutenção, economia em

recursos humanos, físicos e financeiros.

Partimos do pressuposto de uma situação que se necessita disponibilizar

serviços em vários servidores diferentes, sendo que cada servidor teria conforme o

serviço, determinada quantidade de memória e espaço em disco. Devemos

considerar também que grande parte do tempo estes servidores ficarão ociosos ou

seu uso cai consideravelmente em determinados horários. Todos os servidores

devem ficar disponíveis em uma rede, porém precisam ter certo nível de segurança.

Esse cenário tradicionalmente exigiria um grande investimento na infra-estrutura –

aquisição de servidores, espaço físico, rede, energia elétrica, manutenção da redes

e equipamentos, administração dos diversos sistemas, serviços e a contratação de

funcionários.

Nesses casos a virtualização é uma grande alternativa, pois, ao invés de

possuirmos vários servidores físicos, podemos possuir apenas alguns ou mesmo

somente um, reduzindo consideravelmente a complexidade. Podendo ainda, obter

um melhor aproveitamento dos recursos computacionais, com a subtração do custo

total de propriedade, do custo operacional, e do consumo de energia elétrica (fator

impactante no meio ambiente), além da redução do número de servidores físicos e

do espaço físico necessário para abrigá-los, garantindo vantagens como economia

em administração, manutenção e refrigeração dos equipamentos. A capacidade de

executar softwares de diferentes sistemas operacionais num mesmo hardware reduz

o “desperdício” da capacidade de processamento que ocorre freqüentemente nos

servidores em determinados horários ou dias do mês. A administração facilitada é

outro benefício agregado e de grande importância no projeto de consolidação de

servidores. Nesta técnica, os sistemas operacionais são abrigados em máquinas

virtuais e cada máquina virtual geralmente é armazenada no disco da máquina física

como um arquivo único, tornando extremamente prático, por exemplo, operações de

backup, mudança de máquinas virtuais de um servidor físico para outro, inclusão de

cópias de sistemas e praticidade no teste de novos sistemas. Alguns monitores de

máquinas virtuais (como o VMware e o Xen) já possuem scripts automatizados de

backup e mudança de máquina virtual de servidor.

As empresas que consolidarem seu parque de servidores poderão desfrutar

de todas estas vantagens e ainda aproveitar os seus equipamentos “encostados”

20

para outras finalidades. Por exemplo, utilizá-los como mecanismos adicionais de

segurança de seus sistemas, de backup e até como reserva de hardware.

5.1.2 – Consolidação na forma aplicada

Na virtualização de um servidor, ele é “subdividido” em máquinas virtuais e

cada máquina virtual tem sua própria CPU virtualizada, memória, placa de rede e

espaço em disco, podendo compartilhar outros dispositivos anexados à plataforma

física, como mídias de CD-ROM, disquete e até conexões USB.

Nas figuras a seguir observamos a representação da estrutura de servidores que

não utilizam a técnica de virtualização e servidores que utilizam.

Figura 12 - Servidores que não utilizam a técnica de virtualização

Figura 13 - Servidor utilizando a técnica de virtualização

21

Podemos verificar através da figura (13) que com a técnica de virtualização é

possível um servidor fazer o trabalho de três, pois o mesmo poderia hospedar vários

sistemas virtuais (convidados ou guest) sobre o seu sistema real (hospedeiro ou

host).

Segundo a Intel (2008), para implementarmos uma consolidação de servidores,

primeiramente devemos considerar alguns pontos chaves:

� Avaliar os processos e as aplicações críticas. Onde aumentando o nível dos

serviços, aumentariam os resultados;

� Verificar quais servidores são subutilizados e que poderiam compartilhar

recursos. Muitos servidores web e de e-mails funcionam na maioria do tempo

abaixo de 10% de utilização. Esses são ótimos candidatos a uma

consolidação.

� Algumas aplicações são más candidatas à consolidação. Nesta classificação

estão enquadradas as aplicações de alta performance que utilizam o servidor

na maior parte do tempo (ex: analisadores de grandes massas de dados),

bem como, os de missão crítica ou de performance crítica, em que qualquer

contenção de recursos poderia impactar negativamente nos resultados.

Deve-se proceder a seguinte metodologia para cálculo de capacidade:

� Fazer um histórico dos dados das aplicações a serem consolidadas,

capturando dados como consultas, uso de memória, entrada e saída,

armazenamento ou qualquer outra informação relevante, em um ciclo de um

dia, um mês, um ano etc.

� Usando este histórico, deve-se mapear padrões de uso para descobrir

aplicações que poderiam funcionar juntas, e combinando aplicações de picos

em horários diferentes.

� Somar todos os picos de carga de trabalho de todos os serviços e aplicações

a serem consolidadas para determinar os requisitos de capacidade

computacionais necessárias (CPU, memória, disco, operações de entrada e

saída etc.).

� Acrescentar uma margem de crescimento projetada para os próximos seis

meses, dois anos ou eventual substituição de equipamentos (por exemplo:

devido ao término de suas vidas úteis).

22

� Caso haja políticas institucionais de utilização de servidores (por exemplo:

nenhum servidor deveria estar funcionando normalmente acima de 80% da

capacidade), deve-se adicionar também esta margem de segurança.

� Por fim, deve-se considerar no cálculo os custos adicionais em

processamento ou armazenamento gerados com o uso da técnica de

virtualização.

Após este estudo, pode-se realizar a consolidação das aplicações em sua

forma prática, consolidando aplicações de menor escala e, na medida em que se

obtém êxito, proceder para aplicações de maior escala. Ao final de cada trabalho,

deve-se utilizar técnicas de medição de carga de trabalho para uma análise do

sucesso obtido.

Fatores como a segurança são de extrema importância, principalmente no

tocante a servidores, pois quando ocorrem vulnerabilidades torna-se extremamente

custoso para a instituição. A virtualização é uma poderosa ferramenta na prevenção

contra ameaças de segurança, na medida em que evita custos com interrupção de

serviços e perda de dados. Outro grande benefício é o isolamento de processos em

máquinas virtuais, pois é possível isolar aplicações de alto risco de aplicações

potencialmente vulneráveis, elevando a proteção contra aplicações maliciosas,

aumentando a dificuldade das mesmas acessarem dados, ou afetarem processos

que estejam sendo executados em outras máquinas virtuais. Isolando falhas,

previne-se que uma aplicação em mau funcionamento comprometa todo o sistema,

por exemplo, aplicações que fazem conexões externas, através da internet, podem

ser confinadas em máquinas virtuais independentes, mantendo-as separadas do

sistema operacional anfitrião. Podendo ainda, serem definidos, privilégios limitados a

usuários ou as próprias aplicações convidadas em um ambiente que pode ser

seguramente “deletado” quando o serviço for concluído. Se algumas destas

máquinas virtuais estiverem comprometidas, somente seria necessário descartar as

defeituosas e criar novas, ou recuperar cópias de segurança (backup), sem afetar

outras aplicações que estejam executando no mesmo sistema anfitrião (host).

A virtualização permite que administradores possam suspender, reiniciar e

migrar máquinas virtuais, ajudando a suavizar efeitos de ataques e falhas em

aplicações, ou até mesmo falhas em hardware, quando acontecerem. Em caso de

falha, as máquinas virtuais podem simplesmente ser reiniciadas de um ponto de

23

restauração, de uma cópia de segurança, ou outro mecanismo de recuperação que

possa trazer o sistema a um estado saudável.

Se a camada física do sistema falha, as máquinas virtuais podem ser

migradas e restauradas em outras máquinas físicas. Esta habilidade para recriar um

serviço sem ter que “iniciar do zero” é especialmente útil para serviços de missão

crítica e de execução prolongada, porque provê uma rápida recuperação de

desastres. Uma boa idéia é armazenar pontos de restauração de máquinas virtuais

em locais remotos para posteriormente serem recuperados em caso de falha. Os

monitores de máquinas virtuais VMware e Xen dispõem de ferramentas que migram

e reiniciam as máquinas virtuais automaticamente em outros servidores em caso de

falha do servidor original.

24

6.0 – ALGUNS SOFTWARES PARA VIRTUALIZAÇÃO

Existem diversos softwares de virtualização para os principais sistemas

operacionais. Esses produtos criam máquinas virtuais que permitem a execução de

sistemas operacionais sem que estes percebam que não funcionam diretamente

sobre uma máquina física. Este tipo de aplicação permite a coexistência na mesma

máquina de vários sistemas operacionais operativos funcionando em simultâneo.

Vejamos alguns exemplos:

6.1 – VIRTUAL SERVER E VIRTUAL PC

O Virtual Server é uma versão originaria do Virtual PC e foi concebido para

competir com o VMware na virtualização em servidores Windows. Por ser uma

máquina virtual do Tipo II, precisa de um sistema anfitrião (host) para o seu

funcionamento.

Assim como outros softwares para virtualização, o programa exibe uma janela

onde é possível abrir sistemas operacionais, como Windows, Linux, o que permite

executar diversos sistemas operacionais em uma mesma máquina, sobre um

sistema operacional nativo Windows. Uma das vantagens do software é a rápida

reconfiguração dos equipamentos.

Além do Virtual Server, a Microsoft possui o Virtual PC inicialmente projetado

e desenvolvido pela empresa Connectix (empresa adquirida pela Microsoft), é um

software para virtualização que suporta o sistema operacional Windows sobre os

computadores Macintosh.

O Virtual Server executa os sistemas operacionais como serviços, e tem

como principais características:

� Suporte a conectividade permitindo cluster de todas as máquinas

virtuais executadas sobre um host;

� Oferece flexibilidade aos encapsular máquinas virtuais em discos

virtuais;

25

� Possibilidade de migração de máquinas virtuais com ferramentas

especiais.

A maior desvantagem sobre o Virtual Server é o funcionamento somente em

servidores Windows.

Atualmente a Microsoft disponibiliza o Virtual Server e Virtual PC para

download gratuito em seu site na internet

6.2 - VIRTUALBOX

O VirtualBox é um software de virtualização para arquitetura x86 desenvolvido

pela empresa Innotek GmbH, com sede na Alemanha. Desde janeiro de 2007 possui

uma versão que é open source de licença GNU GPL. O software é uma máquina

virtual do tipo II e executa como um processo de sistema operacional host que pode

ser Linux, Windows 32 ou 64 bits, ou Mac OS X. Atualmente suporta sistemas

convidados como DOS, FreeBSD, Linux, OpenBSD, NetBSD, Solaris, Netware, OS/2

Warp e Windows. Ele utiliza a técnica da virtualização total, emulando componentes

chaves do hardware. Com isso, não há necessidade de que os sistemas

operacionais convidados sejam modificados para que executem em uma máquina

virtual. O VirtualBox tenta executar uma porção do código dos sistemas virtuais

diretamente no processador. Caso haja problemas no processo, o VirtualBox

também utiliza a técnica de recompilação dinâmica. O recompilador do VirtualBox é

baseado no open-source QEMU.

Adicionalmente, o VirtualBox automaticamente “desmonta” e, na maioria dos

casos, “corrige” o código dos sistema convidados a fim de prevenir futuras

recompilações. Em razão disso o código executa nativamente na maior parte do

tempo, numa tentativa de aumentar seu desempenho [VIRTUALBOX].

No software, os discos são emulados num recipiente especial chamado Virtual Disk

Image (arquivos VDI), o qual até o momento é incompatível com formatos usados

por outras soluções. O VirtualBox possui uma funcionalidade que pode conectar

dispositivos SCSI e usá-los como discos virtuais.

26

O VirtualBox virtualiza os adaptadores gráficos como no padrão VESA e cuja

memória pode ser ajustada. Em sistemas convidados Linux e Windows, pode ser

instalado drivers gráficos especiais para melhorar o desempenho.

Os adaptadores de rede são virtualizados como adaptadores AMD PCNet, e placas

de som como dispositivos Intel ICH AC’97. Dispositivos USB também são emulados.

Outras características do VirtualBox: � Permite virtualização recursiva (uma instância do VirtualBox pode ser

executada em sistema convidado). � Permite controle total através de linha de comando. � Permite logon automático em máquinas virtuais Windows. � Inclui um servidor Microsoft Remote Desktop Protocol (RDP) para

administração de máquinas virtuais. � Inclui suporte total a Intel VT e suporte experimental ao AMD-V.

6.3 – XEN

A proposta do ambiente Xen é suportar aplicações sem a necessidade de

alterações, ou seja, múltiplos sistemas operacionais convidados e a cooperação

entre esses sistemas, com o máximo de desempenho possível. O projeto Xen

nasceu na Universidade de Cambridge, tendo se transformado na instituição

independente XenSource, que foi depois adquirida pela Citrix Systems.

O Xen é uma máquina virtual do Tipo I para a plataforma x86, possui um

sistema operacional próprio (host), utiliza uma idéia diferente, a paravirtualização,

que consiste em dividir de forma transparente os recursos do hardware, permitindo

que o sistema convidado (guest) rode com uma redução de performance muito

pequena. O Xen não é uma solução fácil de usar como o VMware, sendo mais

voltado para uso em servidores Linux, permitindo rodar vários servidores virtuais

numa única máquina.

Segundo Xensource (2007) as empresas estão abraçando o Xen para servidores,

porque lhes permite aumentar a utilização dos servidores, consolidar servidores, e

reduzir drasticamente a complexidade e o custo total de propriedade.

O Xen tem acesso privilegiado ao hardware da máquina e os sistemas

convidados utilizam esse acesso privilegiado como ponte para acessar o hardware.

27

Uma das desvantagens é que para rodar dentro do Xen é necessário que o

sistema convidado (guest) seja modificado. Não é possível rodar qualquer sistema

diretamente, como no caso do VMware.

Para utilizar o Xen Laureano (2006, p. 101) define que:

Os sistemas convidados precisam ser alterados para executar sob o Xen. Conforme apresentado pelos criados do Xen, o custo e o impacto das alterações nos sistemas convidados são baixos e a diminuição do custo da virtualização compensa essas alterações.

Isto não é um grande problema no caso do Linux, mas é no caso do Windows

e outros sistemas de código fechado. O código-fonte do Xen está liberado sob a

licença GNU General Public License (GPL). Atualmente, o ambiente Xen suporta os

sistemas Windows XP, Linux e Unix (baseado no NetBSD). Diversas distribuições

Linux já possuem suporte nativo ao Xen.

6.4 - VMWARE

Lançado em 1999, é uma máquina virtual para computadores baseados na

plataforma x86, considerada a mais bem elaborada e difundida dos últimos tempos.

A empresa desenvolvedora do VMware, a VMware Inc. é uma subsidiária da EMC

Corporation e localiza-se na Califórnia, Estados Unidos.

O VMware possui diferentes versões e caracteriza-se como um software

proprietário que provê uma camada de virtualização para suporte a vários sistemas

operacionais sobre um único hardware, suas versões de máquinas virtuais podem

ser do tipo I ou II, de acordo com a versão do software escolhida.

Segundo Laureano (2006), o VMware faz uma implementação completa da

plataforma x86 ao sistema convidado, sendo uma ferramenta útil em diversas

aplicações.

De fácil uso e excelente desempenho, o VMware permite a emulação de

vários sistemas operacionais ao mesmo tempo sobre um sistema hospedeiro,

utilizando para isto o conceito de máquinas virtuais. Como podem existir diversos

sistemas operacionais em execução no mesmo hardware, o monitor tem de emular

certas instruções para representar corretamente um processador virtual em cada

máquina virtual. Essas instruções a serem emuladas são chamadas de instruções

28

sensíveis. Isto é um pouco diferente de uma JVM (Java Virtual Machine), onde, por

exemplo, o emulador tem de traduzir o código bytecode (código de programação

Java), antes de executá-las.

Para entendermos um pouco melhor o VMvare, imagine um computador com

o Windows XP Professional instalado e sobre ele instalarmos o VMware. Ele

possibilitará a criação de várias máquinas virtuais com seus próprios sistemas

operacionais, inclusive Linux, Windows, Sun, Novell. É como se tivesse mais de uma

máquina, porém tendo apenas uma, podendo existir diferentes sistemas

operacionais em execução no mesmo hardware. Isto ocorre devido à emulação por

parte do monitor de máquinas virtuais das tais instruções sensíveis que visam

representar corretamente um processador virtual em cada máquina virtual.

Por razões de desempenho, as máquinas virtuais geralmente confiam no

mecanismo de trap (armadilha) do processador para executar instruções sensíveis.

Porém, os processadores x86 não capturam todas as instruções sensíveis e um

trabalho adicional deve ser realizado.

Segundo Cherene (2008) para controlar as instruções sensíveis que não foram

capturadas, o VMware utiliza uma técnica chamada reescrita binária. Com essa

técnica, todas as instruções são examinadas antes de serem executadas, e o

monitor insere pontos de parada no lugar das instruções sensíveis. Quando

executado, o ponto de parada faz com que o processador capture a instrução do

monitor. Essa técnica acrescenta complexidade ao monitor do VMware, o que provê

um conjunto completo de instruções x86 para interface do sistema convidado.

Por razões de desempenho, o monitor do VMware utiliza uma abordagem

híbrida (otimizações inseridas nas arquiteturas das máquinas virtuais do tipo I e II,

com o objetivo principal de melhorar o desempenho das aplicações nos sistemas

convidados). O controle de exceção e gerenciamento de memória é realizado

através da manipulação direta do hardware, mas para simplificar o monitor, o

controle de E/S é do sistema anfitrião (host). Com o uso de abstrações para suportar

a E/S, o monitor evita manter device drives, algo que os sistemas operacionais já

implementam adequadamente. Essa simplificação causou uma perda de

desempenho em versões mais antigas do VMware, mas foram adotadas otimizações

para diminuir seus efeitos e melhorar o desempenho de E/S. A gerência de memória

no VMware é feita diretamente pelo sistema convidado, para garantir que não ocorra

nenhum conflito de memória entre o sistema convidado e o sistema host, o VMware

29

aloca uma parte da memória para uso exclusivo, então o sistema convidado utiliza

essa memória previamente alocada.

Os arquivos são armazenados em "discos virtuais" que aparecem como

arquivos dentro de uma pasta no sistema host e cada sistema operacional podem ter

uma configuração de rede distinta, com seu próprio endereço IP. As máquinas

virtuais ficam acessíveis na rede, como se fossem realmente PC's completos,

permitindo rodar um servidor Web ou programas de aplicação gráfica dentro de uma

máquina virtual, sem comprometer a segurança do seu sistema principal.

Segundo VMWARE (2007), para controlar o sistema convidado, o VMware

implementa serviços de interrupção, para todas as interrupções do sistema

convidado. Sempre que uma exceção é causada no convidado, ela é examinada

primeiro pelo monitor. As interrupções de E/S são remetidas para o sistema anfitrião,

para que sejam controladas corretamente. As exceções geradas pelas aplicações no

sistema convidado são remetidas para o sistema convidado.

O VMware interpreta e converte instruções o mínimo possível, o que faz com que o

sistema dentro da máquina virtual rode com um desempenho muito similar ao

desempenho da máquina real.

Segundo VMware (2007), o VMware conta com uma variedade de produtos

de virtualização disponibilizando as empresas e usuários opções de escolha:

VMware ACE, VMware VirtualCenter, VMware ESX Server, VMware Workstation,

VMware Player, o VMware Server e a suíte VMware Infrastructure. Cabe destacar

que o VMware Player e o VMware Server possuem versões gratuitas para download.

A seguir faremos um estudo mais detalhado sobre as versões – ESX Server,

Workstation, Player e Server – principais destaques do VMware. Além de uma breve

explicação sobre a suíte VMware Infrastructure.

6.4.1 – VMware ESX Server

O VMware ESX Server é a versão comercial do produto VMware voltado para

o uso em aplicações profissionais servidoras de larga escala ou missão crítica.

Caracterizado como um monitor de máquina virtual do tipo I, possui um

sistema operacional próprio e otimizado para gerenciar máquinas virtuais. No

30

VMware ESX Server, cada máquina virtual representa um sistema completo, com

processador, memória, disco e BIOS, provendo um completo ambiente de execução,

o que faz com que os sistemas operacionais convidados não precisem ser

modificados. Basicamente o sistema virtualiza quatro recursos chaves do servidor:

CPU, memória, disco e rede (VMWARE 2006-A).

6.4.1.1 - Virtualização de CPU

Como visto os processadores baseados na arquitetura x86 não possuem

suporte nativo a virtualização, e por isso não conseguem capturar certas instruções

de modo privilegiado originadas de um sistema operacional executando em uma

máquina virtual. Desse modo, não podem contar totalmente com a técnica de

captura e emulação dos sistemas tradicionais.

Para suprir esta dificuldade, o VMware usa adicionalmente a técnica de tradução

binária. Examinando todas as instruções antes de serem executadas, substituindo

as instruções falhas por outras. Devido a isso, a técnica causa uma perda de

desempenho, contudo há instruções que executam diretamente entre a máquina

virtual e a CPU.

O VMware monta para cada sistema operacional executando em sua máquina

virtual, a sua própria CPU virtual, ou seja, os sistemas operacionais “acreditam”

possuírem uma CPU dedicada. Essa CPU virtual possui seus próprios registradores

e estruturas de controle idênticas a uma CPU real.

6.4.1.2 - Virtualização de memória

Como o ESX Server virtualiza a memória das máquinas virtuais por meio da

tradução de endereços, o monitor de máquinas virtuais faz um mapeamento da

página de memória do sistema operacional convidado para a página de memória

física na subcamada do hardware. Cada máquina virtual tem sua própria página de

memória em que o sistema operacional convidado “vê” iniciando do endereço “0”.

31

O monitor intercepta instruções da máquina virtual que manipula estruturas de

gerenciamento de memória do sistema operacional convidado, de modo que a

unidade de gerenciamento da memória (Memory Management Unit – MMU) do

processador não seja atualizada diretamente pelo sistema convidado. O ESX

mapeia a página da máquina virtual em uma tabela de página sombra (Shadow

Page Table - SPT) que é atualizado com o da máquina física.

Quando o sistema operacional convidado estabelece um mapeamento novo em sua

tabela de página, o monitor detecta a modificação e atualiza a respectiva entrada na

tabela de página sombra, que aponta para a localização real da página de memória

no hardware. Quando a máquina virtual está executando, o hardware usa

diretamente a tabela de página sombra para a tradução do endereço, o que permite

que os acessos de memória normais na máquina virtual executem sem adicionar

perca de tempo com traduções de endereços, uma vez que as tabelas de página da

sombra já estão definidas.

6.4.1.3 - Virtualização de disco

O ESX Server implementa seu próprio sistema de arquivos chamado de

VMFS. O VMFS é um sistema de arquivos distribuído que permite que múltiplos

hosts acessem arquivos concorrentemente no mesmo volume VMFS. A principal

vantagem é que o VMFS é otimizado para operações E/S com arquivos grandes

como é o caso dos arquivos que contém as imagens de máquinas virtuais. Outro

ponto importante é o armazenamento em áreas de disco que podem ser

compartilhadas para acesso entre os sistemas operacionais convidados executando

em diferentes máquinas virtuais.

6.4.1.4 - Virtualização de rede

No ESX Server é possível definir até quatro adaptadores de rede virtual. Cada

adaptador tem seu próprio endereço MAC e endereço IP. As interfaces de rede

32

virtual das múltiplas máquinas virtuais podem ser conectadas a um switch virtual.

Cada switch pode ser configurado sem qualquer conexão ou a uma LAN física por

meio dos adaptadores de rede da máquina anfitriã (host). Esses switches são

chamados de “VMnets” e são abstrações que garantem conexões com velocidade

entre as máquinas virtuais, o sistema anfitrião (host) e a LAN física.

6.4.2 – VMware Server

Um dos mais completos softwares de virtualização de fácil aplicação, pode

ser executado em qualquer plataforma x86 padrão. O VMware Server (anteriormente

chamado de VMware GSX Server) é a versão adaptada e otimizada para uso em

aplicações servidoras profissionais de pequena e média escala. Tornou-se gratuito

no mês de junho de 2006 e disponibilizado para download no site oficial do

fabricante.

O VMware Server é um monitor de máquina virtual do tipo II, ou seja, é

necessário que o software execute sobre um sistema operacional anfitrião, que pode

ser em sistemas operacionais baseados em Linux ou Windows (existe uma versão

para cada uma destas plataformas). Pode ser usado em servidores dedicados, sem

monitor nem ambiente gráfico, pois roda remotamente, através de uma interface de

administração via web, podendo ativar, desativar e monitorar o status das máquinas

virtuais remotamente, e em um desktop no ambiente de trabalho substituindo o

VMware Workstation ou o VMware Player.

Usando o VMware Server, pode-se transformar um único servidor dedicado

em vários servidores virtuais, cada um se comportando como se fosse uma máquina

separada. Assim como o VMware ESX, também suporta máquinas virtuais com uma

ou duas CPU virtuais. Pode-se ainda, compartilhar com os sistemas convidados,

periféricos do hardware como: CD-ROM, memória, placas de rede e portas USB.

Quando for preciso visualizar as mensagens de inicialização ou mesmo

alterar as configurações do sistema virtual na máquina virtual (por exemplo

quantidade de memória RAM ou imagem ISO de boot, etc.) é possível usar o

VMware-server-console ou VMware Infrastructure Web Access, interfaces de

administração separadas do restante do software, permitindo a conexão com

33

qualquer uma das máquinas virtuais disponíveis, seja local ou remotamente, além de

oferecem opções para criar novas máquinas virtuais, incluir ou excluir discos virtuais

e instalar ou reinstalar os sistemas operacionais.

O VMware Infrastructure Web Access (figura 14), utiliza um browser de

internet como portal de acesso ao VMware Server. Já o VMware-server-console

(figura 15) utiliza um protocolo próprio para comprimir e transmitir a imagem da tela

via rede (usado em casos que o servidor não possui monitor), exibindo-a no desktop

escolhido. O maior problema é que o VMware utiliza um protocolo de atualização de

tela sem perda, que acaba sendo bastante ineficiente para o uso via rede.

Figura 14: VMware Infrastructure Web Acess Figura 15: VMware-server-console

No VMware Server o suporte a rede é feito através de VMnets (como no ESX

Server),possuindo três modos:

� Bridged: a máquina virtual é vista como outro computador na rede, com

endereço IP manual ou podendo ser obtido via DHCP (tem acesso completo à

rede, pode receber um endereçamento IP próprio e fica com todas as portas

de entrada disponíveis, como de fosse um PC independente conectado à

rede).

� NAT: a máquina virtual se conecta ao computador anfitrião, que por sua vez

se conecta a rede (tem acesso a rede e pode acessar internet se houver, mas

não possui portas de entrada, de forma que não é possível rodar servidores).

� Host-Only: a máquina virtual apenas se conecta ao anfitrião (é conectada a

um cabo cross-over virtual e tem acesso apenas ao próprio servidor, ficando

desconectada do restante da rede).

34

De acordo com VMware (2007) o VMware Server particiona um servidor físico em

várias máquinas virtuais. Cada máquina virtual é isolada de seu hospedeiro e das

outras máquinas virtuais, impedindo que sejam afetadas se alguma máquina virtual

falhar. Os dados não vazam entre as máquinas virtuais e os aplicativos só podem se

comunicar por conexões de rede configuradas. O VMware Server encapsula o

ambiente da máquina virtual como um conjunto de arquivos fáceis de fazer backup,

mover e copiar.

Figura 16 - Particionamento de servidor físico

6.4.2.1 - Vantagens do VMware Server

Ao criar e executar máquinas virtuais com o VMware Server, os usuários podem:

� Abastece servidores adicionais em minutos, sem investir em novo hardware.

� Executar sistemas operacionais e aplicativos Windows, Linux, Sun e outros no

mesmo servidor físico.

� Facilidade de criação de ambientes de testes;

� Aumentar a utilização da CPU (Central Processing Unit) de um servidor físico.

� · Mover máquinas virtuais de um servidor físico para outro, sem necessidade

de reconfiguração.

� Capturar o estado completo de uma máquina virtual e recuperar sua

configuração.

35

� Viabilizar o gerenciamento centralizado para abastecer, monitorar e gerenciar

com eficiência a infra-estrutura de TI.

� Ter acesso ao suporte para produtos de nível corporativo

6.4.2.2 – Desvantagens

Como toda tecnologia, o VMware também tem suas limitações. Uma das

desvantagens do VMware é com a padronização das janelas de opções, o layout

acaba sendo prejudicado em alguns momentos. Outra desvantagem um pouco mais

rara é incompatibilidade e perda de performance em algumas aplicações, como

banco de dados de grandes sistemas.

6.4.3 - VMware Workstation

Caracterizado como uma versão simples e de uso comercial do VMware, é

indicada para aplicações mais leves ou testes, utilizada geralmente em estações de

trabalho. Possui basicamente os mesmos recursos do VMware Server inclusive com

possibilidade de criar máquinas virtuais.

O VMware Workstation é um monitor de máquinas virtuais do tipo II disponível

para sistemas Windows e Linux, destaca-se pela facilidade de uso proporcionada

por seus assistentes que guiam o usuário no processo de criação de máquinas

virtuais, e de clones de máquinas virtuais. Também é possível criar grupos de

máquinas virtuais, de uma só vez, e colocá-las em redes.

Com o VMware Workstation é possível criar máquinas virtuais em dispositivos

externos como um disco rígido ou um pen-drive, através de um produto adicional

chamado ACE Option Pack. O VMware Workstation, assim como o VMware Server

não necessitam a implementação de modificações especiais no sistema convidado.

O VMware Workstation pode ser obtido diretamente no site do fabricante por

um período de uso de trinta dias sem custo para o usuário (para instalação em

ambientes Linux ou Windows), sendo necessário um cadastro prévio para obter um

36

número de licença válido por trinta dias. Passado esse período, será preciso adquirir

uma licença definitiva.

6.4.4 - VMware Player

Indicada para uso em máquinas virtuais previamente configuradas com o

VMware Server ou Workstation, é um versão mais simples dos produtos VMware, e

está disponibilizada gratuitamente para download. O VMware Player é indicado para

aplicações leves e não oferece suporte a criação ou modificação de máquinas

virtuais. Permite somente opções de ativação ou desativação dos periféricos virtuais

e alteração da memória RAM virtual das máquinas virtuais em execução.

Existem versões do VMware Player para os ambientes Linux e Windows,

ambas executam máquinas virtuais criadas por versões mais completas .

6.4.5 - VMware Infrastructure

O VMware Infrastructure é uma suíte de aplicativos de virtualização que

otimiza o processo de implantação e gerenciamento de máquinas virtuais nas

empresas. Ele visa oferecer, em uma solução integrada, ganhos em: virtualização

compreensiva, gerenciamento, otimização de recursos e disponibilidade de

aplicações. A suíte é composta de um conjunto de aplicativos cujo principal é o

VMware ESX Server. Utilizado geralmente para administração de servidores

complexos este “pacote” de aplicativos oferece ferramentas capazes de possibilitar

que uma simples máquina virtual use múltiplos processadores simultaneamente à

habilitar uma migração em tempo de execução de uma máquina virtual de um

servidor para outro com a menor queda possível no nível de serviço.

37

7.0 – A PROPOSTA DESTE TRABALHO

Propõe-se a virtualização de sistemas utilizando o VMware no ambiente

servidor do Frigorífico Excelência de Nova Mutum, com o objetivo da consolidação e

um melhor aproveitamento da capacidade de processamento dos servidores

existentes na empresa. Para o desenvolvimento deste, serão instalados em um de

nossos servidores físicos, dois servidores virtuais capazes de receber serviços

hospedados em outro servidor físico.

O Frigorífico Excelência atua no segmento industrial, industrializando e

comercializando carnes suínas. Com cerca de seiscentos funcionários é considerada

uma empresa de grande porte para nossa região.

Atualmente devido ao grande fluxo de informações e a necessidade de

processamento, a empresa possui uma considerável estrutura de hardware servidor

em funcionamento, o parque de servidores conta com quatro máquinas servidoras

dedicadas exclusivamente ao gerenciamento de diferentes serviços e aplicações,

requisitadas por usuários através de desktops, notebooks e terminais de acesso.

Além de mais uma máquina servidora como reserva, preparada para eventuais

necessidades, estando à mesma em desuso.

Para uma melhor identificação dos servidores e seus respectivos serviços,

criamos a tabela a seguir:

Identificação Serviço(s) Status

Servidor (1) Servidor de domínio (DNS) e gateway Ativo

Servidor (2) Firewall, proxy, internet e e-mail Ativo

Servidor (3) Banco de dados e o sistema utilizado pelo setor

administrativo,

Ativo

Servidor (4) Banco de dados e o sistema utilizado pelo setor

industrial da empresa

Ativo

Servidor (5) Máquina reserva com sistema operacional e

aplicações básica configuradas

Desuso

Apesar da utilização diária e constante de nosso parque de servidores,

verificou-se uma maior “ociosidade” ou redundância de hardware, em dois de nossos

servidores em atividade “servidor (1) e servidor (2)”.

38

Beneficiando-se da tecnologia da virtualização e levando-se em conta a

possibilidade da utilização de softwares sem custos adicionais, decidiu-se instalar

dois servidores virtuais em um de nossos servidores físicos mencionados no

parágrafo anterior, recebendo também os serviços até então executados em outro

hardware, liberando-o para implementação futura de um servidor de arquivos e perfil

de usuários.

A escolha para a instalação dos ambientes virtuais e os recebimento de

serviços adicionais foi o “servidor (1)”, pois acreditou-se ser mais prático a migração

dos serviços existentes no “servidor (2)”.

Quanto aos demais servidores, preferiu-se mante-los na situação em que

estão, pelo fato dos servidores “3 e 4” possuírem grandes bancos de dados dos

sistemas utilizados na empresa, necessitando de um processamento complexo,

devendo haver um maior planejamento, análise e tempo para uma possível

migração, e o servidor “5” pela necessidade de manter hardware reserva.

7.1 – FONTES DE PESQUISA

As informações, bem como os materiais utilizados, foram obtidas por meio de

fontes bibliográficas como: livros, revistas, web sites, tutoriais.

7.2 – FERRAMENTAS UTILIZADAS

Foram escolhidas para criação/modificação e funcionamento de máquinas

virtuais, as versões VMware Server e VMware player, por oferecerem estabilidade,

fácil configuração, confiabilidade e licenças de uso gratuitas. Para definição da

escolha foram analisados diversos softwares para virtualização, sendo merecedores

de destaque e citados neste trabalho aqueles que ofereceram algumas das

características mencionadas.

A escolha do VMware Server para a virtualização dos sistemas ocorreu em

virtude do software contemplar as características anteriormente citadas, acrescidas

39

de um completo suporte a criação ou modificação de máquinas virtuais, interface de

fácil manipulação, instalação simples e a possibilidade em caso de dano no

hardware, migrar rapidamente uma máquina virtual completamente configurada para

outro hardware sem perca de dados e desempenho. O VMware player foi escolhido

também por ser um software que embora não seja possível utilizá-lo na criação ou

modificação de máquinas virtuais, possibilita rodarmos máquinas virtuais criadas por

exemplo no VMware Server, oferecendo uma interface simples e compacta. Além do

mais, ambos os softwares, embora proprietários dispõem de licenças de uso

gratuitas, o que para a empresa é de estrema importância, uma vez que é uma

empresa comercial, portanto deve utilizar softwares registrados/licenciados, os quais

geralmente geram custos. E neste caso temos uma exceção quanto a custos

adicionais com licenças.

A instalação de ambos os softwares baseia-se na estratégia de gerar

máquinas virtuais no VMware Server e rodá-las no VMware Player. esta “divisão” de

tarefas é mais por uma questão de preferência. Já que poderíamos criar e rodar

perfeitamente as máquinas virtuais no VMware Server.

Vale destacar ainda, que no site do fabricante existe a possibilidade de criar

máquinas virtuais escolhendo uma das três opções oferecidas (veja na figura 17), e

configurar também o hardware desejado para a máquina virtual a ser criada (figura

18), tudo ocorrendo on-line, sem a necessidade de utilização do VMware Server.

Porém se desejarmos modificar estas máquinas virtuais (inclusão ou exclusão de

discos e periféricos virtuais) será necessário a instalação de um software como o

VMware Server, justificando assim sua instalação.

Figura 17: Opções para criação de Máquinas Figura 18: Configurações para Máquinas Virtuais

Virtuais

40

8.0 – IMPLEMENTAÇÃO

Definida das diretrizes, preparou-se o “servidor (1)” para receber servidores

virtuais, e serviços com aplicações oriundos do “servidor (2)”.

As configurações de hardware do ”servidor (1)” estão assim dispostas:

• Modelo: DELL Power Edge

• Processador: Intel Xeon 3.33 Giga hertz, Dual;

• Memória RAM: 4 Giga hertz;

• Placas de Rede: Gigabit Networking Controller;

• Discos Rígidos: 572 Gigabytes, RAID;

• Sistema Operacional: Windows Server 2003 Profissional.

Já as configurações de hardware do ”servidor (2)” são as seguintes:

• Modelo: DELL Power Edge

• Processador: Intel Xeon 3.06 Giga hertz;

• Memória RAM: 4 Giga hertz;

• Placas de Rede: Gigabit Networking Controller

• Discos Rígidos: 250 Gigabytes, RAID

• Sistema Operacional: Linux Ubuntu 7.10

8.1 – OBTENDO OS SOFTWARES WMWARE SERVER E PLAYER

Para instalação do VMware Server e VMware Player no “servidor (1)”, é

necessário obter primeiramente os arquivos contendo os softwares no site do

fabricante (http://www.vmware.com).

O VMware Server possui versões para Linux e Windows. Sendo necessário

fazer um cadastro gratuito para receber o código de registro solicitado durante a

instalação. Após o cadastro é disponibilizado um link contendo o endereço para

download do software. O procedimento é bastante amigável sendo possível inclusive

solicitar vários números de registro (gratuitamente), caso pretenda-se instalar em

vários servidores.

41

Após acessar o site do fabricante utilizando o endereço

(www.vmware.com/products/server), basta clicarmos na opção download (conforme

mostra figura 19), e seguir para a tela de cadastro do VMware Server.

Figura 19: Tela inicial para download do VMware Server

Se ainda não for cadastrado, deverá ser feito o cadastro através das opções

localizadas ao lado direito da janela (conforme mostra a figura 20), caso contrário

digitar e-mail e senha. Em seguida escolha a versão para instalação no Windows ou

Linux, sendo liberado um link para download, juntamente com o número serial para

as ambas as versões.

Figura 20: Tela de Cadastro VMware Server

42

O VMware Player, possui também versões para o Windows e Linux. Sendo

necessário fazer também um cadastro gratuito, com o diferencial de que não precisa

de um número de registro para instalação.

Após acessar o site do fabricante utilizando o endereço

(www.vmware.com/products/player), deve-se clicar na opção download (conforme

mostra a figura 21) e seguir para a tela de escolha de versão do VMware Player.

Figura 21: Tela de opção de Download do VMware Player

O VMware Player disponibiliza diversas versões para o Windows ou Linux

(conforme figura 22), porém antes de obter o download de alguma dessas versões é

necessário fazer um pequeno cadastro (vide figura 23).

Figura 22: Versões do VMware Player

43

Figura 23: Cadastro para liberação do download do VMware Player

8.2 – INSTALANDO OS SOFTWARES WMWARE SERVER E PLAYER

Quanto a instalação do VMware Server na versão Linux, é necessário instalar

dois módulos do Kernel (vmmon e vmnet), que permitem que o VMware tenha

acesso direto ao hardware. O pacote de instalação inclui módulos pré-compilados

para diversas distribuições, mas em muitos casos os módulos precisam ser

compilados durante a instalação, tornando necessária a instalação de pacotes

adicionais de suporte, pois não são instalados por padrão na maioria das

distribuições. O que demanda uma preparação adicional, oferecendo um pequeno

grau de dificuldade.

Na versão Windows (nosso caso), a instalação é bem mais simples, depois de

efetuado o cadastro e baixado o arquivo contendo a versão do VMware Server,

basta instalá-lo na máquina desejada, informando o número de registro quando

solicitado. A versão do VMware Server escolhida foi a versão 2.0, pois a versão 3.0

ainda estava em fase de testes, não estando totalmente instável.

A seguir podemos observar através das figuras (24 e 25) o processo de

instalação do VMware Server 2.0 em seu estágio inicial.

44

Figura 24: Inicio da instalação Figura 25: Progresso da instalação

Na figura (26), é solicitado o aceite quanto ao contrato de licença para uso do

programa. E na figura (27), é o momento em que se escolhe um diretório para

instalação do software, caso não houver escolha o programa de instalação do

software escolherá o diretório padrão para a instalação.

Figura 26: Contrato de Licença para uso Figura 27: Local para instalação

Temos na figura (28), a informação pertinente ao servidor de acesso no

sistema via web, juntamente com endereços das portas respectivas portas, e a

(figura 29) apresenta a escolha da criação de atalhos e instalação da barra de

ferramentas para acesso rápido ao site do VMware.

45

Figura 28: Configuração Acesso via web Figura 29: Criação de Atalhos

Nas figuras (30, 31, 32 e 33), tem-se o progresso de instalação. É possível

observar que a copia dos arquivos acontece automáticamente.

Figura 30: Inicio da instalação Figura 31: Preparando a instalação

Figura 32: Inicio da cópia dos arquivos Figura 33: Finalização cópia dos arquivos

46

A figura (34) mostra o campo onde se deve informar o número serial de

registro da versão, outrem adquirido no site no momento do cadastro para download

do software. Na figura (35) há a conclusão do processo de instalação do software.

Figura 34: Número Serial Figura 35: Finalizando a Instalação do VMware Server

Para o VMware Player em algumas distribuições do Linux o pacote nativo não

existe ou está desatualizado, sendo necessário baixá-lo diretamente no site do

fabricante, devendo-se instalar primeiro os pacotes adicionais de suporte, para daí

sim instalar o VMware Player.

Na versão Windows (nosso caso), o procedimento é bem simples e idêntico

ao do VMware Server para Windows, após baixado o arquivo contendo o VMware

Player (escolhemos a versão 2.5, por ser uma das mais atuais) é só instala-lo, não

necessitando de número de registro para instalação. Podemos observar nas figuras

(36 e 37) o VMware Player 2.5 em sua instalação inicial.

Figura 36: Inicio instalação Figura 37: Preparação para instalação

47

A figura (38) representa o momento em que se escolhe um diretório para

instalação do software, caso não houver escolha o programa de instalação do

software escolherá o diretório padrão para a instalação como aconteceu no VMware

Server. E na figura (39) há o processo de evolução da instalação.

.

Figura 38: Local de instalação Figura 39: Progresso da instalação

Na figura (40) o processo de finalização da instalação é apresentado.

Figura 40: Finalização da instalação VMware Player

8.3 – DIFICULDADES NA INSTALAÇÃO DOS SOFTWARES

Após a instalação do software VMware Server 2.0, partiu-se para a instalação

do VMware Player 2.5, de modo a finalizar todo o processo de instalação dos

monitores de máquinas virtuais. Ao iniciar a instalação o sistema acusou uma

48

mensagem de erro (figura 41), impedindo a continuidade da instalação. Diante deste

fato, foram feitas algumas análises iniciais, identificando-se a hipótese de: – por

existir uma versão instalada do VMware fornecendo serviços de Servidor para

máquinas virtuais, não seria possível a instalação de outra versão com

características e serviços semelhantes.

Figura 41: Mensagem de Erro

Após as conclusões iniciais, foram feitos levantamentos mais específicos

junto ao site do fabricante e a fóruns de discussão, obtendo a conclusão final de que

a hipótese anteriormente explanada era verdadeira. Assim posto, a estratégia

descrita no item “7.2”, parágrafo “3”, teve que ser alterada.

8.3.1 – Mudança de Estratégia.

A opção foi a desinstalação do VMware Server, por ter uma interface para

rodar as máquinas virtuais um pouco mais complexa que o VMware Player. Desta

forma, para a criação das máquinas virtuais, adotou-se uma das opção existentes no

site do fabricante, conforme descrito no item “7.2”, parágrafo “4”, pois a mesma

possibilita a criação de máquinas virtuais com características idênticas as criadas no

software VMware Server 2.0.

Porém vale destacar que se surgir a necessidade da mudança de algum

periférico ou inclusão de algum disco virtual em uma das máquinas virtuais a serem

criadas, será necessário a instalação do VMware Server.

49

8.4 – CRIANDO MÁQUINAS VIRTUAIS

Através do acesso ao site (http://www.easyvmx.com), escolheu-se dentre as

três opções existentes, a opção “1” easyvmx, conforme figura (42), por que é a

opção mais simples e rápida para criação de uma máquina virtual.

Figura 42: Escolha da opção “1” para criação de Máquinas virtuais

Nas telas seguintes foram escolhidas as configurações de hardware

necessárias para a criação e um perfeito funcionamento das máquinas virtuais. Na

figura (43), temos a configuração inicial da máquina virtual que abrigará o Sistema

Operacional “Linux Debian 4.03”, e na figura (44) temos a configuração inicial

também da máquina virtual que abrigará o Sistema Operacional “Linux Ubuntu 8.04”

Figura 43: Hardware Virtual Debian 4.03 Figura 44: Hardware Virtual Ubuntu 8.04

50

Nas figuras (45,46 e 47), temos as configurações de disco virtual, placa de

rede, CD-ROM e periféricos. E na figura (48) o arquivo em formato compacto,

contendo a máquina virtual, pronto para download, como exemplo foi utilizada a tela

de conclusão da máquina virtual o arquivo “Debian2”.

Figura 45: Configuração Placa de Rede Figura 46: Configuração CD-ROM e Disco

Figura 47: Configuração USB, Portas Figura 48: Arquivo com a Máquina Virtual Serial e Paralela

Tanto a primeira Máquina Virtual criada, e destinada à instalação do Sistema

Operacional “Debian 4.03”, quanto a segunda criada, e destinada à instalação do

Sistema Operacional “Ubuntu 8.04” seguiram as seguintes configurações de

hardware:

51

Tipo de Hardware Virtual Quantidade

Memória 512 MB

Processador (CPU) 01

Placa de Rede - Vlance 02

Disquete Não

CD-Rom 01

Disco Rígido 45 Giga Bytes

USB Automático

Portal Serial Automático

Porta Paralela Automático

SOM ENSONIC ES 1371 01

8.5 – INSTALAÇÃO DOS SISTEMAS

Criadas as Máquinas Virtuais, foram postas funcionar utilizando-se o VMware

Player, já em funcionamento, configurou-se o boot a partir do CD-ROM virtual, e em

seguida foram iniciadas as instalações.

O primeiro sistema que fora instalado foi o Linux “Debian 4.03”, sendo que

foram feitas as devidas configurações para que o mesmo pude-se receber do

servidor “2” os serviços de firewall.

O segundo sistema o Linux “Ubuntu 8.04”, fora instalado e configurado para

receber os serviços de internet e e-mail anteriormente hospedados também no

servidor “2”.

8.5.1 – Dificuldades

A instalação de ambos os sistemas foi tranqüila não oferecendo dificuldades,

até por que não era a primeira vez que estava sendo feita, pois temos alguns

computadores utilizando os sistemas Linux mencionados, embora sejam desktop’s e

os sistemas não serem virtualizados o processo de instalação é basicamente o

52

mesmo, sendo feitas apenas algumas configurações adicionais para fornecerem os

serviços de Servidor.

A migração dos serviços existentes no servidor “2” para o servidor “1”, não

ofereceu qualquer dificuldade, uma vez que foram feitas fora do horário de pico da

empresa, sendo copiados os diretórios, arquivos e configurações diretamente de

uma máquina para outra através da ligação de rede conhecida como “cross-over”

(conexão direta máquina a máquina via rede).

8.5.2 – Desempenho

Embora muitos contestem que a virtualização traz como desvantagem, a

exigência de máquinas com poder processamento maior, a utilização do VMware

nos Sistemas Operacionais Linux “Debian 4.03” e “Ubuntu 8.04”, em nosso ambiente

servidor mostrou um bom desempenho.

E claro deve-se ter em mente que embora seja um sistema virtualizado

hospedado dentro de outro sistema, não deixa de ser outro computador isolado com

todas suas funções e periféricos, e que necessita de processamento, desta forma

existe sim uma pequena perda de desempenho, mas isto somente ocorre quando a

sistema virtual está em funcionamento, pois é necessário “reservar” a ele parte de

processamento do sistema real, caso contrário esta “reserva” é liberada.

Mesmo em desktop’s, cuja, o poder de processamento é menor, o

funcionamento do VMware é satisfatório, devendo ter em mente que quanto melhor

for a capacidade de processamento e armazenamento do hardware hospedeiro,

melhor será o desempenho quando se utiliza a virtualização.

8.5.3 – Benefícios

Com a consolidação destes serviços espera-se, reduzir custos com

manutenção, consumo elétrico e tempo. Tonando mais prático o gerenciamento e

controle das informações, uma vez que os serviços como firewall, proxy, internet, e-

53

mail, domínios e gateway passaram a estar centralizados em um único servidor,

além da facilidade para implementação de backup.

Outro benefício de extrema importância é a liberdade quanto hardware, ou

seja, caso venha a ocorrer algum problema de funcionamento com o hardware do

servidor “1”, pode-se migrar facilmente as máquinas virtuais contendo seus

respectivos serviços para outro hardware, como por exemplo, o servidor “5”. Sem

que para isso seja preciso dispor de inúmeras horas para efetuar uma nova

configuração. Uma vez que as máquinas virtuais já são pré-configuradas bastando

apenas existir a compatibilidade de plataforma.

8.5.4 – Pretensões Futuras

A partir deste experimento considerado bem sucedido, pretende-se a

consolidação dos demais servidores, de modo a alocar o máximo de serviços

possíveis respeitando os índices de utilização, que consideramos como regra interna

a taxa máxima de uso da CPU de 70% (setenta por cento).

Pretende-se ainda, a implementação de servidores de arquivo virtuais e para

armazenamento de perfil usuários e domínios de rede.

54

9.0 - CONCLUSÃO

A virtualização oferece mudanças profundas quanto ao modelo tradicional da

computação, o qual reduz a importância do sistema operacional, permitindo que um

hardware execute quaisquer aplicações com seu sistema operacional de origem,

sem precisar interromper as demais aplicações e serviços em execução.

Há várias formas de virtualização, e cada uma com suas vantagens e

desvantagens. Em um processo de implantação é necessário decidir sobre a mais

adequada para instituição de modo que se obtenha uma boa relação custo/benefício

no processo. A virtualização na empresa Frigorífico Excelência mesmo sendo muito

interessante e benéfica, como toda a nova tecnologia, teve momentos de

dificuldades, porém sua implantação ocorreu de maneira satisfatória.

Nessa tecnologia problemas de compatibilidade e perda de performance também

podem acontecer, sobretudo por causa de combinações mal realizadas, por

exemplo, uma aplicação que consuma muito processamento e memória não deve

ser virtualizada junto com outra, com risco de que o desempenho dos dois serviços

fique severamente prejudicado. Além disso, as máquinas virtuais tendem a consumir

mais recursos (principalmente de CPU e memória), o que torna recomendado dispor

de um hardware mais robusto a fim de executá-las sem grandes perdas de

desempenho.

A existência de inúmeros softwares para virtualização tem tornado a implementação

da virtualização cada vez mais comum, e monitores de máquinas virtuais como o

VMware e o Xen para paravirtualização, são continuas promessas para a

popularização desta tecnologia..

Neste trabalho ficou exposto a impossibilidade da instalação do VMware Server 2.0

junto com VMware Player 2.5, porém isto não foi um empecilho para a criação de

máquinas virtuais, pois no site do fabricante existe um uma página disponível para a

criação e configuração de máquinas virtuais. Os benefícios da virtualização, como a

consolidação de servidores, tendem a ser um fator primordial para que novas

empresas tornem-se adeptas ao uso desta tecnologia.

55

REFERÊNCIAS BIBLIOGRAFIAS

INTEL: Virtualização em Servidores. Disponível via URL em:

www.intel.com/portugues/business/technologies/virtualization.htm. Acesso em setembro

de 2008.

MICROSOFT VIRTUAL PC. Product Information. Disponível via URL em:

http://www.microsoft.com/windows/virtualpc/default.mspx. Acesso em outubro de 2008.

LAUREANO, Marcos. Máqunas Virtuais e Emuladores. 2006. Novatec Editora, São

Paulo.

LOPES, A.; LAZARINO, O. VMWARE Inside in INFO, São Paulo, n. 248, p. 126-127, nov.

2006.

TANENBAUM, A. S.; WOODHULL, A. S. Sistemas Operacionais Projeto e Implantação

2. ed. Porto Alegre: Bookman, 2000.

VIANA, Eliseu Ribeiro Cherene. Virtualização de Servidores Linux para redes

corporativas. 2008. Editora Ciência Moderna Ltda. Rio de Janeiro.

VMWARE. Virtualization Software. Disponível via URL em: www.vmware.com.br. Acesso

em outubro de 2008.

XENSOURCE. Open Source Virtualization. Disponível via URL em: www.xensource.com.

Acesso em novembro de 2007.