Computação em Nuvem
Transcrição
Computação em Nuvem
Computação em Nuvem (Cloud Computing) Pesquisa & Desenvolvimento Santo André: 20 de fevereiro de 2013 Características de um bom Data Center Bom Desempenho Escalabilidade Alta Disponibilidade Economia Gerência de Recursos 2 Capacidade x Demanda Fonte: M. Armbrust, Above the Clouds: A Berkeley View of Cloud Computing, 2009. 3 Solução: Computação em Nuvem Alocação de recursos sob demanda Recursos virtualmente infinitos Computação como utilidade Elasticidade Atendimento de demandas variáveis Transferência de responsabilidade (terceirização) Eliminação de compromisso financeiro prévio dos usuários 4 Computação em Nuvem Computação em Nuvem se refere a Aplicações usados como serviços pela Internet Sistemas de hardware e software em datacenters que oferece esses serviços O hardware e software de datacenter é o que se chama de Nuvem “Pay-as-you-go” Problemas: garantia de desempenho (SLA) e segurança Bom para startups e para “cloud burst” 5 Por que o nome “Nuvem”? Porque redes (e particularmente a Internet) são frequentemente representadas como nuvens, por motivos de simplificação Numa aplicação de Nuvem, o software não está instalado na máquina cliente nem no servidor, ou os servidores não estão fisicamente instalados na organização 6 O que é Computação em Nuvem? Nuvem = uma camada conceitual sobre uma infraestrutura computacional que disponibiliza os recursos de software e hardware através de uma interface bem definida Infraestrutura computacional Reconfiguração Dinâmica Transparência de Localidade Modelo pague-pelo-uso 7 Agentes Usuários Desenvolvedor Aplicação 1 Aplicação 2 Desenvolvedor Recursos Físicos 8 NIST Definition of Cloud Computing Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction This cloud model is composed of five essential characteristics, three service models, and four deployment models 9 NIST: Essential Characteristics On-demand self-service Broad network access Resource pooling Rapid elasticity Measured service 10 NIST: Service Models Software as a Service (SaaS) Ex.: Google Doc, webmail Platform as a Service (PaaS) Ex.: Google App Engine, Microsoft Azure Ex.: WSO2 Stratos Infrastructure as a Service (IaaS) Ex.: Amazon AWS, Rackspace, Flexiscale Ex.: OpenNebula, Eucalyptus, OpenStack, Nimbus 11 NIST: Deployment Models Private cloud Community cloud Public cloud Hybrid cloud 12 Projeto AltoStratus 13 Projeto AltoStratus AltoStratus: Soluções de Middleware para Composição, Execução e Gerenciamento de Serviços em Nuvens Híbridas e Heterogêneas Subprojeto UFABC/UFPE Especificação e Implementação de Mecanismos de Criação Automática e Execução de Serviços Compostos Virtuais 14 Objetivo Propor, especificar, implementar, implantar e avaliar técnicas e mecanismos de middleware para composição, execução e gerenciamento de serviços em ambiente de nuvens computacionais híbridas e heterogêneas Conjunto de serviços será desenvolvido para um ambiente de nuvens híbridas e heterogêneas Escalonamento, segurança, composição de serviços e gerência de workflows, tolerância a falhas, adaptação de nuvem, implantação de aplicações, gerenciamento de aplicações, criação, execução e gerenciamento de serviços virtuais em nuvem 15 Parcerias Coordenação Geral Coordenadora: Thais Batista (UFRN) Vice-coordenador: Nabor Mendonça (Unifor) Subprojeto UFRN/PUC-Rio Coordenadora Local: Thais Batista (UFRN) Subprojeto UNICAMP/UFRGS Coordenador Local: Nelson Fonseca (Unicamp) Subprojeto UNIFOR/UFPE/PUC-Rio Coordenador Local: Nabor Mendonça (Unifor) Subprojeto UFABC/UFPE Coordenador Local: Carlos Kamienski (UFABC) Coordenador Adjunto: Stenio Fernandes (UFPE) 16 Plano de Trabalho: Ação 4 Especificação e Implementação de Mecanismos de Criação Automática e Execução de Serviços Compostos Virtuais Atividade 4.1: Especificação de uma terminologia e um modelo integrador de composição: serviços, informação, rede, etc. Atividade 4.2: Desenvolvimento de uma ferramenta para criação de serviços baseada na composição de serviços e de informação Atividade 4.3: Desenvolvimento de algoritmos para composição automática de serviços Atividade 4.4: Desenvolvimento de uma ferramenta para execução de serviços compostos Atividade 4.5: Desenvolvimento de um protótipo que integre os componentes desenvolvidos através de um cenário criado com fins didáticos e de avaliação Atividade 4.6: Execução de testes e avaliações 17 Cenário Um empreendedor, usuário de TIC, deseja iniciar um novo serviço na Internet, possuindo apenas uma boa ideia e um cartão de crédito Ele acessa um serviço de criação de novos serviços para a Internet onde tem os recursos necessários para dar vazão à sua criatividade e modelo de negócio Ao final, é gerado um “código” padrão para o serviço capaz de ser executado em qualquer ambiente que o compreenda 18 Cenário O empreendedor negocia com um serviço de execução de serviços (provedor de nuvem) para que a página da sua empresa entre em operação Também pode ter acesso a um serviço de gerenciamento para acompanhar a execução do serviço A atividades do empreendedor poderão ser realizadas a partir do seu PC e com um mínimo de intervenção de um profissional da área Desde que todos os componentes (sub-serviços) necessários para a criação do seu novo serviço já estejam disponíveis em algum local 19 Criação/Execução/Gerenciamento de Serviços em Nuvem Computacional Service Code Se Pr Bi Po Service Creation Service Execution Service Management 20 Criação/Execução de Serviços em Nuvem Computacional Service Creation Business Analyst Output Service Execution Systems Developer Service Guideline Service Designer Service Code Service Builder Se The Internet (Cloud) Pr Bi Po Front-end Designer GUI Designer Service GUI 21 An Integrated Composition Model for Collaboration in the Cloud IEEE LatinCloud 2012 22 Modelo Integrado de Composição para Nuvem Composição, Colaboração e Virtualização Composição Computacional Mecanismo de colaboração onde diferentes entidades são combinadas para gerar uma nova entidade virtual de valor agregado, que pode ser acessada de maneira transparente através de uma interface única Tipos de Composição Composição de Serviços Composição de Informação Composição de Recursos Composição de Redes Composição de Nuvem 23 Composição de Serviços Orquestração, Coreografia, Fusão Fusão 24 Composição de Informação Modelo de Dados, Modelo de Informação, Modelo de Serviços S S S S I I D S Composed Data Model D 25 Composição de Recursos Máquina, Memória, Armazenamento e CPU Composed Machines (virtual) #1 Server #1 #2 Server #2 Cloud #1 #3 Server #3 Cloud #2 26 Composição de Redes Roteamento, Comutação, Túnel, Controle e Compartilhamento Composed Network - Virtual Cloud #1 Cloud #2 Cloud #3 Cloud #4 27 Composição de Nuvem Computação em Nuvem: Nova Visão Composição de múltiplas entidades computacionais de diferentes classes que colaboram para criar uma nova entidade virtual, oferecida aos usuários “como um serviço” Cloud Composition Service Composition Information Composition Resource Composition Network Composition 28 Arquitetura de Composição User Middleware SaaS Middleware SaaS Service Composition Cloud Middleware PaaS Middleware PaaS Information Composition IaaS Middleware IaaS Resource Composition Network Composition Resource Middleware 29 Cenário 1 Services Service Composition Orchestration Se Information Se Pr Bi Pr Bi Po Po Resources Network Composition Netorok Tunnel 30 Cenário 2 Service Composition Ink-Merger Information Composition Se Se Pr Bi Po Information Model Pr Bi Po Network Composition Roteamento 31 E2ECloud: Protótipo para Criação e Execução de Serviços Compostos Virtuais Fim a Fim Demo no IEEE LatinCloud 2012 32 Cenário de Uso Service Creation (SaaS) Service Developer Se Pr Bi Po Cloud #1 (IaaS / SaaS) User 1 User 2 Service Code User 3 Cloud #2 (IaaS) Cloud #3 (IaaS) 33 Arquitetura do Protótipo Service Creation Tool Cloud Middleware Service Code Se Pr Bi Po Placement & Elasticity Services self-configuration self-optimization self-healing UFABC private cloud Load Generator Amazon public cloud UFPE private cloud Google public cloud Cloud Infrastructure 34 Ferramenta de Criação de Serviços Servidor (Tomcat7) COMPOSER GERADOR DE CÓDIGO CONTAS DE USUÁRIO BASE REPOSITÓRIO GERAL (Serviços e Entidades) INTERFACE GRÁFICA (Servidor) GWT RPC BASE-GUI INTERFACE GRÁFICA (Cliente) Cliente (Navegador) 35 Ferramenta de Criação de Serviços 36 Middleware: Visão Geral 37 Middleware: Arquitetura 38 Posicionamento: OpenNebula O OpenNebula realiza o posicionamento FrontEnd faz o posicionamento dos Worker Nodes A implementação do deploy de um serviço composto, no entanto requer vários procedimentos Criar VMs para o serviço composto (workflow BPEL) Pegar endereços IP para cada uma Chamar OpenNebula para realizar posicionamento Iniciar monitoramento para elasticidade 39 Elasticidade e Balanceamento de Carga Elasticidade realizada no nível de OpenNebula e Xen deve ficar visível para a aplicação Algumas soluções: DNS, Aplicação (Apache...) 40 Elasticidade Todos os sub-serviços são monitorados em um serviço composto Métricas: uso de CPU e memória Uso de técnica de histerese para evitar oscilação Criação e remoção de VMs demora algum tempo e não pode oscilar muito Problemas com o tempo de criação de VMs Cenário: Geradores de código rodando na Amazon 41 Outros Projetos Flexibilizando o Datacenter com Computação em Nuvem e Redes Definidas por Software CNPq: Edital Universal 2012 Desenvolvimento de Serviços em Nuvem Computacional CNPq: Bolsa PQ 2011 Gerenciamento Autonômico de Rede Elétrica Inteligente na Nuvem Computacional UFABC: Projeto de mestrado 42 Computação em Nuvem (Cloud Computing) Santo André: 20 de fevereiro de 2013
Documentos relacionados
Mercado de TI, Cloud Computing, SaaS, PaaS e IaaS
completo de construção e entrega de aplicações web e serviços totalmente disponíveis a partir da Internet. O PaaS é análogo ao SaaS, exceto que, ao invés de software entregue pela web, é uma plataf...
Leia mais