Tópicos em Computação II
Computação em Nuvem
1
UNIVERSIDADE ESTADUAL DE MATO GROSSO DO SUL
Curso de Ciência da Computação
Parte 2.2
Ementa
● 1) Introdução
● 1.1) Introdução a Computação em Nuvem ● 1.2) Introdução a Datacenter e Virtualização
● 1.3) Introdução a Service Oriented Archictecture (SOA) ● 2) Princípios da Computação em Nuvem
● 3) Modelos de Negócios das Nuvens ● 3.1) IaaS
● 3.2) PaaS ● 3.3) SaaS
● 3.4) Papéis e Cenários das Nuvens ● 4) Provedores de Nuvens
● 4.1) Amazon ● 4.2) Google
Tecnologia de
Computação em Nuvem
Tecnologia de Computação em Nuvem
• Armazenamento da Computação em Nuvem; • Hardware e Infraestrutura;
Armazenamento na
Computação em Nuvem
Armazenamento na Computação em Nuvem
• Os prestadores de serviços de nuvem armazenam os dados de
um cliente;
• Traz uma série de vantagens, como poder acessar de qualquer
Armazenamento na Computação em Nuvem
7
•
Princípios:
• Um assinante copia os arquivos pra um servidor através da
Internet e em seguida grava os dados;
• Quando um cliente quer recuperar um dado, ele acessa o
Armazenamento na Computação em Nuvem
•
Princípios:
• Existem vários sistemas de armazenamento;
• Alguns orientados para nichos de e-mail e fotos digitais;
• Outros armazenam qualquer tipo de dados;
• No nível mais rudimentar, um sistema de armazenamento
Armazenamento na Computação em Nuvem
9
•
Princípios:
Armazenamento na Computação em Nuvem
•
Provedores
•
Existem centenas de provedores de nuvem:
• Alguns com cotas gratuitas, destinadas para usuários comuns;
• E, provedores destinados as empresas para armazenamento de grandes volumes de informações.
Armazenamento na Computação em Nuvem
11
•
Exemplos de Provedores
Provedor Descrição
Serviço de armazenamento e sincronização de arquivos, apresentado pela Google em 24 de abril de 2012.Google Drive abriga agora o Google Docs, um leque de aplicações de produtividade, que oferece a edição de documentos, folhas de cálculo, apresentações, etc.
Antes chamado de SkyDrive, é um serviço de armazenamento que faz parte da linha Windows Live da Microsoft. A versão final foi lançada dia 21 de fevereiro de 2008. Em 27 de Janeiro de 2014, a Microsoft anunciou a mudança de nome do serviço de Skydrive para Microsoft OneDrive.
Serviço para armazenamento e partilha de arquivos. A empresa desenvolvedora do programa disponibiliza centrais de computadores armazenam os arquivos de seus clientes. O princípio é o de manter arquivos
Armazenamento na Computação em Nuvem
•
Exemplos de Provedores
Provedor Descrição
É um site que permite que seus usuários carreguem e compartilhem vídeos em formato digital. Utiliza os formatos Adobe Flash e HTML5 para disponibilizar o conteúdo.
Armazenam mensagens de correio eletrônico em seus próprios servidores. Os usuários podem acessar seus e-mails de computadores e outros dispositivos conectados a Internet.
Armazenamento na Computação em Nuvem
13
•
Exemplos de Provedores
Provedor Descrição
Sites de redes sociais que permitem que os membros postem fotos e outros conteúdos. Esse conteúdo é armazenado em servidores da empresa.
Serviços de armazenamento de músicas. O usuário pode fazer upload de músicas. Pode-se criar e compartilhar playlists.
O Amazon S3 fornece uma interface simples de serviços da web que pode ser usada para armazenar e recuperar qualquer quantidade de dados, a qualquer momento e de qualquer lugar na web. Amazon Glacier é otimizado para dados que raramente são acessados e para os quais os tempos de recuperação de várias horas são adequados.
Armazenamento na Computação em Nuvem
•
Segurança:
•
Para proteger os dados, a maioria dos sistemas usa uma
combinação de técnicas:
• Criptografia: um algoritmo complexo é usado para codificar a informação. Para decodificar os arquivos criptografados, o usuário precisa da chave de criptografia;
• Processo de Autenticação: isso requer que o usuário crie um nome e uma senha;
Armazenamento na Computação em Nuvem
15
•
Segurança:
Armazenamento na Computação em Nuvem
•
Cuidados:
•
Se o serviço for terceirizado, a segurança dos servidores
na nuvem dependerá do próprio fornecedor;
•
A proteção dos dados armazenados em nuvem também
depende dos usuários, que devem proteger suas senhas e
seus computadores.
Armazenamento na Computação em Nuvem
17
•
Cuidados (dicas):
•
Opte por senhas não comuns;
•
Use senhas diferentes para serviços diferentes. Assim, se a
senha de um serviço for comprometida, os outros serviços
continuam seguros;
•
Não há privacidade em mensagens de e-mail. Portanto,
muito cuidado ao enviar informações sensíveis;
Armazenamento na Computação em Nuvem
•
Cuidados (dicas):
•
Faça as atualizações periódicas de segurança do antivírus,
sistema operacional, navegadores e todos os aplicativos.
•
Ao armazenar dados em nuvem:
• verifique as configurações de segurança do serviço contratado; • mantenha um backup das informações mais importantes;
• lembre-se de que a proteção dos seus dados também depende de você;
Big Data
Big Data
• Big Data é um termo popular usado para descrever o
crescimento, a disponibilidade e o uso exponencial de informações estruturadas e não estruturadas;
Big Data
21
• É imperativo que os líderes das organizações de TI se
concentrem no crescente volume, variedade e velocidade de informações que constituem o Big Data.
Big Data
• Características:
Volume
Big Data
23
• Volume:
• Transações de dados armazenados ao longo dos anos, dados de texto constantemente em streaming nas mídias sociais, o aumento da quantidade de dados de sensores que estão sendo coletados etc;
• No passado o volume de dados excessivo criou um problema de armazenamento;
• Mas com os atuais custos de armazenamento decrescentes, outras questões surgem, incluindo, como determinar a relevância entre os grandes volumes de dados e como criar valor a partir dessa relevância.
Big Data
• Variedade:
• Os dados de hoje vem em todos os tipos de formatos. Sejam bancos de dados tradicionais, arquivos de texto, e-mail, vídeo, áudio, dados de ações do mercado e transações financeiras;
• Por algumas estimativas, 80% dos dados de uma organização não é numérico;
• Estes dados também precisam ser incluídos nas análises e tomadas de decisões das empresas.
Big Data
25
• Velocidade:
• De acordo com o Gartner, velocidade significa tanto o quão rápido os dados estão sendo produzidos quanto o quão rápido os dados devem ser tratados para atender a demanda;
• Reagir rápido o suficiente para lidar com a velocidade é um desafio para a maioria das organizações.
Blob
27
• BLOB (Binary Large Object): objeto grande binário ou objeto
grande básico na tradução literal;
• Coleção de dado binários armazenados como uma única
Blob
• Geralmente são objetos de imagem, áudio ou outro
objetos multimídia, apesar de algumas vezes código binário executável ser armazenado como um blob;
• Foi originalmente usado como um termo para movimentação
de grandes quantidades de dados de um banco para outro, sem filtros ou correção de erros.
Blob
Blob
• Acelerou o processo de transferência de dados, colocando a
responsabilidade pela verificação de erros e filtragem no novo
host para os dados;
• O ato de mover grandes quantidades de dados foi chamado de
"blobbing“;
• O tipo de dados e a definição foi introduzido para descrever os
Blob
31
• O tipo de dados tornou-se prático quando o espaço em disco
tornou-se menos custoso. Essa definição ganhou popularidade com o DB2 da IBM;
• Normalmente os bancos de dados provêm suporte para
diversos tipos básicos de informação
como strings, números, datas e outros, para que o banco possa conter dados que não estão cobertos neste suporte estes dados são armazenados como um BLOB.
Tecnologia de Computação em Nuvem
• Armazenamento da Computação em Nuvem; • Hardware e Infraestrutura;
Hardware e Infraestrutura
Hardware e Infraestrutura
• A fim de obter o máximo de proveito da solução de
Computação em Nuvem, é importante ter o hardware e a infraestruturas corretas no local.
• Será abordado sobre equipamentos necessários e como
Clientes
Hardware e Infraestrutura - Clientes
• Clientes:
• Clientes dos usuários finais é a forma de interagir com a
nuvem;
• Diferentes tipos de clientes podem se conectar à nuvem. O tipo
Hardware e Infraestrutura - Clientes
37 • Clientes: • Clientes Móveis; • Clientes Thin; • Clientes Thick.Hardware e Infraestrutura - Clientes
• Cliente Móvel:
• Clientes móveis cobrem a gama inteira de laptops a
smartphones;
• Naturalmente tem preocupações quanto à segurança e a
Hardware e Infraestrutura - Clientes
39
• Cliente Movél:
• Nem todas as aplicações necessitam de conexão rápida e os
usuários provavelmente não irão inserir dados de grande tamanho;
• Segurança:
• É fácil perder um celular ou laptop;
• Porém, se os dados são mantidos nas nuvens, o usuário só tem
arquivos seletos. Caso seja roubado, somente alguns dados serão comprometidos.
Hardware e Infraestrutura - Clientes
• Cliente Thin:
• São computadores que não possuem HD, driver de DVD-ROM e
simplesmente exibe o que contém um servidor;
• Todos os dados residem em seu centro de dados ou na nuvem,
Hardware e Infraestrutura - Clientes
41
• Cliente Thick:
• São máquinas que possuem capacidade de armazenamento;
• Mais vulnerável pois dados podem ser armazenados na
Tecnologia de Computação em Nuvem
• Armazenamento da Computação em Nuvem; • Hardware e Infraestrutura;
Acesso a Nuvem
Acesso à Nuvem
• Como o usuário irá interagir com a nuvem, vai depender de
muitos fatores, assim como o provedor que se utiliza;
• Há uma série de ferramentas de desenvolvimento que
permitem que se construa aplicativos e várias opções de
Navegadores WEB
Acesso à Nuvem – Navegadores WEB
47
Chrome
Acesso à Nuvem – Navegadores WEB
Chrome
Acesso à Nuvem – Navegadores WEB
49
IE
Acesso à Nuvem – Navegadores WEB
Opera
Acesso a Nuvem –
Ferramentas de Desenvolvimento
Acesso à Nuvem - Plataformas
• Ferramentas de desenvolvimento Web:
• Ferramenta para construção de aplicativos e/ou sites web;
• Devem fornecer suporte para HTML, AJAX, etc;
Acesso à Nuvem – Aplicações WEB
53
• Aplicações WEB:
• Existem diversas opções quando falamos em aplicações Web
para nuvem; • Exemplos: • Google Apps: • Serviços de Gmail; • Google Calendar; • Google Talk;
Acesso à Nuvem – Aplicações WEB
Acesso à Nuvem – Aplicações WEB
55 • Aplicações WEB: • Exemplos: • Microsoft Apps • Office Online; • Outlook; • Xbox Live;Acesso à Nuvem – Aplicações WEB
Acesso à Nuvem – Aplicações WEB
57
Acesso à Nuvem – Aplicações WEB
Acesso à Nuvem – Aplicações WEB
APIs
Acesso à Nuvem – APIs
• Web APIs:
• Destinadas para a construção de aplicações;
• Existe uma séries de APIs que dependerá das habilidades dos
programadores e da companhia que utiliza para os serviços de nuvem.
Acesso à Nuvem – APIs
61
• O que são APIs?
• Interface de Programação de Aplicativo (API) é um conjunto de
instruções de programação e normas para o acesso a m programa baseado na Web;
• As empresas de software liberam suas APIs para o público, para
que outros desenvolvedores de software possam projetar produtos que sejam alimentados por estas APIs.
Acesso à Nuvem – APIs
• APIs
• Uma API é similar ao Software como Serviço (SaaS), porque o
Acesso à Nuvem – APIs
63
• Como funcionam as APIs
• O intercâmbio de informações entre os aplicativos é
administrado por meio de algo conhecido como serviços de
Web;
• Os serviços de Web representam uma coleção de padrões e
protocolos tecnológicos, entre os quais a XML (Extensible
Markup Language), linguagem de programação por intermédio
Acesso à Nuvem – APIs
• Como funcionam as APIs
• A API em si é um conjunto de códigos de software escritos em
forma de uma série de mensagens em XML;
• Cada mensagem corresponde a uma diferença função do
serviço remoto;
• Por exemplo, em uma API de conferência existem mensagens
de XML correspondentes a cada elemento requerido para marcar uma nova conferência via Web.
Acesso à Nuvem – APIs
65
• Alguns criadores de APIs:
• Google Gadgets; • Microsoft;
Acesso à Nuvem – APIs
Acesso à Nuvem – APIs
67
Acesso à Nuvem – APIs
Acesso à Nuvem – APIs
69
• Apex:
APEX é a sigla para Oracle
Application Express, com foco
em construção rápida de aplicativos web.
Acesso à Nuvem – APIs
Nuvens Privadas
Nuvens Privadas - Pydio
73
Nuvens Privadas - Pydio
75
Nuvens Privadas - OwnCloud
Nuvens Privadas - OwnCloud
79
Nuvens Privadas - Eucalyptus
81
Eucalyptus pode escalar dinamicamente, dependendo de cargas de trabalho de aplicativos e é especialmente adequada para a empresa nuvens, entregando software para a produção que suporta as APIs da AWS, incluindo EC2, S3, EBS, IAM. Os benefícios deste software de código aberto para nuvens privadas são escalabilidade altamente eficiente,
Nuvens Privadas - Eucalyptus
83
Nuvens Privadas - Eucalyptus
Nuvens Privadas - OpenStack
85
OpenStack é um sistema operacional em nuvem que controla grandes pools de computação, armazenamento e recursos de rede ao longo de um datacenter, tudo gerenciado através de um painel que dá aos administradores controlar em capacitar seus usuários para os recursos de provisão através de uma interface web. Nuvem de IaaS e PaaS.
Nuvens Privadas - OpenStack
Nuvens Privadas - OpenStack
87
Bibliografia
- TANENBAUM, A. Sistemas Distribuídos: Princípios e Paradigmas. 2ª Edição. Prentice Hall, 2007.
Bibliografia Complementar:
- ERL T. el al. Cloud Computing: Concepts, Technology e Architecture. Prentice Hall, 2013.
- SOSINSKY, B. Cloud Computing: Bible. 1 edition . Wiley, 2011.
- BRIAN, J. et al. Computação em Nuvem, Tecnologias e Estratégias. São Paulo: M Books, 2013.
- VELTE, A. et al. Computação em Nuvem: Uma Abordagem Prática. Rio de Janeiro: Alta Books, 2011.
Bibliografia
89
Bibliografia Complementar (sites e artigos):
- Olhar Digital. Princípios da computação em nuvem. Disponível em: http://
olhardigital.uol.com.br/noticia/principios_da_computacao_em_nuvem/18942 . Último acesso em: 12/05/2014.
- Master’s Thesis, UFMA, 2012. Oliveira J. B. Uma abordagem baseada em
engenharia dirigida por modelos para suportar testes de sistemas de software na plataforma de computação em nuvem. Disponível em: http://
www.tedebc.ufma.br/tde_arquivos/10/TDE-2013-04-03T163947Z-759/Publico/Dissertacao%20Jessica%20Bassani.pdf