Post on 03-Nov-2014
description
Cloud Computing
Palestra ministrada para os alunos do curso Técnico em Informática para Internet da ETEC Antonio Devisate.
Elvis Fuscofusco@univem.edu.br
http://elvisfusco.com.br
Twitter: @elvisfusco
Apresentação
Prof. Dr. Elvis Fusco Centro Universitário Eurípides de Marília - Univem COMPSI - Computing and Information Systems Research Lab
Doutor em Ciência da Informação
Mestre em Ciência da Computação
Coordenador dos cursos de Ciência da Computação e Sistemas de Informação
Coordenador do curso de Especialização em Sistemas para Internet
Gerente do Departamento de Sistemas – Univem
Empresário no ramo de software
Objetivo
Apresentar um novo modelo e conceito de computação, de forma que amplie a visão do profissional Técnico em Informática para Internet a fim de que esse possa se aproveitar e desfrutar dessa nova demanda de mercado denominada “Cloud Computing”.
Problemas
As empresas, especialmente as pequenas e médias, gastam muito com infraestrutura de TI (“sala de servidores”).Equipamentos redundantesSoftwareEnergia redundanteLink de internet redundanteRefrigeraçãoAtualizações de softwareEquipe 24 x 7
Problemas
Apesar de caro, o serviço em grande parte das vezes é deficiente:Disponibilidade menor que o desejado;Atualizações quebram o que já funciona;Backups deficientes;Falhas de equipamentos tem alto impacto;Dificuldade em atualizar softwares;Dificuldade em contratar e gerir mão-de-obra;Dificuldade de atender picos de demanda;
Década de 70: Mainframes; Década de 80: Surgimento
do computador pessoal; Década de 90: Expansão da
Web; Década de 2000: Internet
Banda Larga e globalização; Hoje: Cloud Computing,
SOA, etc.
Fonte: [NIST, 2009]
Evolução da Computação
É a definição para um modelo de computação baseado em uma rede massiva de servidores interconectados que se comunicam com clientes/estações.
Pode ser definido como um modelo no qual a computação (processamento, armazenamento e softwares) está em algum lugar da rede e é acessada remotamente, via Internet.
Cloud Computing
Cloud Computing
ProcessamentoArmazenamento
de Dados Internet
Computação em nuvem é uma
tendência recente de tecnologia cujo
objetivo é proporcionar serviços de
Tecnologia da Informação (TI) sob
demanda com pagamento baseado no
uso. [BUYYA et. al. 2009]
Cloud Computing
Não há necessidade de instalação de programas, serviços e armazenamento de dados, mas apenas os dispositivos de entrada (teclado, mouse) e saída (monitor) para os usuários.
Uma arquitetura em nuvem é muito mais que apenas um conjunto de computadores. Ela deve dispor de uma infraestrutura para gerenciamento, que inclua funções como provisionamento de recursos computacionais, balanceamento dinâmico do workload e monitoração do desempenho.
Cloud Computing
Servidor Comum x Cloud
SERVIDOR COMUM
em uso
ocioso
em uso
ocioso
em uso
DE
MA
ND
A
em uso
SERV 01 SERV 01 SERV 01
SERV 02
DE
MA
ND
A
DE
MA
ND
A
Situação do servidor do cliente em 80% do tempo
Pico de demanda em 20% do tempo
De acordo com Dikaikos (2009) e a SUN
(2009a), as nuvens são classificadas em três
tipos básicos:
• Nuvens Públicas;
• Nuvens Privadas;
• Nuvens Híbridas.
Cloud Computing
Fonte: [SAP, 2010]
Cloud Computing
Modelos
IaaS – Infrastructure as a Service Terceirização de infraestrutura; Redução de desperdícios; Público-alvo: arquitetos de
infraestrutura.
PaaS – Platform as a Service Ambiente para criação, teste e
hospedam de aplicativos em nuvem; Aplicações mais escaláveis; Público-alvo: desenvolvedores.
SaaS – Software as a Service Softwares rodando no browser; Custo baseado na demanda; Público-alvo: usuário final.
DbaaS – Database as a Service Informação de qualquer lugar; Escalabilidade; Performance; Uso sob demanda
Estrutura do Modelo
Platform as a Service (PAAS)
Infrastructure as a Service ( IAAS)
EXEMPLOS
Software as a Service (SAAS)
Data Center - Google
Data Center - Google
Data Center - Microsoft
Data Center - Microsoft
“Windows Azure is a cloud services operating system that serves as the development, run-time, and control enviroment for the Azure Services Plataform.”
Plataformas - Azure
http://msdn.microsoft.com/pt-br/windowsazure/
Plataformas - eyeOS
A plataforma é criada sobre uma arquitetura
cliente-servidor, em que o eyeOS é o servidor e
o cliente é geralmente um web browser.
http://eyeos.org
Plataformas - heroku
Plataforma para desenvolvimento e
armazenamento de aplicações Ruby.
http://www.heroku.com
Plataformas
Amazon Elastic Compute Cloud (Amazon EC2)http://aws.amazon.com/ec2
• Servidores virtuais dedicados
• Suporte aos SO Windows e Linux
• Suporte a qualquer linguagem de programação
• Suporte a vários bancos de dados
Plataformas
Google App Engine code.google.com/appengine
• Formato próprio de banco de dados a DATASTORE;
• Suporta apenas Python e Java;
• Uso do serviço é gratuito, mas com cotas limitadas
Plataformas
www.engineyard.com
www.rackspacecloud.com
www.gogrid.com
SaaS – Software as a Service
SaaS – Software as a Service
SaaS
Web como Plataforma
Mobile
Web Standards
Cross-Plataform
SaaS – Software as a Service
Cloud Computing - Vantagens
ELASTICIDADE: Recursos sob demanda, ou seja, você consegue aumentar ou diminuir a capacidade de processamento, espaço, memória ou banda de acordo com sua necessidade.
AGILIDADE: Simplicidade para configurar, dimensionar e redimensionar seu servidor
sem prejudicar suas aplicações.
AUTONOMIA Gerencie seus recursos através do Painel de Controle, com processos
automáticos e sem complicação.
EXCLUSIVIDADE: Todos os recursos de hardware são alocados com exclusividade,
mais performance para sua aplicação.
SEGURANÇA: Menor risco de falhas, devido à arquitetura em nuvem, facilitando a
manutenção de hardware/software, além da infraestrutura com sistemas de
monitoramento 24 horas por dia com segurança física e lógica.
CUSTO OTIMIZADO: A arquitetura em nuvem permite otimização de custos já que o
cliente consegue alocar recursos de acordo com sua necessidade.
Cloud Computing - Desvantagens
Compatibilidade Falta de padrões de gestão e de segurança
Necessidade de uma banda maior de Internet
Cloud Computing - Desvantagens
Prepare-se!!!
Plataformas para Web
Frameworks de Desenvolvimento
Tecnologias Base para Interface
Tecnologias para Interface
Tecnologias para RIA
Aplicativos Nativos ou Baseados em Navegadores?
Tendência: Mobile
Tendência: Mobile
Fonte: www.readwriteweb.com/archives/mobile_app_or_browser-based_site.php
Obrigado!!
Perguntas ?
Cloud Computing
Elvis Fuscofusco@univem.edu.br
http://elvisfusco.com.br
Twitter: @elvisfusco