quinta-feira, 23 de agosto de 2007

Virtualização

O que é virtualização?
Virtualização refere-se a tecnologias criadas para fornecer uma camada de abstração entre sistemas de hardware de computador e o software que roda nestes sistemas. Ao proporcionar uma visão lógica dos recursos de computação, em vez de uma visão física, as soluções de virtualização possibilitam duas coisas muito úteis: que você leve seus sistemas operacionais a pensarem que um grupo de servidores é um pool único de recursos de computação e que você rode múltiplos sistemas operacionais simultaneamente em uma única máquina.A virtualização origina-se do particionamento, que divide um único servidor físico em múltiplos servidores lógicos. Depois que o servidor físico é dividido, cada servidor lógico pode rodar um sistema operacional e aplicativos de maneira independente. Nos anos 90, a virtualização era usada principalmente para recriar ambientes do usuário final em um único mainframe. Se um administrador de TI desejava implementar novo software, mas queria ver como ele funcionaria em uma máquina Windows NT ou Linux, utilizava tecnologias de virtualização para criar os diversos ambientes do usuário.Com o advento da arquitetura cliente/servidor, porém, a virtualização perdeu a força e parecia não ir muito além de uma novidade passageira da era do mainframe. É justo creditar o recente renascimento da virtualização no x86 aos fundadores da VMware, atual líder de mercado. A VMware desenvolveu o primeiro hipervisor para a arquitetura x86 na década de 90, plantando a semente para o boom da virtualização a que estamos assistimos.

Por que eu quereria a virtualização?
O frenesi da indústria em torno da virtualização não está diminuindo. Esta capacidade que “precisamos ter” transformou-se rapidamente em uma tecnologia que “vamos ter”, com novos players entrando no mercado e fornecedores de software empresarial incorporando a virtualização às versões mais novas de suas linhas de produtos. A razão é simples: quanto mais é utilizada, mais ela demonstra benefícios tangíveis, ampliando seu valor para a corporação.A consolidação de servidores, definitivamente, é o pote de ouro deste mercado. A virtualização se tornou a pedra fundamental da iniciativa de economizar dinheiro em toda empresa. Analistas da indústria revelam que entre 60% e 80% dos departamentos de TI estão engajados em projetos de consolidação de servidores. É fácil ver por que: ao reduzir o número e os tipos de servidores que suportam seus aplicativos de negócio, as empresas vislumbram uma economia de custos significativa. Menor consumo de energia, tanto dos próprios servidores quanto dos sistemas de refrigeração das instalações, e uso mais abrangente de recursos de computação existentes subutilizados se traduzem em vida mais longa do data center e resultados financeiros melhores. Além disso, é mais fácil gerenciar uma área de servidores menor.Especialistas, entretanto, reportam que a maioria das empresas começa a explorar a virtualização em ambientes de teste e desenvolvimento de aplicativos. A virtualização evoluiu rapidamente de um truque bem-feito para rodar sistemas operacionais extras a uma ferramenta mainstream para desenvolvedores de software. Hoje, são raros os aplicativos projetados para um único sistema operacional. Com a virtualização, desenvolvedores trabalhando em uma única workstation podem criar código que executa em muitos ambientes diferentes e, talvez mais importante, eles podem testar este código. Em linhas gerais, trata-se de um ambiente não-crítico e, portanto, um lugar ideal para fazer experiências.Depois que o desenvolvimento de aplicativos está azeitado e o data center é transformado em um pool altamente integrado de recursos de computação, a consolidação de storage e de rede começa a galgar a lista de tarefas. Também vale a pena considerar outros recursos e outras capacidades que a virtualização proporciona: alta disponibilidade, disaster recovery e balanceamento de carga de trabalho.

Como a virtualização pode beneficiar meu negócio?
Além de promover uma economia de custos potencialmente drástica, a virtualização pode tornar muito mais ágeis os negócios de uma organização. As empresas que usam clustering, particionamento, gerenciamento de carga e outras técnicas de virtualização para configurar grupos de servidores em pools reutilizáveis de recursos estão melhor posicionadas para satisfazer as exigências dinâmicas do negócio em relação a estes recursos. Além do mais, esta tecnologia propicia uma mudança fundamental no modo de os gerentes de TI encararem os recursos de computação. Quando o gerenciamento de máquinas individuais deixa de ser um desafio, o foco de TI pode mudar da tecnologia para os serviços que a tecnologia oferece.

Quais são os tipos de virtualização?
Existem três categorias básicas de virtualização: a virtualização de storage funde o armazenamento físico de múltiplos dispositivos de armazenamento em rede de forma que pareçam ser um único dispositivo de storage; a virtualização de rede reúne recursos de computação em uma rede ao dividir a largura de banda disponível em canais independentes que podem ser designados para um servidor ou dispositivo específico em tempo real, e a virtualização de servidores oculta a natureza física dos recursos de servidores -- incluindo o número e a identidade de servidores individuais, processadores e sistemas operacionais -- do software que roda neles.Esta última categoria é, de longe, a aplicação mais comum da tecnologia hoje e amplamente considerada a mola propulsora do mercado. A maioria das pessoas, quando usa o termo “virtualização”, provavelmente se refere à virtualização de servidores.

Que terminologia importante devo conhecer?
O que é hipervisor?Hipervisor é o componente mais básico da virtualização. É o software que desvincula o sistema operacional e os aplicativos de seus recursos físicos. Um hipervisor tem seu próprio kernel e é instalado diretamente no hardware, ou “bare metal”. Ele é, quase literalmente, inserido entre o hardware e o sistema operacional.O que é uma máquina virtual?Uma máquina virtual (MV) é um ambiente operacional auto-suficiente, ou seja, um software que funciona com, mas é independente de, um sistema operacional host. Em outras palavras, é uma implementação em software de uma CPU, independente de plataforma, que executa código compilado. Uma máquina virtual Java, por exemplo, executa qualquer programa baseado em Java (mais ou menos). As MVs têm de ser desenvolvidas especificamente para os sistemas operacionais nos quais rodam. As tecnologias de virtualização também são chamadas de “software dinâmico de máquina virtual”.

O que é paravirtualização?
Paravirtualização é um tipo de virtualização em que o sistema operacional inteiro roda sobre o hipervisor e se comunica com ele diretamente, resultando em melhor performance. Porém, os kernels do sistema operacional e do hipervisor precisam ser modificados para acomodar esta interação estreita. Um sistema operacional Linux paravirtualizado, por exemplo, é otimizado especificamente para rodar em um ambiente virtual. A virtualização total, em comparação, apresenta uma camada abstrata que intercepta todas as chamadas para recursos físicos.A paravirtualização se apóia em um subconjunto virtualizado da arquitetura x86. Avanços recentes em chips da Intel e da AMD estão ajudando a suportar esquemas de virtualização que não requerem sistemas operacionais modificados. “Vanderpool”, a tecnologia de virtualização da Intel no nível do chip, foi uma das primeiras inovações deste tipo. A extensão “Pacifica” da AMD provê suporte adicional à virtualização. Ambas são projetadas para simplificar o código de virtualização e melhorar potencialmente a performance de ambientes totalmente virtualizados.

O que é virtualização de aplicativos?
A virtualização na camada de aplicativos isola os programas do hardware e do sistema operacional, encapsulando-os como objetos movíveis independentes que podem ser deslocados sem afetar outros sistemas. As tecnologias de virtualização de aplicativos reduzem as alterações relacionadas a aplicativos no sistema operacional e mitigam os desafios de compatibilidade com outros programas.

O que é um appliance virtual?
Um appliance virtual não é, como o nome sugere, um hardware. É um aplicativo pré-fabricado e pré-configurado, empacotado com um sistema operacional dentro de uma máquina virtual. Um appliance virtual é um veículo de distribuição de software, apregoado pela VMware e outros fornecedores como uma maneira melhor de instalar e configurar software. Ao visar a camada de virtualização, ele precisa de um destino com um hipervisor. A VMware e outras empresas estão louvando o appliance virtual como uma maneira melhor de empacotar demonstrações, provas de conceito e avaliações de software.

O que é Xen?
O Projeto Xen desenvolveu e continua a evoluir um hipervisor open source gratuito para o x86. Disponível desde 2003 sob a GNU General Public License (Licença Pública Geral), o Xen roda em um sistema operacional host, sendo considerado uma tecnologia de paravirtualização. Iniciou como um projeto de pesquisa na Universidade de Cambridge, conduzido por Ian Pratt, que posteriormente saiu da universidade para fundar a XenSource, primeira empresa a implementar uma versão comercial do hipervisor Xen. Diversas grandes empresas agora suportam o Xen, incluindo Microsoft, Novell e IBM. A XenSource (compreensivelmente) e a Virtual Iron, uma startup na área de SAP, oferecem soluções de virtualização baseadas no Xen.

Qual são os benefícios da virtualização em termos de custos?
Departamentos de TI em toda parte estão sendo pressionados para fazer mais com menos. As tecnologias de virtualização proporcionam uma maneira direta e prontamente ‘quantificável’ de atingir esta meta ao reunir recursos de computação dispersos em pools compartilháveis.Os analistas estimam, por exemplo, que uma empresa mediana utiliza entre 5% e 25% de sua capacidade de servidor. Nestas empresas, a maior parte da energia consumida pelo hardware está apenas aquecendo a sala durante ciclos ociosos. O emprego de tecnologia de virtualização para consolidar servidores x86 subutilizados no data center gera uma economia de custo de única vez imediata e economias contínuas potencialmente expressivas.O impacto imediato mais óbvio vem da redução do número de servidores no data center. Menos máquinas significam menos consumo diário de energia, tanto dos próprios servidores quanto dos sistemas de refrigeração que as empresa precisam operar e manter para evitar que eles superaqueçam.A transformação de uma fazenda de servidores em um pool de computação altamente integrado também pode reduzir futuros gastos com hardware, ao mesmo tempo promovendo economias através de modelos de preço baseado em uso, por exemplo. Além do mais, uma estratégia de virtualização de servidores abre um espaço valioso em rack, proporcionando oportunidade de crescimento para uma empresa. Do ponto de vista de recursos humanos, um data center mais enxuto permite uma melhor alocação dos administradores.

Que tipos de desafios a virtualização apresenta?
Esta tecnologia muda o modo como um data center é gerenciado, administrado e operado. Antes da virtualização de servidores, por exemplo, você simplesmente entrava em um data center, perguntava ao administrador quais eram os cinco principais aplicativos da organização e ele mostrava as máquinas nas quais estes aplicativos estavam rodando. A virtualização desfaz este vínculo tradicional entre hardware e software.A desvinculação, entretanto, propicia conflitos de performance. Alguns aplicativos têm perfis cíclicos de performance, por exemplo. Um aplicativo de negociação de ações da West Coast e um aplicativo SIMEX rodando na mesma máquina vão se sobrepor em horários de pico do mercado, afetando a performance. Portanto, os administradores têm de pensar muito bem em como o data center virtualizado vai operar. Os grandes fornecedores de virtualização, normalmente, disponibilizam vastos recursos técnicos e pelo menos algum treinamento para explicar como suas soluções funcionam. Mas cada data center opera de uma maneira diferente e cabe aos administradores conhecer seus sistemas.

O que devo buscar em uma solução de virtualização?
Em uma palavra: gerenciamento. A tecnologia de hipervisor core que separa a pilha de aplicativos do hardware subjacente ruma para a comoditização. Os grandes fornecedores de software empresarial (Microsoft, Sun Microsystems, BEA Systems, Hewlett-Packard, BMC e CA, por exemplo) estão incluindo a tecnologia em seus pacotes de produtos e os fornecedores autônomos de virtualização estão dando-a. Eles diferem apenas na capacidade de disponibilizar ferramentas para gerenciar, monitorar e otimizar a alocação de recursos virtualizados. Procure soluções que fornecem ferramentas fáceis de usar para colher estatísticas e aplicar políticas dinâmicas de modo a melhor alocar os recursos físicos entre os consumidores virtuais destes recursos.Conseqüentemente, a inovação na arena da virtualização está acontecendo em um nível mais alto. Os produtos de próxima geração são totalmente voltados para gerenciamento. A VMware pressentiu os acontecimentos e deu a virada. O pacote VMware Infrastructure reúne servidores, storage e rede em um único pool de recursos. Soluções de virtualização empresarial, como o ESX Server da VMware, fundem CPUs, memória, rede, storage e aplicativos em pools altamente integrados de recursos de computação.A virtualização contribui muito para reduzir os requisitos físicos do data center, mas também pode elevar o nível de complexidade de gerenciamento destes servidores. Portanto, busque soluções que forneçam gerenciamento de sistemas cross-platform tanto para as máquinas virtuais quanto para as físicas.Além disso, você vai querer migrar os aplicativos legados e os sistemas operacionais existentes na sua organização, sem modificação, para partições virtuais. Com esta migração, será mais fácil aprimorar a performance destes aplicativos, mas você precisará de uma solução que suporte a integração da virtualização com ferramentas de gerenciamento legadas.A virtualização não se refere mais apenas a consolidação de servidores. Flexibilidade é outro benefício-chave da tecnologia. Em ambientes virtualizados é mais fácil mover, encapsular, arquivar e otimizar. Os fornecedores de virtualização líderes estão provendo capacidades de “migração em tempo real” que tornam a vida do administrador de rede mais fácil e produtiva.

0 comentários: