sexta-feira, 29 de agosto de 2008

Uso de Virtualização de Recursos Computacionais na Administração de Redes

Resumo: Escalabilidade significa adicionar hardware para manter e melhorar a performance de uma solução. Entretanto, apenas adicionar mais hardware pode não representar ganho de performance por parte da aplicação. Neste artigo, apresentar – se técnicas como o “Xen” e o “VMware” para que Tal habilidade seja vantajosa para um aproveitamento eficiente do hardware disponível.

Introdução

A virtualização de recursos computacionais é um tema recorrente em trabalhos de pesquisa e desenvolvimento envolvendo diversas áreas da computação. A abstração oferecida pelas máquinas virtuais permite mapear recursos reais de uma mesma arquitetura às necessidades de diferentes sistemas e aplicações, contribuindo para a flexibilidade, a portabilidade, a interoperabilidade, a segurança e a gerenciabilidade de sistemas de software,
Em um ambiente virtualizado, as tarefas de gerenciamento, escalonamento e alocação dos recursos disponíveis são executadas por um Monitor de Máquinas Virtuais(MMV). Este monitor virtualiza o hardware existente, oferecendo uma interface individual para cada máquina virtual, permitindo desta forma uma execução transparente e independente de uma arquitetura específica, sendo muito útil para administradores que buscam a consolidação de seus sistemas, aproveitando ao máximo o hardware disponível; alem de proporcionar um sistema mais seguro que nos casos em que os serviços executam todos sobre o mesmo sistema físico.
Dentre as soluções de virtualização mais populares atualmente, destacam-se Xen e VMware, ambas voltados à arquitetura Intel IA32.

Monitores de Máquinas Virtuais

O conceito de virtualização foi amplamente pesquisado e utilizado no início da década de 70, permitindo o compartilhamento dos recursos computacionais dos grandes mainframes entre as máquinas virtuais existentes, hoje obtém um melhor aproveitamento do alto poder computacional dos computadores modernos sendo utilizada como uma forma de interligar tecnologias. Neste contexto, a
virtualização constitui uma solução capaz de garantir a interoperabilidade entre tecnologias, de forma que o hardware virtualizado, independente da forma de implementação, possa ser acessado através de uma camada de abstração oferecida por um monitor de máquinas virtuais.
Um monitor de máquinas virtuais (MMV) é um sistema responsável pelo gerenciamento e alocação dos recursos do sistema hospedeiro entre diversas máquinas virtuais, podendo ser implementados utilizando virtualização clássica ou virtualização hospedada:

v Na implementação virtualização clássica, o monitor de máquinas virtuais é executado diretamente sobre o hardware possuindo o nível mais alto de privilégio de execução de instruções. Neste modelo, todas as chamadas de sistema são interceptadas pelo MMV para posteriormente serem executadas.

v Na implementação hospedada o monitor de máquinas virtuais executa sobre um sistema operacional existente, utilizando o nível mais baixo de privilégios. Neste modelo de implementação, o MMV utiliza tradução binária em tempo de execução para adaptar as instruções que necessitam de um maior nível de privilégios.
Xen

O monitor de máquinas virtuais Xen é baseado na abordagem clássica de
implementação de virtualização, onde o MMV possui o nível mais alto de privilégio;
o monitor Xen utiliza a técnica de paravirtualização para adaptar a execução dos sistemas operacionais virtualizados. Através da paravirtualização, Xen garante que os sistemas virtualizados não tenham acesso direto aos recursos disponíveis, permitindo desta forma uma virtualização eficiente sobre a arquitetura Intel x86.
A implementação do monitor Xen é dividida especificamente entre o monitor de máquinas virtuais (hypervisor) e os domínios Xen, que são a representação das máquinas virtuais existentes. Nesta abordagem, as máquinas virtuais são gerenciadas através de chamadas realizadas para um domínio especial, denominado Domain0, através do qual é possível inicializar e terminar máquinas virtuais. Internamente, o monitor Xen utiliza os recursos do Domain0 para ter acesso ao hardware e gerenciar a alocação de memória entre os demais domínios, a independência de hardware obtida pelo monitor Xen permite que máquinas virtuais sejam encapsuladas e migradas entre computadores com arquitetura virtualizada. Este processo de migração pode ser efetuado sem a interrupção dos serviços em execução sobre o sistema operacional virtualizado, tornando assim uma ferramenta auxiliar para administradores de redes e servidores permitindo a manutenção do hardware do computador hospedeiro quando necessário.

Vmware

O monitor de máquinas virtuais Vmware é utilizando a técnica de virtualização hospedada. O sistema é dividido em VMApp, que é a máquina virtual que executa no espaço de usuário do sistema operacional hospedeiro e VMDriver, que é um software que executa junto ao sistema operacional hospedeiro e processa as requisições feitas pelo VMApp.
A máquina virtual provida por VMware apresenta ao sistema operacional hospedado um conjunto fixo de dispositivos, como interfaces de vídeo, áudio e rede, o que anula a necessidade de desenvolvimento de novos controladores por parte do sistema operacional hospedado. Sempre que o sistema hospedado faz uma um acesso a algum dispositivo virtual, o MMV salva o contexto da máquina virtual e muda para o seu contexto (world switch), onde é feito o acesso ao dispositivo real e retornando ao contexto da máquina virtual assim que a requisição estiver completa. Utilizando essa arquitetura, VMware pode ser utilizado para executar a maioria dos sistemas operacionais disponíveis no mercado, sem necessitar de alteração do código dos mesmos.
A migração de uma máquina virtual para outro sistema hospedeiro é possível, porém com interrupção momentânea do sistema. É feita uma cópia da memória utilizada pela máquina virtual para o novo hospedeiro, bem como o estado atual da máquina virtual e o arquivo com as configurações do BIOS virtual. O sistema de arquivos da máquina virtual precisa estar armazenado em algum sistema de armazenamento compartilhado, como por exemplo um sistema de armazenamento conectado à rede - NAS.

Virtualização de Recursos e o Gerenciamento de Redes

Em ambientes distribuídos para a computação de alto desempenho, a virtualização surge como um mecanismo auxiliar na administração de clusters de computadores e grades computacionais. Em ambientes que necessitam
de gerenciamento eficiente de redes e servidores, uma arquitetura virtualizada
permite que diversas tecnologias sejam interligadas, auxiliando em diversas tarefas de administração dos recursos.
Servidores que utilizam virtualização oferecem vantagens em diversos aspectos como segurança e integridade dos processos em execução através da utilização de monitores de máquinas virtuais. Um exemplo de utilização de virtualização é encontrado nos servidores IBM Power5, onde a virtualização é explorada para garantir independência e integridade dos serviços em execução através da transparência obtida com a utilização de máquinas virtuais.
Um servidor que utilize virtualização de recursos permite que cada máquina virtual
hospede um serviço independente das demais, garantindo através do isolamento de hardware que as falhas ocorridas em um serviço não se propaguem para os demais.

Conclusão

Escalabilidade significa adicionar hardware para manter e melhorar a performance de uma solução.Entretanto, apenas adicionar mais hardware pode não representar ganho de performance por parte da aplicação, por isso o uso de ferramentas de virtualização vem se tornando popular em ambientes distribuídos. A virtualização permite executar múltiplos sistemas operacionais em um mesmo computador hospedeiro, cada qual com sua própria visão da arquitetura física subjacente. Tal habilidade é vantajosa para um aproveitamento eficiente do hardware disponível, além de trazer benefícios do ponto de vista da administração de sistemas. Alem de explorar as tecnologias de virtualização em sistemas em rede, com ênfase nas ferramentas Xen e Vmware.
Maicon Nascimento de Souza 104170132
Fonte:
http://www-usr.inf.ufsm.br/~boufleur/artigos/errc2006-xen.pdf

Nenhum comentário: