Apresentar uma visão geral da Amazon AWS Demonstrar como gerenciar instâncias AWS Utilizar armazenamento de objetos Entender a sua conta Cobrança, credenciais e relatórios Boas práticas para sua startup 2 Objetivos
entregues de uma forma transparente A mesma ideia tem sido aplicada no contexto da informática Cloud Computing ou Computação em Nuvem Computação em Nuvem Ideia antiga: Software como um Serviço (SaaS) Entrega de aplicações através da Internet Recentemente: “[Hardware, Infraestrutura, Plataforma] como um serviço” “X como um serviço” 4
Alocação de capacidades “Desperdício“ de capacidades “Falta“ de capacidades Custo fixo das capacidades Previsão de Carga Custo Inicial das capacidades Fonte: Microsoft
Redução dos investimentos iniciais Redução do “excesso de TI“ Sem “falta“ de capacidades É possível a redução das capacidades no caso da redução da carga Tempo CAPACIDADE DA TI Previsão de Carga Fonte: Microsoft
e buckets Identificados por uma URI Acesso por meio de uma Serviço Web Operações put(uri, bytestream) get(uri) get-if-modified-since(uri, timestamp)
para cima e para baixo em minutos Controle completo via API Criar, escalar, & gerenciar instâncias programaticamente Variedade de tamanhos de instâncias CPU, Cores, RAM, Disk. Grande variedade de imagens pré-construídas Permite executar aplicações com o mínimo de esforço VMs executadas com a tecnologia XEN (paravirtualization) Modelo de segurança de rede flexível e seguro Controle total de acesso para cada instância em execução Controle de acesso via chaves para acesso SSH 53
Zona de Disponibilidade Partição funcional e independente dentro de uma região Instância Máquina em execução AMI - Amazon Machine Image Imagem pré-configurada de um sistema 54
Volume Unidade EBS Storage – 1 GB para 1 TB por volume Endereço IP Elástico Endereço de “longa duração” que pode ser adicionado para qualquer instância EC2 55
Availabilit y Zone A Availabilit y Zone B US East Region Availabilit y Zone A Availabilit y Zone C Availabilit y Zone B US West Region Availabilit y Zone A Availabilit y Zone B Amazon CloudWatch Nota: Apenas desenho conceitual. A quantidade de zonas pode variar Singapore Availabilit y Zone A Availabilit y Zone B 57
Sem compromisso a longo prazo Instâncias Reservadas Taxa única de reserva para compras de 1 ou 3 anos Uso ainda cobrado por hora, mas com um desconto considerável Instâncias Spot Clientes negociarem a capacidade não utilizada Executarem essas instâncias durante o período em que sua oferta exceder o preço spot atual 59
tradicional Instancia não é persistida em quando parada Boot em minutos I/O grátis para o dispositivo root Não há custo quanto a instância é parada EBS-Backed AMIs Adiconada em 2009 Instância parada é persistida em um sistemas de arquivos Boot em segundos I/O com custo Existe custo quando a instância é parada 62
Instance (Pending) RunInstances call to cloud • Specify which AMI to launch • Provide parameters (# instances, security group, etc) Instance launch initiated • Copy AMI from snapshot • Assign parameters Instance (Running) Instance (Shutting Down) Instance (Terminated) • Attach EBS Storage once running • Assign Elastic IP Address EBS Snapsh ot Instance (Stop) Instance (Start) • Resources automatically detached (IP, storage) • Can also be initiated as normal operating system shutdown • Snapshot loaded back into EBS • EBS executed by hypervisor 64
Endereço IP Privado DNS Privado (*.interno) DNS Público (*.amazonaws.com) Endereço público opcional Elastic IP Endereço IP estático que você pode anexar a qualquer instância em execução Serviço de DNS Route 53 65
funcionalidades da API EC2 por linha de comando Independente de plataforma (Java) Ferramentas AMI Ferramenta específica para criar novas AMIs Permite empacotar uma imagem Realizar upload de uma imagem AWS Console Interface unificada de controle para todos os serviços
em: Tempo: uma hora de tempo de CPU Volume: GB de dados transferidos Contagem: número de mensagens em fila Tempo e espaço: GB mês de armazenamento de dados O faturamento é feito no início do mês seguinte 69
Access keys AWS web site and management console Command-line tools SOAP APIs REST APIs Connecting to an instance (e.g., via ssh) - Usa criptografia de chave pública
Web Server Port 22 (SSH) Port 80 (HTTP) App Security Group App Server Ports 22, 2048 DB Security Group DB Server Port 3300 Port 22 (SSH) EC2 Firewall 78
acesso de entrada Grupo de segurança Conjunto de regras de acesso Regras de acesso: Nome Descrição Protocolo Intervalo da porta Intervalo do endereço IP 79
do cliente é muito importante Foco em alta disponibilidade e confiabilidade Separe componentes da aplicação Implemente a elasticidade Pense paralelo Ponha os dados no lugar certo Utilize práticas recomendadas de segurança 81 Boas Práticas* * Material de Manoel Veras
Não construa, se você pode reutilizar Muitos projetos interessante no github Automatize as implantações Foco na integração contínua Programe sua solução para o provisionamento Utiliza os serviços da nuvem Armazenamento de objetos, caching, filas 82 Boas Práticas
as melhores práticas de arquitetura infoq.com highscalability.com Saiba mais sobre a construção de aplicações multi-inquilino (multi-tenant) Segurança dos dados SLA Confiabilidade Escala 83 Boas Práticas
de negócio e plano de execução Sincronize seu negócio e como ele utiliza a nuvem Obtenha bons conselhos técnicos e adquira conhecimento stackoverflow quora hackernews hackerstreet 84 Boas Práticas