Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Prazer, computação em nuvem! Diogo Tavares da Silva contato: tavareko@gmail.com Um pouco sobre mim… Bacharel em Ciência da Computação (2012) UNESP-IBILCE Bolsista IC CNPq 2010-2011 e 2011-2012 Mestre em Ciência da Computação (2015) PPGCC da UNESP Bolsista CNPq 2013-2015 Membro do GSPD desde 2009 Grupo de Sistemas Paralelos e Distribuídos Linhas de pesquisa Sistemas Distribuídos Flexa (SAD) Simulação de Sistemas RTsim ( Tempo real) YASC ( gerador de simuladores) iSPD ( grid e cloud computing) Introdução Origem do termo e do conceito Características Tecnologias que permitiram a computação em nuvem Virtualização Modelos de Desenvolvimento Classes de serviço Exemplos de serviços de nuvem Mão na massa (Se Murphy permitir!) Agenda Computação em nuvem (cloud computing) Modelo de computação distribuida que oferece recursos computacionais (processamento, aplicações, armazenamento) sob demanda através da internet. Modelo utilitário Paga-se pelo tempo/quantidade de recursos utilizados água, energia elétrica, telefone, etc. Introdução Datacenters são projetados para suportar picos teóricos Ficam ociosos na maior parte do tempo amadurecimento de várias técnologias permitiram se aproveitar desses recursos subutilizados Introdução Vantajoso para usuários Redução dos gastos com infraestrutura física de T.I Vantajoso para provedores de serviço Infraestrutura permite atender ampla gama de usuários com necessidades distintas Introdução Evolução natural dos sistemas de computação Século XX Fábricas deixaram de ter estações de energia próprias para utilizar o sistema de rede elétrica recém criado Hoje Empresas reduzem investimentos em recursos computacionais próprios para utilizar serviços de computação em nuvem Introdução Apresentar conceitos fundamentais sobre computação em nuvem, para que ao fim desta palestra, se possa ter uma visão abrangente sobre esta tecnologia Apresentar algumas ferramentas relacionadas a esta tecnologia Objetivos Metáfora para internet Origem do termo “nuvem” Relatório de negócios da empresa Compaq (1996) Discutia o oferecimento de serviços de software através da internet Origem do termo “computação em nuvem” Atribuído à John McCarthy (1961) A computação em tempo compartilhado pode gerar no futuro um modelo de negócio em que poder computacional e o uso de algumas aplicações serão comercializados de forma utilitária, como ocorre com a água ou a energia elétrica, por exemplo. Origem do conceito NIST (National Institute of Standards and Technology) “... um modelo de negócio pay-per-use que permite, convenientemente, o acesso, por meio de rede, sob demanda, a um arranjo compartilhado de recursos computacionais configuráveis (rede, servidores, armazenamento, aplicações, serviços) que podem ser rapidamente providos e liberados com o mínimo esforço de gerenciamento ou interação do provedor de serviço” Definição de “Computação em nuvem” Autoatendimento Medição e pagamento por utilização Elasticidade Estrutura configurável amplo acesso Características Conceito exposto em 1961 Tecnologias existentes incapazes de implementar esse modelo “futurista” Anos 2000 Avanços de diversas tecnologias permitiram o surgimento da computação em nuvem Computação em nuvem: Soma de esforços Soma de Esforços Conceito chave de computação em nuvem Executar múltiplos S.O.s com pilhas de software arbitrárias em uma mesma infraestrutura física. Máquinas virtuais (VMs) Virtualização de hardware Como funciona? Camada de virtualização entre o hardware e os sistemas virtualizados Virtual Machine Monitor (VMM) ou hypervisor Controla o acesso das VMs aos recursos físicos do sistema gerencia o acesso a dispositivos controla o volume de recursos disponível para cada VM Virtualização de hardware Virtualização de hardware Exemplos de VMMs Oracle VirtualBox vmware ESXi Xen Project KVM ... Virtualização de hardware Exemplos de VMMs Oracle VirtualBox vmware ESXi Xen Project KVM ... Virtualização de hardware Alternativa mais leve e portável que a virtualização completa uso de contêineres aplicações são empacotadas juntamente com suas dependências. Portabilidade A virtualização ocorre no nível de processos Contêiner utiliza o kernel do sistema hospedeiro Virtualização x “Conteinerização” Exemplos de softwares de conteinerização LXC Docker Virtualização x “Conteinerização” 3 características da virtualização tornaram essa tecnologia atraente para seu uso em computação em nuvem Isolamento Consolidação Migração Características da virtualização Pacotes de software gerenciam o acesso de sistemas virtualizados aos recursos (discos, processamento, rede) dos elementos físicos distribuídos no sistema Virtual Infrastructure Manager (VIM) Controla os VMMs individuais Cria VMs, dimensiona e seleciona onde serão alocadas em quais recursos físicos balanceamento de carga, etc. Virtualização de datacenters Exemplos de VIMs vmware vSphere e vCloud Eucaliptus OpenStack OpenNebula Apache VLC Ferramentas amplamente utilizadas para a implementação de nuvens privadas e públicas. Virtualização de hardware Modo como uma infraestrutura de nuvem pode ser implementada. esta classificação se refere aos seguintes atores: Quem serão os usuários da nuvem? Quem serão os provedores de serviço? Modelos de desenvolvimento Nuvem pública Oferecer serviços de computação em nuvem de modo que qualquer indivíduo ou organização possa utilizar Paga-se pelo tempo/volume de recursos se houver custos associados Modelos de desenvolvimento Serviços de nuvem públicas: Google Cloud Platform Amazon Web Services Microsoft Azure Service Platform ... Modelos de desenvolvimento Nuvem privada Consiste em prover uma infraestrutura de nuvem para uma única organização, que agrupa um conjunto de usuários O provedor pode ser esta organização ou um terceiro Modelos de desenvolvimento Nuvem Comunitária A infraestrutura de nuvem é oferecida à um conjunto de organizações, que podem possuir interesses e metas em comum O provedor pode ser uma das organizações, um consórcio entre elas ou um terceiro Modelos de desenvolvimento Nuvem híbrida A infraestrutura de nuvem é implementada através da junção de dois ou mais modelos anteriores Comunicação realizada por padronização protocolos e formatos de dados Balanceamento de carga Implementa o conceio de “intercloud” (federação de nuvens) Nuvem de nuvens Modelos de desenvolvimento Os serviços oferecidos pela computação em nuvem são divididos tradicionalmente em três classes de serviços: IaaS (Infrastructure-as-a-Service) PaaS (Platform-as-a-Service) SaaS (Software-as-a-Service) Classes de serviço Busca oferecer toda infraestrutura de hardware (processamento, armazenamento, rede, etc) para se hospedar uma infraestrutura de software arbitrária Configuração semelhante à servidores físicos Configura-se um conjunto de intâncias de VMs, e instala-se a pilha de software desejada Configuram-se as redes virtuais e critérios de acesso Infrastructure-as-a-Service Exemplos de serviços de IaaS Google Compute Engine Amazon Elastic Computing Infrastructure-as-a-Service Esta classe de serviço oferece plataformas de desenvolvimento e hospedagem de aplicações A idéia principal é oferecer um ambiente onde o programador não necessita preocupar-se com a demanda de recursos utilizados pela sua aplicação Padronização de linguagens, protocolos, ferramentas Platform-as-a-Service Exemplos Google AppEngine Java, Python, PHP, Go Windows Azure Web Apps .NET, Python, Java, Node.js, PHP Platform-as-a-Service Esta classe de serviço busca oferecer software de uso rotineiro através de uma interface web acessível. Vantajoso por reduzir a necessidade de manter softwares instalados nos recursos físicos Classe de serviço muito popular Software-as-a-Service Exemplos Google Web Apps Drive Docs Gmail Hangouts Microsoft Office 365 Aplicativos mobile Software-as-a-Service powered by Google Docs! Software-as-a-Service powered by Google Docs! A grande maioria dos provedores de nuvem são pagos :( Mas praticamente todos oferecem versões de teste gratuítas :) Alguns exemplos a seguir... Gostei! Quero brincar disso! Gostei! Quero brincar disso! Google Cloud Platform Gostei! Quero brincar disso! Amazon Web Services Gostei! Quero brincar disso! Windows Azure Outros… Joyent GoGrid HP Public Cloud CloudSigma Dimension Data ... Gostei! Quero brincar disso! Executando instâncias da Amazon Elastic Computing Mão na massa
Compartilhar