Eucalyptus

Post on 07-Aug-2015

21 views 2 download

Transcript of Eucalyptus

The Eucalyptus Open-The Eucalyptus Open-source Cloud-computing source Cloud-computing SystemSystem

Janaina SiqueiraLara WilpertMarcelo ScheidtRenata Silva

SumárioSumárioIntrodução

Trabalhos Correlatos

Eucalyptus Design

Conclusões

Visão GeralVisão GeralIntrodução:

-Abordagem sobre utilização de Cloud Computing. -Apresentação de algumas dificuldades no gerenciamento de sistemas em cloud.-Apresentação da solução proposta com o Eucalyptus.

Visão GeralVisão GeralTrabalhos Correlatos:

-Citação de outras soluções existentes na área:

Amazon EC2/S3, Google AppEngine e Salesforce

UsherEnomalismCluster-on-demand

-Diferenças do Eucalyptus

Visão GeralVisão GeralEucalyptus Design:

-Características da estrutura do Eucalytus-Apresentação de seus principais componentes (camadas):

Node ControllerCluster ControllerStorage ControllerCloud Controller

Visão GeralVisão GeralEucalyptus Design:

-Apresentação do “módulo”: Virtual Network OverlayAborda questões relacionadas com a inter-conectividade entre as máquinas virtuais.

Conclusões:-Apresentação das conclusões obtidas

IntroduçãoIntrodução

Nos últimos anos a utilização de sistemas de computação em nuvem ganhou popularidade.

São procurados devido a disponibilidade de dados e recursos computacionais que oferecem.

IntroduçãoIntroduçãoNormalmente, os usuários escolhem os

recursos, considerando: arquitetura de hardware, memória, capacidade de armazenamento, conectividade de rede, e ocasionalmente, localização geográfica.

Recursos disponibilizados formam um sistema heterogêneo.

IntroduçãoIntroduçãoVários avanços foram feitos em HPC e

Grid Computing para criação de recursos padrões, porém o processo de localização de recursos, permanece, de alguma forma, complicado para usuários com necessidades de recursos complexos.

IntroduçãoIntroduçãoA maioria dos sistemas operando

atualmente contam com uma infra-estrutura que é invisível aos usuários.

A falta de ferramenta de gerenciamento é um problema.

Mantivemos o foco na camada baixa do sistema de computação em nuvem – IaaS.

IntroduçãoIntroduçãoEucalyptus é um sistema de código

aberto que usa infra-estrutura computacional e de armazenamento, comumente disponível para grupos de pesquisa acadêmica, para fornecer uma plataforma modular e aberta que possibilita instrumentação experimental e estudo.

IntroduçãoIntrodução

Eucalyptus é composto por vários componentes que interagem uns com os outros através de interfaces bem definidas, que serão detalhadas neste trabalho.

IntroduçãoIntroduçãoSerão abordadas questões cruciais de sistemas

de computação em nuvem, incluindo a instanciação agendada de VM’s, o uso de armazenamento de dados em VM’s, interfaces administrativas para computação em nuvem, construção de redes virtuais, definição e execução dos acordos de nível de serviço (nuvem/usuário e nuvem/nuvem) e interfaces de usuários de computação em nuvem.

Trabalhos CorrelatosTrabalhos CorrelatosO estudo de virtualização de máquinas

possibilitou a criação de novos mecanismos para prover recursos aos usuários;

Influenciou o design de hardwares que suportem operações de sistemas transparentes;

A arquitetura “correta” para virtualizações ainda é um campo de estudo aberto.

Trabalhos CorrelatosTrabalhos CorrelatosAmazon EC2/S3, Google AppEngine e

Salesforce mantêm uma infra-estrutura proprietária com interfaces abertas.

Usher: Framework de gerenciamento de máquinas virtuais open-source.

Enomalism: Software open-source de infra-estrutura para nuvens.

Cluster-on-demand: Focado em prover máquinas virtuais para aplicações científicas da computação.

Trabalhos CorrelatosTrabalhos CorrelatosDiferenças do Eucalyptus:

◦Projetado para ser fácil de instalar e não intrusivo;

◦Altamente modular;◦Interface é baseada na popular API da

Amazon;◦Possui uma camada de rede virtual que

isola o tráfego de diferentes usuários como também permite que dois ou mais clusters pertençam aparentemente a mesma LAN.

Eucalyptus DesignEucalyptus DesignSimples, Flexível e Modular;Hierarquizada, refletindo as aplicações

acadêmicas;Usuários podem iniciar, controlar,

acessar e encerrar MV exatamente da mesma maneira que usuários interagem com a Amazon EC2;

Dividida em 4 componentes principais.

Camadas do Camadas do EucalyptusEucalyptus

CamadasCamadasNode Controller: Controla a

execução, inspeção e o encerramento de VM no host em que está rodando.

Cluster Controller: Coleta informação sobre a execução de VM em nós específicos e realiza o agendamento dessas execuções.

CamadasCamadasStorage Controller: Realiza o

armazenamento e o acesso de imagens de máquinas e dados dos usuários.

Cloud Controller: É o ponto de acesso na nuvem para usuários e administradores, além de coletar informações sobre os recursos globais e realizar agendamentos.

Node ControllerNode ControllerRealiza requisições para descobrir os

recursos físicos do nó:◦Número de núcleos;◦Tamanho da memória;◦Espaço disponível em disco.

Monitora os estados das instâncias virtuais;

describeResource e describeInstances.

Node ControllerNode ControllerPara iniciar uma instância o controlador

faz uma cópia dos arquivos da instância de um repositório, cria um novo acesso à camada de rede virtual para e avisa para o supervisor para iniciar a máquina.

Para parar uma instância o controlador avisa o supervisor para encerrar a máquina virtual, desfaz o acesso a rede e limpa os arquivos associados a ela.

ControladorControlador de Clusterde Cluster

● Executado em máquina que é porta de entrada para o cluster ou qualquer máquina que possua conectividade com NC e CLC.

● Operações semelhantes a NC, mais com volume maior:● RunInstances, describeInstances,

terminateInstances, describeResources.

Controlador de ClusterControlador de Cluster

● Principais funções:● Agendar execuções de instâncias.● Controlar a Rede Virtual Sobreposta● Recuperar ou enviar informações sobre

Ncs.

Controlador de ClusterControlador de Cluster

● Solicitação para executar conjunto de instancias:● Verifica cada NC, através de

describeResource● envia runInstance ao primeiro NC que

tiver recursos livres suficientes para hospedar a instância

Controlador de ClusterControlador de Cluster

● Solicitação para descrever recursos (describeResource)● recebe uma lista das características do

recurso desejado para uma determinada instância;

● Calcula quantas instâncias simultâneas de um tipo específico podem ser executadas em seu conjunto de Ncs e repassa esse número ao CLC.

Virtual Network OverlayVirtual Network Overlay● Interconectividade entre instâncias.● Requisitos de redes abordados pelo

Eucalyptus:●Conectividade;●Isolamento;●Performance.

Virtual Network OverlayVirtual Network Overlay

● Toda VM controlada pelo Eucalyptus deve ter conectividade de rede com as outras e pelo menos uma das instâncias que fazem parte de um conjunto de VMs deve ter conectividade com a Internet.

● Acesso de administrador pode causar problemas de segurança.

● CC inicia e termina instancia de Vms na rede.

Virtual Network OverlayVirtual Network Overlay

Três modos de configurações de rede:● System: conecta Vms diretamente

ao software Ethernet Bridge, conectado diretamente a rede fisica real.

● Endereço IP é atribuído a máquina virtual pelo servidor DHCP

Virtual Network OverlayVirtual Network Overlay

Static● O administrador configura uma lista

de pares MAC/IP● Cada nova instancia recebe MAC/IP

livre.● Libera Tupla quando a máquina é

terminada.

Virtual Network OverlayVirtual Network Overlay

Managed● Eucalyptus gerencia e controla

totalmente as redes de Vms.● Fornece:

● Isolamento de trafego;● Definições de regras de ingresso;● Atribuição dinamica de IP público.

Virtual Network OverlayVirtual Network Overlay

● Cada rede recebe uma tag VLAN e um endereço de subrede único.

● Cada conjunto de VMs em uma rede é isolada das VMs das outras redes.

● Usuário pode definir regras de ingresso que permitem acesso de redes externas.

Virtual Network OverlayVirtual Network Overlay

Virtual Network OverlayVirtual Network Overlay

● Linux iptables – implementar e controlar regras de negócios.

● Administradores especificam uma lista de IPs públicos que não são usados.

● Usuários podem solicitar dinamicamente um IP público dessa lista e atribuir a instancia VM

● NAT (SNAT/DNAT)

Virtual Network OverlayVirtual Network Overlay

Virtual Network OverlayVirtual Network Overlay

System e Static● Comunicação com velocidade, mas

sem isolamento das redes.

Managed● Controla e gerencia o isolamento das

redes, perdendo um pouco de performance.

Storage Controller (Walrus)Storage Controller (Walrus)

● Walrus é um serviço de armazenamento de dados que utiliza tecnologias web services (Axis2, Mule).

● Possui interface compatível com a Amazon’s Simple Storage Service (S3).

Storage Controller (Walrus)Storage Controller (Walrus)

● Walrus fornece dois tipos de funcionalidades: transferência de dados dentro e fora da nuvem assim como nas instâncias que iniciaram nos nodos e armazenamento de imagens de VM.

● Walrus suporta transferência concorrente e serial de dados.

● Contribuindo com a escalabilidade, não há locking de escrita.

Storage Controller (Walrus)Storage Controller (Walrus)

● Walrus responde com MD5 fazendo verificação no objeto que estava armazenado.

● Lista de controle de acesso sobre o objeto requisitado.

● Escritas e leituras são transmitidas por HTTP.● VM root filesystem, kernel e ramdisk images são

empacotadas e carregadas utilizando a ferramenta EC2 da Amazon.

Storage Controller (Walrus)Storage Controller (Walrus)

● Walrus mantém uma cache de imagens.● Walrus é modular e pode ser

customizado de acordo com as necessidades do usuário.

Storage Controller (Walrus)Storage Controller (Walrus)

Cloud ControllerCloud Controller

Cloud ControllerCloud Controller

● Recursos virtualizados são gerenciados pela Cloud Controller (CLC).

● Cloud Controller é uma coleção de web services que são agrupadas em três categorias:● Resource Services;● Data Services;● Interface Services.

Cloud ControllerCloud Controller

● The Resource Services controla as requisições e interage com CCs para alocar e desalocar resursos físicos.

● Uma simples representação do estado de recurso de sistema (SRS) é dada através da comunicação com CC’s e é usado na avaliação e realização de requisições de usuário (de acordo SLAs).

Cloud ControllerCloud Controller

● O papel do SRS é executado em dois estágios:

● 1º: Quando a requisição de usuário chega.● Uma VM criada consiste no SRS reservar

recursos para ela.● 2º: SRS controla o estado de alocação de

recurso.

Cloud ControllerCloud Controller

● O controle de admissão e as métricas do SLA funcionam em conjunto: asseguram que os recursos não sejam “super utilizados” e conservam uma visão de recurso disponível para amenizar a possibilidade de falhas.

● Um exemplo de implementação permite que usuários controlem a cluster a ser usada na alocação de VM em “zone” (terminologia utilizada pela Amazon) específica.

Cloud ControllerCloud Controller

● Data Services trata da criação, modificação e armazenamento de sistema e dados do usuário.

● Usuários podem consultar os serviços para ter informação dos recursos disponíveis (imagens e clusters).

● O Resource Services interage com Data Services.

Cloud ControllerCloud Controller

● Uma interface web é oferecida por usuários e administradores da cloud. Os administradores diferem-se de usuários por poder gerenciar contas desses usuários e podem inspecionar componentes disponíveis do sistema.

Cloud ControllerCloud Controller

● A coleção de interfaces web services informa as entradas para requisições de usuários usando várias especificações (exemplos: EC2’S SOAP & “Query”, S3’s SOAP & REST).

ConclusãoConclusão

● O sistema EUCALYPTUS é construído para permitir que administradores e pesquisadores possam implementar uma infraestrutura para criação de VM controlada por usuário e controle de recursos existentes.

● Sua hierarquia voltada para o público acadêmico.

● É open source.

ConclusãoConclusão

● O sistema é altamente modular, cada módulo é representado por uma API bem definida permitindo assim que pesquisadores possam substituir componentes para teste na nova solução cloud computing.

● O sistema apresenta uma interface similar com a utilizada na Amazon EC2 e S3. Então o usuário que é familiarizado com EC2 e S3 terá facilidade na instalação do EUCALYPTUS.