Computação em Nuvem

Por Felipe Bogossian, Luiz Felipe Maciel, Renato Sampaio e Rodrigo Couto

Anterior Próximo

EUCALYPTUS

O EUCALYPTUS [6] é um arcabouço para a implementação de um serviço de Computação em Nuvem do tipo IaaS. Esse arcabouço é desenvolvido em código aberto e possui como objetivo fornecer à comunidade científica uma plataforma para desenvolver experimentos e estudos de Computação em Nuvem. A principal motivação para o EUCALYPTUS é a ausência de plataformas abertas para o estudo científico de Computação em Nuvem. Isso ocorre pois a maioria das soluções são proprietárias e não são propícias à experimentação. A principal função do sistema proposto é a de permitir ao usuário iniciar, controlar, acessar e terminar máquinas virtuais completas usando uma API (Application Programming Interface - Interface de Programação de Aplicativos) desenvolvida pela Amazon. Essa API é a mesma utilizada na solução Amazon EC2( Seção Sistemas Comerciais ). Assim, os usuários do EUCALYPTUS interagem com o sistema utilizando as mesmas ferramentas que necessitam para interagir com o Amazon EC2. O sistema proposto suporta máquinas virtuais que utilizam o Xen [2] como plataforma de virtualização, mas seus desenvolvedores planejam adicionar o suporte a outras plataformas. A arquitetura do EUCALYPTUS é modular e, como possui código aberto, facilita que pesquisadores desenvolvam diversas modificações à sua estrutura original. A Figura 3 apresenta os principais componentes dessa arquitetura. Esses componentes são implementados como Web Services e são detalhados a seguir utilizando informações disponíveis em [6]:

Topo

-Controlador de Nó:
Esse componente executa em todo o nó, ou máquina física, designado para rodar máquinas virtuais. O Controlador de Nó é responsável pelo controle das máquinas virtuais de uma determinada máquina física. Assim, esse componente pode iniciar, parar e colher informações das máquinas virtuais. Essas ações sobre a plataforma de virtualização são realizadas pela comunicação entre Controlador de Nó e o hypervisor das máquinas físicas. O hypervisor, por sua vez, consiste em um componente da plataforma de virtualização que realiza o gerenciamento do hardware da máquina física para o seu compartilhamento entre as diversas máquinas virtuais.

Topo

-Controlador de Cluster:
Esse componente executa em uma máquina que atua como cluster de máquinas físicas designadas para rodar máquinas virtuais, ou pode também executar em qualquer máquina que tenha conectividade de rede com essas máquinas físicas. A partir de requisições aos Controladores de Nó, esse componente recolhe informações sobre as máquinas virtuais de um Cluster, ou de uma Rede Privada, e realiza o escalonamento das requisições de instanciação das máquinas virtuais entre os diversos Controladores de Nó. Esse componente também é responsável por gerenciar redes overlay, que são formadas cada uma por um grupo de instâncias das máquinas virtuais. Muitas das funções do Controlador de Cluster são semelhantes às do Controlador de Nó, tendo como diferença básica apenas o fato que as funções do segundo singulares, ou específicas de um Nó, e as do primeiro são plurais, ou seja, envolvendo um conjunto de nós. Um exemplo de utilização do Controlador de Cluster é quando o Controlador de Nuvem realiza uma requisição de instanciação de máquinas virtuais. Assim, o Controlador de Cluster deverá conferir os recursos disponíveis informados por cada Controlador de Nó e decidir qual máquina física deverá instanciar as máquinas virtuais requisitadas pelo Controlador de Nuvem.

Topo

-Controlador de Armazenamento(Walrus):
Esse componente é um serviço de armazenamento do tipo put/get que utiliza tecnologias de Web Services como Axis2 [7] e Mule [9], e possui uma interface com o usuário compatível com a API Amazon Simple Storage Service (Amazon S3) [10]. Com essa API os usuários podem colocar e retirar dados do Walrus. Além de armazenar dados do usuário, o Walrus armazena imagens de máquinas virtuais. Uma imagem de máquina virtual possui o sistema de arquivos, o kernel e o ramdisk necessários para instanciar cada máquina virtual. Os Nós da arquitetura podem enviar imagens de máquina virtual para o Walrus bem como baixá-las para poderem instanciar as máquinas. Para esse envio e recebimento de imagens, os Nós utilizam ferramentas do Amazon EC2 ( Seção Sistemas Comerciais ).

Topo

-Controlador de Nuvem:
Esse componente é a porta de entrada do sistema para usuários e administradores da infraestrutura. Esse componente é um conjunto de Web Services que são agrupados nas seguintes funções:

1-Serviços de Recursos: Esses serviços são responsáveis por atender às requisições dos usuários, como manipulação das propriedades das máquinas virtuais ou das redes overlay, bem como requisições de informações sobre o estado das máquinas virtuais. Para atender às requisições dos usuários, os Serviços de Recursos se comunicam com os Controladores de Cluster objetivando alocação, desalocação ou disponibilização de informações dos recursos destinados às máquinas virtuais. Uma requisição será atendida dependendo do SLA firmado entre o provedor de infraestrutura e o usuário. Os Serviços de Recursos realizam Controle de Admissão dependendo do SLA e da disponibilidade de recursos.
2-Serviços de Dados: Esses serviços controlam o armazenamento de dados dos usuários e de estado do sistema. Assim, os usuários podem utilizar esses serviços para obterem informações sobre os recursos do sistema, como de imagens de máquina virtual ou dos Clusters, e manipular parâmetros, como configurações da rede overlay>. Os Serviços de Recursos utilizam as informações dos Serviços de Dados para verificar os parâmetros das requisições dos usuários.
3-Serviços de Interface: Nesses serviços são oferecidas interfaces para usuários ou administradores obterem acesso ao sistema e alterarem suas propriedades. Essas interfaces são implementadas por interfaces de programação, como o SOAP ou por Query, ou também por meio de uma interface web. O principal objetivo desses serviços é tornar transparente ao usuário o uso de protocolos de comunicação entre os componentes internos do sistema. Assim, os serviços realizam a tradução dos comandos executados pelos usuários, seja pelas interfaces de programação ou pela interface web, em comandos internos ao sistema.

Topo

Figura 3 - Arquitetura do EUCALYPTUS. Adaptada de [6].
O EUCALYPTUS é oferecido no sítio http://www.eucalyptus.com/ . Esse sistema é bastante referenciado por artigos científicos e já é utilizado por alguns sistemas como o Ubuntu Enterprise Cloud [11].

Anterior Topo Próximo.

Design downloaded from Zeroweb.org: Free website templates, layouts, and tools.