08 - Otavio Pecego - Arquitetura e nuvem: o que muda?
Upcoming SlideShare
Loading in...5
×
 

08 - Otavio Pecego - Arquitetura e nuvem: o que muda?

on

  • 1,573 views

A Computação em Nuvem apresenta novas capacidades e novos desafios para a arquitetura de um software. Por sua vez, desenhar aplicações para Nuvem requer a compreensão e mestria destas ...

A Computação em Nuvem apresenta novas capacidades e novos desafios para a arquitetura de um software. Por sua vez, desenhar aplicações para Nuvem requer a compreensão e mestria destas capacidades. Esta apresentação irá explorar alguns destes desafios e uso das capacidades tendo o Azure como pano de fundo.

Statistics

Views

Total Views
1,573
Views on SlideShare
1,219
Embed Views
354

Actions

Likes
1
Downloads
16
Comments
0

1 Embed 354

http://dnad.dotnetarchitects.net 354

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

08 - Otavio Pecego - Arquitetura e nuvem: o que muda? 08 - Otavio Pecego - Arquitetura e nuvem: o que muda? Presentation Transcript

  • Arquitetura e Nuvem:O que muda? Otavio Pecego Coelho Microsoft Brasil otavioc@microsoft.com http://blogs.msdn.com/otavio
  • Agenda O que é a Nuvem? Capacidades da Nuvem Requisitos de Arquitetura para a Nuvem
  • O que é a Nuvem?
  • Definição Gartner:  “Um estilo de Computação onde capacidades de TI escaláveis e elásticas são provisionadas como um serviço para múltiplos clientes usando tecnologias da Internet” [Cearley 2009] NIST - National Institute of Standards and Technology  “Cloud computing is a model for enabling 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 promotes availability and is composed of five essential characteristics, three service models, and four deployment models.” [http://csrc.nist.gov/groups/SNS/cloud- computing/cloud-def-v15.doc] (NIST = National Institute of Standards and Technology)
  • Características (NIST) On-demand self-service Acesso amplo à rede Pool de Recursos Elasticidade Rápida Serviço Mensurável
  • Modelo de Serviços SaaS Software como Serviço PaaS Plataforma como Serviço IaaS Infraestrutura como Serviço
  • Esforço X Tipo de Serviço na Nuvem Privado Infraestrutura Plataforma Você administra (On-Premise) (como Serviço) (como Serviço) Applications Applications Applications Você administra Runtimes Runtimes Runtimes Security & Integration Security & Integration Security & Integration Administrado p/ TerceiroVocê administra Databases Databases Databases Servers Servers Servers Administrado p/ Terceiro Virtualization Virtualization Virtualization Server HW Server HW Server HW Storage Storage Storage Networking Networking Networking
  • Previsão de Alocação de Carga capacidades “Falta“ de capacidades CAPACIDADE DA TI “Desperdício“ Custo fixo das de capacidades capacidades Custo Inicial dascapacidades Carga Atual TEMPO
  • Previsão Alocação de de Carga capacidades CAPACIDADE DA TI Sem “falta“ de capacidades Redução do É possível a “excesso de TI“ redução das capacidades no caso da Redução dos redução dainvestimentos carga iniciais Carga Atual Tempo
  • Evolução X Inovação• Computação em • Computação em Nuvem como Nuvem como oportunidade de oportunidade de terceirização novos Serviços• Foco em: • Foco em: • Virtualização • Multi-inquilino • Migração • Computação e Convivência: Armazenamen Federação to Massivos Interoperabilidade Attachments
  • Novos Cenários de Uso Armazenar Dados na Mover Aplicativos Nuvem para a Nuvem Estender Aplicativos para a Nuvem Criar Novas Criar Novos Soluções Serviços na Nuvem Combinando Serviços da Nuvem
  • Nova Dinâmica para Aplicativos Web Site Público • Uso do Serviço de forma direta Interface REST • Uso por sites externos especializados SDK de Acesso • Uso por sites externos simples Apps móveis • Cliente simples para uso em todo lugar Apps Sociais • Integração e Mkt via com a rede social
  • Novas Categorizações de Aplicativos
  • Capacidades da Nuvem
  • Gerência de Certificados Serviço de NomesMonitoração/Meetering Identidade ProvisionamentoCobrança e Pagamentos VPN Computação Cache Interno Filas Blobs Arquitetura da Nuvem Tabelas MapReduce Discos Data Mkt Banco Relatório ISB BI Load Balancer/Firewall/Proxies Sinc Cache Geográfico Backup Portal de Serviços
  • Exemplo Azure: Capacidades Personal Data Application Information Application Services Repository Marketplace Marketplace Services Workflow Distributed Frameworks Hosting Hosting Cache Secure Token Declarative Claims-Based Federated Security Service Policies Identity Identities Traffic Composite On-Premise Connectivity Manager Service Bus Applications Bridging Relational SQL Azure Data Data Database Reporting Transact-SQL Synchronization Compute C/C++ Win32 VHD Unstructured Message Distributed Content Storage Data Blobs Queues Filesystem Distribution
  • Exemplo: Windows Azure Portal de Negócios Portal do Desenvolvedor Código REST Service de Gerência de Serviços Runtime API VS Tools VM Setup Storage Cluster Compute Cluster … … WA SDK Cloud VM …Desktop REST Datacenters da Microsoft
  • Requisitos de Arquitetura para a Nuvem
  • Exemplo de Impactos Estado Windows Corrente AzureControle sobre a topologia da Controle Controle limitado sobre portas erede e sobre as máquinas Admin IPsBanda consistente com latência Latência Banda e latência variávelprevisível Nomes das máquinas podemControle sobre aIdentificação da Identificação mudar toda vez que uma máquinaMáquina inicia Controle limitado sobre o tempoControle sobre o tempo de vidada máquina Volatilidade de vida - Estado torna-se transiente
  • Novos Princípios – Exemplo Netflix1. Os serviços são stateless, por não armazenarem estados nos servidores a falha deles não é tão impactante para o usuário final;2. Os dados são armazenados em várias geografias aumentando a disponibilidade através da “redundância”;3. O sistema foi projetado para falhar, usando princípios como: 1. “Falhar rápido” com timeouts curtos que fazem os processos caírem se os tempos não forem obedecidos; 2. “Recuo” (“fallback”): se uma funcionalidade não pode ser mostrada, outra de menor qualidade/funcionalidade pode entrar em ação e substituí-la; 3. “Remoção de funcionalidades”: se uma funcionalidade não é importante e há problemas de desempenho, ela pode ser desativada temporariamente;4. Redundância N+1: alocam-se sempre mais recursos do que necessário para uma reserva de capacidade;5. Uso de consistência eventual: nada de sistemas relacionais para armazenamento
  • Requisitos de Arquitetura para Aplicativos para Milhões de UsuáriosDesign Dados & Conteúdo  Escalabilidade Horizontal  De-normalização  Composição Orientada a Serviço  Particionamento Lógico  Consistência Eventual  Cache distribuído em memória  Tolerância a Falhas (conte com as falhas)  Opções diversas de armazenamento (persistente & transiente, relacional & não estruturado, textoSegurança & binário, read & write, etc.)  Autenticação Baseada em Declarações & Controle de Acesso  Identidade Federada Processos  Criptografia de Dados e gerência de chaves  Componentes Fracamente acoplados  Processamento paralelo e distribuídoGerenciamento  Comunicação distribuída e assíncrona  Automação dirigida a políticas (Policy-driven)  Idem-potência (trata duplicidade)  Apoia o ciclo de vida dos aplicativos  Isolamento (separação de responsabilidades)  Trata esquemas dinâmicos e mudanças de configuração
  • Patterns Fundamentais
  • Patterns Fundamentais P1 P2 P3
  • Patterns Fundamentais
  • Migração?
  • Aplicação Exemplar – aExpense
  • Pontos para Lembrar A Nuvem é uma ótima oportunidade  Migração  Novos tipos de Aplicativos Ela exige princípios arquiteturais e cuidados arquiteturais diferentes Leia e teste – já há muito material  http://www.microsoft.com/windowsazure/whitepapers/  http://www.microsoft.com/windowsazure/tutorials/#  http://msdn.microsoft.com/en-us/library/ff966499.aspx  http://msdn.microsoft.com/en-us/library/ff728592.aspx