A virtualização é apresentada na maioria das vezes como a capacidade de fazer um mesmo hardware ser explorado por diversos ambientes computacionais. No entanto, esse conceito é mais amplo, considerando virtualização como a técnica que cria ilusões dos recursos físicos para serem explorados pelas máquinas virtuais. Nesse contexto podemos identificar essa idéia em alguns serviços implementados na Internet.
A implementação de desktops remotos, discos virtuais remotos, computação em cluster e até mesmo de dados, como XML, JMS, entre outros, apresenta o uso de recursos como se estivessem fisicamente próximos. Na verdade os recursos são explorados fisicamente em servidores potentes, longe dos usuários. Em ambientes de rede encontramos a extensão da virtualização em cima das tecnologias que permitem a troca de dados entre máquinas distantes, as redes de computadores.
Partindo dessa análise podemos dividir a virtualização em redes de computadores em duas classes: virtualização de serviços Internet e da própria infra-estrutura de rede.
Virtualização de Serviços Internet
A internet é representada através de uma abstração que define níveis que implementam serviços e se comunicam com outros níveis. Isso cria a sensação de isolamento entre as tarefas, de forma que a alteração de uma delas possa não prejudicar as demais. Isso reforça o conceito de “um servidor por serviço”, o que traz alguns incômodos.
As máquinas geram um alto custo que inclui manutenção, energia elétrica, entre outros. Gerenciar diversas máquinas também não é fácil e isso gera ainda mais custos. Além disso, projetar servidores para executarem um único tipo de serviço os torna em grande parte ociosos. A virtualização surge então para suavizar esse problema.
Como as máquinas virtuais hóspedes podem executar serviços independentes e isolados, em sistemas operacionais diferentes e na mesma máquina, o desejo de “um servidor por serviço” é mantido. Todos os serviços, porém, são empregados no mesmo hardware o que aproveita todo o poder dos servidores. Isso é chamado consolidação de servidores e gera interessantes cortes no custo do serviço.
modelo de virtualização que guarda dados em servidores remotos chama-se computação em nuvem. Já bastante difundido na internet, permite que dados sejam guardados em servidores remotos e que um programa rode usando esses dados. A figura a seguir ilustra a computação em nuvem dispersando os dados pela rede:
Virtualização de infra-estrutura de rede
Outra utilização do conceito de virtualização consiste em criar componentes virtuais para a infra-estrutura de rede. Essa técnica começa quando uma máquina virtual usa drivers para acessar a rede. Tipicamente, os drivers simulam o comportamento das camadas de rede e enlace, permitindo que as aplicações na máquina virtual enviem e recebam dados. A interface física de rede, no entanto, deve ser compartilhada entre as máquinas virtuais, o que normalmente é feito colocando-se a placa de rede em modo promíscuo e o driver de rede faz a multiplexação utilizando a técnica de token ring.
Pode-se ainda emular os próprios componentes de hardware da infra-estrutura de rede e não estão nas máquinas virtuais, como switches e roteadores. São chamados equipamentos de interconexão. Atualmente existem três formas de executar essa emulação.
VMWare, Microsoft e Citrix oferecem um produto que inclua, além da máquina virtual, suporte para uso de equipamentos de interconexão virtuais. Já a solução da Vyatta consiste em criar máquinas virtuais já com esse propósito, pois possuem uma camada de software que simula esses equipamentos. A Cisco, através da linha Catalyst, oferece um hardware projetado para suportar equipamentos de interconexão virtuais.
Assinar:
Postar comentários (Atom)
0 comentários:
Postar um comentário