Infra - Virtualização

Qual a tecnologia de virtualização que devo utilizar?

Conheça as várias formas de se fazer virtualização e quais cenários para cada uma delas.

por Fabio Hara



O portfólio de produtos de virtualização é um grande conjunto de opções e alternativas que acabam tornando a escolha da ferramenta correta um processo confuso e muitas vezes complexo. No caso dos produtos Microsoft existe um leque de opções relativamente alto, e ainda há muita confusão na escolha e definição.

Um ponto que não ficou muito claro, e neste caso é bom salientar, é que não existe uma tecnologia de virtualização que seja superior em relação as demais. Cada tecnologia e produto possuem focos específicos, de acordo com o cenário. Portanto se você está desenvolvendo algum projeto de virtualização Microsoft  é importante que você tenha bem definido o conceito de cada ferramenta, e em qual cenário deve ser utilizado.

Por quê utilizar virtualização?

A virtualização oferece vários benefícios para o ambiente de TI e não se trata de mais uma onda tecnológica ou algo passageiro. Atualmente muitas empresas que ainda não tem virtualização implantada provavelmente estão considerando sua implantação a médio prazo.

Os principais pontos que direcionam o uso de virtualização são:

1) Consolidação de servidores

a. Reduzir a quantidade de servidores ajuda drasticamente a reduzir consumo de energia elétrica

2) Redução de custos de alocação de espaço fisico

a. Empresas que fazem co-location em Datacenters procuram reduzir custos com espaço físico dos servidores

3) Diminuir consumo de  energia elétrica para refrigeração de datacenters

a. Uma grande quantidade de servidores em um datacenter também demanda um alto custo para refrigerar  o ambiente onde se encontram. Existem 2 pontos de análise de consumo de energia eletrica: energia elétrica consumida pelo servidor (equipamento) e energia elétrica consumida pelo sistema de refrigeração  do CPD/Datacenter para refrigerar o servidor.

4) Cenários de Disaster / Recovery

a. Facilidade de migração de máquinas virtuais entre hosts torna bastante atraente esta opção

5) Redução de custos com contratos de manutenção de servidores

a. Servidores críticos demandam contratos de manutenção elevados, de acordo com o SLA existente.  A redução na quantidade de servidores traz benefício direto nos custos de manutenção

6) Migração de aplicações

a. A possibilidade de migrar aplicações para novos sistemas operacionais de forma rápida e dinâmica são os grandes facilitadores para manter um ambiente de rede sempre atualizado e homogêneo

7) Ambientes de teste / desenvolvimento e homologação

a. Muitos testes de homologação são falhos pois nem sempre as falhas existentes na produção são idênticas no ambiente de homologação. Com a virtualização é possível ter uma réplica dos servidores de produção o mais fiel possível na homologação, aumentando drasticamente a confiabilidade dos testes.

8) Independência de limitadores físicos dos equipamentos

a. É muito comum hoje em dia encontrar o seguinte cenário: um servidor que possui uma aplicação X e de repente vem a necessidade de aumentar a memória e/ou processador, porém o hardware não suporta isso. Não é tão simples “clonar” um disco e descarregar a imagem em outro servidor, com um hardware totalmente diferente. Através da virtualização não há mais essa dependência com o hardware de um fabricante.

Uma vez que estão claros os motivadores para a a virtualização então é hora de entender cada tecnologia de virtualização.

Virtualização de Hardware do Servidor

Através de um Hypervisor , ou camada de virtualizador, é possível hospedar várias maquinas virtuais. Esta tecnologia exige o suporte para instrução de virtualização no processador do servidor (Intel-VT ou AMD-V). Atualmente esta tecnologia esta disponível no Hyper-V, componente do Windows Server 2008 e Windows Server 2008 R2. Também existe uma versão especial do Windows Server chamada de Hyper-V Server, que consiste basicamente em um Windows Server 2008 com interface gráfica reduzida, fazendo apenas a função de virtualização e totalmente gratuito.

 O componentes do Hyper-V está disponível nas seguintes distribuições do Windows Server:

O Windows Server 2008 R2 Foundation não possui Hyper-V. Adicionalmente você tambem não pode virtualizar um servidor com Windows Server 2008 R2 Foundation, pois sua licença é OEM.

Virtualização de Software de Servidor

Este modelo de virtualização não é mais utilizado de forma intensiva, pois limita as maquinas virtuais em vários pontos (limite de memória, processadores lógicos, etc). O produto que representa esta tecnologia do lado Microsoft é o Microsoft Virtual Server 2005 R2 SP1. Pela arquitetura do produto não há benefício em hardwares novos, pois além de ser antigo o mesmo não suporta as novas tecnologias de virtualização e hardware que estão disponiveis no Windows Server 2008 R2.

A virtualização de software de servidor é baseada em um software que é executado em uma camada acima do sistema operacional. Isto significa que o virtualizador não tem comunicação direta com o hardware, o que impossibilita ter alguns ganhos de performance e escalabilidade.

Virtualização de Sessão / Apresentação

Conhecido anteriormente pelo nome de Terminal Services (TS), a tecnologia assumiu novo nome no Windows Server 2008 R2, passando a se chamar Remote Desktops Services (RDS).

Na virtualização de Sessão a aplicação é instalada no servidor de RDS e disponibilizada para o cliente através de um protocolo específico (RDP – Remote Desktop Protocol). Apenas a tela da aplicação ou todo o desktop do servidor é enviado para a maquina do usuário. O tráfego gerado é de atualização de tela, teclado, mouse e som (quando houver). Todo o processamento da aplicação e uso de memória da mesma ficam no servidor RDS. Em caso de falha de comunicação de rede entre o servidor RDS e o cliente não é possivel executar a aplicação até que o link seja restabelecido.

Um cenário ideal para este tipo de virtualização é o escritório remoto. É muito comum encontrar empresas que possuem escritórios remotos, e a maior parte da reclamação é justamente o acesso aos aplicativos que estão na matriz e que precisam ser executados na filial. Ao instalar um servidor na matriz com o serviço de RDS/TS basta instalar o aplicativo neste mesmo servidor e disponibilizar o acesso às filiais via RDS/TS Client. A experiência de acesso para o usuário da localidade remota será melhorada, como se ele estivesse acessando o aplicativo da matriz.

Para cenários de maior complexidade e/ou gerenciamento é utilizado o Citrix XenApp, componente que é executado sob o RDS (não é possivel implantar o Citrix XenApp sem o RDS).

Outro fator muito comum em projetos de virtualização de sessão é a utilização de Thin Clients, que fazem o papel da estação de trabalho.  

Virtualização de Aplicação

Através do Microsoft Application Virtualization (App-V) uma aplicação é executada no desktop do usuário em um ambiente isolado (aqui é muito utilizado o conceito de “bolha”) independente do registry e demais arquivos do sistema operacional. Diferente do Remote Desktop Services, o App-V utiliza a memória e processamento da maquina do usuário, porém é possivel executar o aplicativo mesmo sem conectividade de rede com o servidor de App-V.

O App-V está disponível no Microsoft Desktop Optimization Pack (MDOP) e o mesmo é adquirido apenas para clientes que possuem contrato de Software Assurance.

Virtualização no Desktop

Esta tecnologia é muito similar ao modelo de Virtualização de hardware de servidor. Muitos desenvolvedores e profissionais de TI precisam ter uma maquina virtual a sua disposição, sem a complexidade de ter um Windows Server com Hyper-V.  A ferramenta que permite criar e gerenciar maquinas virtuais é o Microsoft Virtual PC e a mesma não exige mais que o hardware tenha suporte para virtualização (Intel-VT ou AMD-V).

Outro componente do Virtual PC e que pode ser instalado a parte é o XP Mode, que consiste de uma maquina virtual Windows XP. Atraves do XP Mode uma aplicação instalado no mesmo é publicada como ítem de programa no Start Menu da maquina física, permitindo que somente a tela da aplicação seja executada e apresentada  para o usuário da maquina fisica. Sua principal utilização são cenários onde existam aplicações que somente funcionem com Windows XP.

Virtualização de Desktops

Tambem conhecido como VDI (Virtual Desktop Infrastructure) tal recurso permite centralizar os desktops dos usuários de forma virtualizada em servidores de virtualização. É possível trabalhar da seguinte forma:

· Maquina Virtual Dedicada -  cada usuário que faz acesso ao desktop virtual possui sua própria VM, com todos os detalhes de personalização de desktop. Cada maquina virtual possui seu proprio usuário.

· Pool de Desktops Virtuais – um pool de várias maquinas virtuais é compartilhada com um grupo de usuários. Não há uma maquina virtual específica para cada usuário, e as personalização de desktop são feitas usando técnicas como Redirecionamento de Pastas e Perfil Ambulante

Outro ponto importante é o processo de envio da tela do desktop da maquina virtual para a estação do usuário. Este processo é feito utilizando em conjunto o Remote Desktop Services do Windows Server 2008 R2.

Gerenciamento de Virtualização no Servidor

A linha de produtos System Center referem-se a produtos de gerenciamento da Microsoft. Um dos seus componentes é o System Center Virtual Machine Manager 2008 R2. O SCVMM permite gerenciar o host de virtualização e as maquinas virtuais, e suporta os seguintes sistemas de virtualização de servidores:

· Windows Server 2008 c/ Hyper-V

· Hyper-V Server 2008

· Windows Server 2008 R2 c/ Hyper-V

· Hyper-V Server 2008 R2

· Virtual Server 2005 R2 SP1

· VMWare ESX via VMWare VirtualCenter

Importante observar que o gerenciamento de um host com VMWare ESX não é feito diretamente pelo SCVMM, pois é necessário ter o VirtualCenter. Isto significa que o SCVMM é o gerenciador do VirtualCenter, que este gerencia os hosts com VMWare ESX.

Se você possuir na sua infraestrutura de rede um System Center Operations Manager 2007 R2 então você pode habilitar o uso integrado das 2 ferramentas, através do recurso chamado PRO (Performance Resource and Optimization). Este recurso permite que o SCVMM mova automaticamente (ou de forma manual) uma maquina virtual de um host para outro caso seja detectado algum gargalo na performance.

Gerenciamento de Virtualização no Desktop

Para aqueles que desejam implementar o recurso do Virtual PC em um ambiente maior e/ou que exija maior controle das maquinas vrtuais então a alternativa através do Microsoft Enterprise Desktop Virtualization (MED-V). Com o MED-V é possível distribuir as imagens do Virtual PC e gerenciar a partir de um ponto central.  O produto faz parte do pacote do Microsoft Desktop Optimization Pack (MDOP)

Passos para determinar a tecnologia mais apropriada de virtualização

Uma vez que ficou claro o entendimento de cada tecnologia utilizada para virtualização então é hora de determinar qual cenário deve ser utilizado cada uma delas. Isto é de vital importância pois cada tecnologia não é concorrente entre si, mas sim ideal para determinados cenários.

Para ilustrar melhor cada cenário a seguir estão varios exemplos práticos do cenário de TI

Virtualização de Hardware do Servidor

a. Cenário 1 – “Preciso migrar o hardware de um servidor com Windows NT 4 porque não tem mais peça de reposição e muito menos suporte, porém não posso migrar o sistema operacional por causa de uma aplicação específica.”

b. Cenário 2 – “Tenho muitos servidores que estão hospedados em um datacenter e está saindo caro o aluguel de espaço no rack”

c. Cenário 3 – “Para cada servidor crítico da minha empresa eu tenho um contrato de suporte/manutenção , pois quero um SLA para reposição/conserto das peças. Ultimanente aumentou muito a quantidade de contratos de suporte/manutenção do meu ambiente e preciso reduzir meus custos”

d. Cenário 4 – “Estou gastando muita energia eletrica para refrigerar meus servidores”

e. Cenário 5 – “A conta de energia elétrica dos meus servidores está muito alta e preciso reduzir custos”

f. Cenário 6 – “Percebo que os servidores não utlizam 100% do processamento na maior parte do tempo.  Estou desperdiçando processamento e consequentemente gastando energia eletrica a toa”

g. Cenário 7 – “Precisei outro dia migrar de hardware porque o servidor não suportava mais adicionar memória. Acabei ficando preso ao fabricante e não consigo ter flexibilidade para migrar de hardware quando for necessário”

h. Cenário 8 – “Não consigo reproduzir com fidelidade o ambiente de homologação com a produção, pois é dificil e complexo clonar um servidor”

Virtualização de Software do Servidor

i. Cenário 1 – “Possuo servidores antigos no meu ambiente que não suportam virtualização no processador, porém quero aproveitar para virtualizar alguns servidores com menor carga”

Virtualização de Sessão / Apresentação

j. Cenário 1 – “Possuo escritorios remotos interligados por links WAN congestionados. O pessoal das filiais tem reclamado muito da lentidão de acesso aos aplicativos que estão instalados na Matriz”

k. Cenário 2 – “Não quero investir no upgrade dos desktops , e sim em alguns servidores. Toda vez que eu tenho que atualizar um software nos desktops é um grande trabalho, pois não tenho um software de gerenciamento de estações de trabalho.”

l. Cenário 3 – “Toda vez que tenho de formatar um desktop de usuario demoro varias horas pois os aplicativos são demorados para instalar e configurar”

Virtualização de Aplicação

m. Cenário 1 – “Tenho alguns aplicativos na minha empresa que não funcionam na mesma maquina por causa de alguns conflitos. As vezes sou obrigado a colocar 2 desktops para o usuario”

Virtualização no Desktop

n. Cenário 1 – “Testei o Windows 7 e gostei muito, porém tenho aplicações que só funcionam no Windows XP. Mesmo assim são poucas maquinas que tenho este problema”

Virtualização de Desktops

o. Cenário 1 – “Prefiro investir apenas no hardware dos meus servidores do que nas estações”

p. Cenário 2 – “Toda vez que o usuário formata seu computador é muito demorado o processo de restauração, e as vezes nem sempre consigo fazer backup de todas as estações”

q. Cenário 3 – “Meus vendedores externos e gerentes gostariam de ter acesso ao desktop de trabalho, a partir de qualquer lugar da rede e da Internet”

Gerenciamento de Virtualização no Servidor

r. Cenário 1 – “Possuo ambiente com VMWare e estou testando agora o Hyper-V. Gostaria de gerenciar tudo a partir de um unico ponto”

s. Cenário 2 – “Preciso gerenciar não apenas os servidores de virtualização, mas também as maquinas virtuais.”

t. Cenário 3 – “tenho varios servidores virtualizados e alguns deles são gerenciados por equipes diferentes. Preciso restringir o acesso destas equipes apenas nos servidores que tem direito, de forma segura e controlada”

u. Cenário 4 – “Estou montando um novo ambiente com servidores de virtualização e preciso converter os atuais servidores físicos em virtuais”

Gerenciamento de Virtualização no Desktop

Cenário 1 – “Testei o Windows 7 e gostei muito, porém tenho aplicações que só funcionam no Windows XP. Tenho um parque de maquinas de trabalho grande e preciso controlar e gerenciar de forma centralizada”

Proximos passos

A Microsoft desenvolveu alguns guia s que auxiliam em projetos de infraestrutura. Estes documentos são chamados de IPD – Infrastructure Planning and Design Guide. Estes guias não explicam a fundo como funciona a tecnologia, mas fornecem o direcionamento de como conduzir projetos. Abaixo estão os guias recomendados:

Infrastructure Planning and Design Guide Series

www.microsoft.com/ipd

Fabio Hara

Fabio Hara - Um dos primeiros MVPs (Most Valuable Professional) de infra-estrutura do Brasil, além de MCTS, MCITP, MCSA, MCSE, MCITP e MCT, com mais de 14 anos de experiência no mercado de infra-estrutura de redes Microsoft. Atuou em muitos cases da Microsoft e hoje ocupa a posição de Especialista em Infra-estrutura e Virtualização no time do TechNet Brasil. Sua missão é contribuir com os profissionais e comunidades de IT Pros a explorar as funcionalidades e recursos da plataforma Microsoft.

Blog:
http://fabiohara.spaces.live.com
Twitter: http://Twitter.com/fabiohara