• Nenhum resultado encontrado

OCEL001 Comércio Eletrônico Módulo 9_5: AWS

N/A
N/A
Protected

Academic year: 2021

Share "OCEL001 Comércio Eletrônico Módulo 9_5: AWS"

Copied!
73
0
0

Texto

(1)

OCEL001 – Comércio Eletrônico

Módulo 9_5: AWS

Prof. Charles Christian Miers e-mail: charles.miers@udesc.br

(2)

2

Amazon AWS

 Histórico, entrevista com Jeff Bezos

 http://blog.b3k.us/2009/01/25/ec2-origins.html  Datas importantes:

 Julho/2002 – Lançamento AWS

 Março/2006 – Lançamento Amazon S3  Agosto/2006 – Lançamento EC2

(3)

3

Amazon AWS

É o conjunto de web services que constituem uma

plataforma de computação em nuvem

 Desenvolvida e mantida pela Amazon  Os serviços mais populares

 Amazon EC2 – Permite a criação de servidores virtuais  Amazon S3 – Armazenamento escalável na nuvem

(4)

Amazon AWS

 Amazon Web Services (AWS):  http://aws.amazon.com/

 Permite terceirização de recursos computacionais

 Amazon Elastic Compute Cloud (Amazon EC2)  Amazon Simple Storage Service (Amazon S3)  …

 Tarifação baseada em uso

 APIs (Web Services / Rest) para interação com software de provisionamento e monitoração

 Permitem a criação de empresas de prestação de serviços internet sem servidores

(5)
(6)

6

(7)

7

Amazon AWS - EC2

 Oferece uma capacidade de computação

redimensionável na nuvem

 A interface simples permite criar e configurar

instâncias sem dificuldades

 No modo gratuito é possível criar instâncias T1 Micro

com poucos recursos computacionais, mas suficientes para testes

(8)

8

Amazon AWS – EC2 (Cont.)

 Permite a execução remota de várias instâncias de uma máquina

virtual:

 Templates de hardware c/ XEN (ex.: Standard, High-Memory,

High-CPU,etc.)

 Imagens pré-configuradas com SO e softwares

 Definição de zonas onde instâncias serão executadas, regras de

firewall, etc.

 Diferentes modelos de tarifação: on-demand, reserved e spot  Há diversas AMI customizadas com aplicações de fornecedores

 Exemplo: IBM (http://aws.amazon.com/ibm/ )

 AMI com Suse Linux e aplicativos IBM (ex.: DB2, Websphere,

Tivoli,etc.)

 Possibilidade de conversão de licenças normais para licenças

(9)

9

Amazon AWS – EC2 (Cont.)

 Small Instance (default):

 1.7 GB memory

 1 EC2 Compute Unit (1 virtual

core with 1 EC2 Compute Unit)

 160 GB instance storage (150

GB plus 10 GB root partition)

 32-bit platform

 I/O Performance: Moderate

 Internet Data Transfer (out):

 $0.15/GB - first 10 TB/mês  $0.11/GB – próx. 40 TB/mês  $0.01 per GB in/out para transf.

entre zonas US – East (North Virginia) South America (SP/Brasil) Linux/Unix 0.070 0.095 Windows 0.133 0.158 Linux + DB2 Express 0.365 0.375 Linux + Websphere 0.795 0.805

Preços para On-demand medium Instance

(por hora de execução – USD)

Tarifas Reserved (Linux / US-East):

Entrada ($181/1ano ou $286/3anos) + $0.022/h

(10)
(11)

11

Casos de Uso

 Startups

 Ciência e pesquisa

 Gerenciamento e balanceamento de carga  Servidores

(12)

12

Criando uma nova instância

 Console de gerenciamento da Amazon Web Services

(13)

13

Criando uma nova instância

 Na página seguinte é exibido o painel de

gerenciamento do EC2

 Para criar uma nova instância, clique no botão

(14)

14

Criando uma nova instância

 Surgirá no navegador um assistente de criação de instâncias

(15)

15

(16)

16

Criando uma nova instância

 Na tela seguinte, será apresentada uma lista de imagens dos sistemas operacionais disponíveis

 Selecione a versão mais recente do Ubuntu Server LTS, na versão 64-bit

(17)

17

(18)

18

Criando uma nova instância

 Selecionar a imagem e definir a arquitetura  Clicar em “Select”

(19)

19

Criando uma nova instância

 Na próxima etapa é escolhido o número de instâncias a serem criadas, o tipo da instância e a localização

 A instância do tipo T1.Micro está disponível no modo gratuito por um ano

 Até 750 horas por mês

(20)
(21)

21

Criando uma nova instância

(22)

22

Criando uma nova instância

 Configurar o particionamento dos discos, quando

necessário>

 Clicar no botão “Add New Volume” para criar novos

volumes ou mudar o tamanho e tipo do volume padrão (Root)

 Se não for necessário, basta clicar em “Next: Tag

(23)

23

(24)
(25)

25

Criando uma nova instância

O próximo passo consiste em configurar o Firewall

da instância

 Por padrão existe um grupo de segurança

configurado

(26)
(27)
(28)
(29)

29

Criando uma nova instância

 Clicar em “Review and Launch”

 Revisar as configurações e se tudo estiver ok clicar

em “Launch”

É necessário criar um Key Pair para acessar a

instância via SSH

Clicar em “Create a new key pair”

 Escolher o nome da chave  Salve o arquivo gerado

 Clicar em “Launch Instances” para iniciar a instância

(30)

30

(31)

31

(32)

32

(33)

33

Acesso via SSH

 O único modo de acessar sua instância é pelo SSH

(Secure Shell)

 Mesmo que você tente acessar pelo console de

gerenciamento da Amazon, terá de usar um cliente SSH baseado Java que é executado a partir do

(34)

34

Acesso via SSH

 Para se conectar é necessário usar a chave pública

que foi criada durante a criação da instância

 O GNU/Linux já possui nativamente um cliente SSH  Para se conectar basta digitar:

ssh -i <caminho_da_chave.pem> ubuntu@<FQDN da instância>

 Importante mudar os atributos de permissão da

chave:

(35)

35

(36)

36

Acesso via SSH

 No acesso via navegador somente é necessário

informar a localização da chave de acesso e executar o aplicativo

(37)

37

(38)

38

Acesso via SSH

 Se tudo estiver certo, o aplicativo de SSH (applet)

(39)

39

(40)

40

Amazon AWS - S3

 Oferece capacidade escalável de armazenamento na

nuvem

 Pode ser utilizado para armazenar qualquer

quantidade de dados e recuperá-los de qualquer lugar na web

 O nível gratuito permite até 5GB de armazenamento  O armazenamento é realizado por meio de buckets

(41)

41

Amazon AWS – S3 (Cont.)

 Permite o armazenamento de dados nos servidores da Amazon,

tanto para uso pessoal como de aplicações online

 Interface via SOAP

 Acesso a dados via HTTP ou BitTorrent  Possibilidade de versionamento de dados

Armazenamen

to Transf. Dados Requests

US 0.15/GB

(first 50 TB)

0.14/GB

(próx. 50 TB)

0.15/GB

(first 10 TB data out)

0.11/GB (próx. 40 TB data out) 0.01/1.000 requests (PUT/POST) 0.01/10.000 requests (GET/BT)

(42)

42

Amazon AWS – S3: Exemplo Jungle Disk

 Jungle Disk:

 Serviço de Armazenamento / Backup / Compartilhamento /

Sincronização de Arquivos

 Utiliza-se do Amazon S3 ou do Rackspace para armazenamento  Dados criptografados pela aplicação local antes de colocar na

nuvem

Personal Desktop Edition Workgroup

Serviço Backup online

Backup, disco

virtual, sync, share

Backup, disco virtual, sync, share

Usuário 1 1 vários

Custo* 2/mês 3/mês 4/usuário/mês

Ex. Tarifação de Armazenamento (USD)

(43)
(44)

44

Casos de Uso

 Compartilhamento de mídias  Distribuição de softwares/mídias  Backup  Armazenamento online  Armazenamento de aplicativos

(45)

45

API Amazon AWS

 A Amazon disponibiliza uma API de seus serviços em

várias plataformas e linguagens

Também disponibiliza Toolkits para as IDEs Eclipse e

MS-Visual Studio

 Site da Amazon está disponível toda a documentação

da API

 As informações das operações da API podem ser

enviadas através de:

 SDK para Java, Visual C#, PHP, Python, entre outras  Um CLI disponível para sistemas GNU/Linux

(46)

46

A API do Amazon Elastic Compute Cloud possui mais

funções do que a API do Simple Storage Service

 Isso se deve ao fato de que o gerenciamento de máquinas virtuais é mais complexo do que

gerenciamento de arquivos

(47)

47

API Amazon EC2

Detalhes de algumas ações da API do Amazon EC2:

Amazon Machine Images: é possível criar, copiar, modificar e registrar imagens das máquinas

 Endereços IP Elásticos: possibilita alocar, associar, descrever, desassociar e liberar Ips Elásticos

 Instâncias: permite iniciar, parar, finalizar, reiniciar e monitorar instâncias, entre outros

 Pares de chaves: permite criar, deletar e importar pares de chaves de acesso às instâncias

 Grupos de segurança: criar, excluir, autorizar e revogar acesso dos grupos à certas instâncias

(48)

48

API Amazon EC2

 Exemplo:

 Criando uma nova instância (Java)

 Requisitos:

 ImageID – ID da AMI

 InstanceType – Tipo da instância a ser criada  MinCount – Número mínimo de instâncias

 MaxCount – Número máximo de instâncias  KeyName – Nome da chave de acesso

(49)

49

API Amazon EC2

 Para criar uma instância utilizando o SDK para Java é

necessário autenticar o usuário

 Criar um arquivo chamado:

“AwsCredentials.properties” com a seguinte estrutura:

secretKey=SUA_CHAVE_SECRETA

accessKey=SUA_CHAVE_DE_ACESSO

 A chave secreta e a chave de acesso devem ser

criadas na seção “Security Credentials” do menu “Conta/Console”

(50)

50

API Amazon EC2

 Depois, é necessário definir o local do arquivo e então

inicializar o cliente AWSCredentials credentials =  new PropertiesCredentials( AwsConsoleApp.class.getResourceAsStream("AwsCre dentials.properties")); amazonEC2Client =  new AmazonEC2Client(credentials); amazonEC2Client.setEndpoint("ec2.us­west­2.amazonaw s.com");

(51)

51

API Amazon EC2

 Pedido: RunInstancesRequest runInstancesRequest = new  RunInstancesRequest(); runInstancesRequest.withImageId("ami­4b814f22")      .withInstanceType("m1.small")      .withMinCount(1)      .withMaxCount(1)      .withKeyName(“YourKeyName”)      .withSecurityGroups("YourSecurityGroupName"); RunInstancesResult runInstancesResult =  amazonEC2Client.runInstances(runInstancesRequest); Fonte:http://docs.aws.amazon.com/AWSSdkDocsJava/latest/DeveloperGuide/run-instance.html

(52)

52

API Amazon EC2

 Exemplo:

 Criando uma nova instância (CLI GNU/Linux)

 Comando:

 ec2-run-instances ami_id -n numero_de_instancias -k

keypair -g grupo --instance-type tipo_da_instância

Fonte:

http://docs.aws.amazon.com/AWSEC2/latest/CommandLineReference/Api Reference-cmd-RunInstances.html

(53)

53

API Amazon EC2

 Exemplo:

 Criando uma nova instância (CLI Linux)

 Exemplo:

 ec2-run-instances ami-d0f89fb9 -n 1 -k administrador -g grupo1 --instance-type t1.micro

 Obs.1: A ami-d0f89fb9 é correspondente ao SO Ubuntu

12.04 na zona de disponibilidade us-east-1 (Virgínia do Norte)

 Obs.2: O tipo da instância t1.micro é correspondente ao

tamanho de instância micro (gratuito no período de um ano)

(54)

54

API Amazon S3

A API do Amazon Simple Storage Service é dividida entre a SOAP API e a REST API

Ambas as APIs permitem manipular os buckets e os objetos, mas o acesso é realizado de forma diferente entre essas interfaces

(55)

55

API Amazon S3

Detalhes da SOAP API:

 SOAP é um protocolo para troca de informações estruturadas em

uma plataforma descentralizada e distribuída

Operações no serviço: Permite listar todos os buckets criados pelo

usuário

Operações no bucket: Permite criar, deletar, listar, obter e definir a

política de controle de acesso e obter e definir o status de registro de um bucket

 Operações nos objetos: permite colocar objetos, copiá-los, pegá-los,

deletá-los, obter e definir a política de controle dos objetos em um

(56)

56

API Amazon S3

Detalhes da REST API:

 REST é uma arquitetura de comunicação distribuída para sistemas hipermídia

 Possui uma lista de cabeçalhos de pedido e resposta  Operações no serviço: permite fazer uma listagem dos

buckets de propriedade do remetente autenticada no pedido

Operações no bucket:

Permite manipular os buckets, como criá-los, deletá-los,

manipular as políticas de acesso, as listas de controle de acesso, localização, ciclos de vida, etc.

 Operações nos objetos: permite manipular os objetos um a um ou vários, simultaneamente.

 Permite também adicionar objetos divididos em várias

(57)

57

(58)

58

API Amazon S3

 Exemplo:

Listar todos os buckets

Este exemplo lista todos os buckets (depósitos) alocados na zona de disponibilidade escolhida

(59)

59

API Amazon S3

 Autenticação: AmazonS3 s3 = new AmazonS3Client(new  ClasspathPropertiesFileCredentialsProvider( )); Region usWest2 =  Region.getRegion(Regions.US_WEST_2); s3.setRegion(usWest2); //Região de Oregon

(60)

60

API Amazon S3

 Pedido: System.out.println("Listing buckets"); for (Bucket bucket : s3.listBuckets()) {     System.out.println(" ­ " +  bucket.getName()); }

Fonte: Retirado dos exemplos do SDK para Java. SDK disponível em: http://aws.amazon.com/pt/sdkforjava/

(61)

61

Casos de Uso utilizando vários serviços

Amazon

 Servidor de Aplicativos Web:

 Arquiteturas de referência AWS:

 Amazon EC2

 Auto Scaling

 Elastic Load Balancing

 Amazon Route 53

 Amazon CloudFront

(62)
(63)

63

Casos de Uso utilizando vários serviços

Amazon

 Processamento Batch:

 Arquitetura de Referência AWS:

 Amazon EC2  Amazon RDS  Amazon SimpleDB  Amazon S3  Auto Scaling  Amazon SQS

(64)
(65)

65

Casos de Uso utilizando vários serviços

Amazon

 Serviço de conteúdo e mídia:  Arquitetura de Referência AWS:

 Amazon EC2

 Amazon Route 53

 Amazon CloudFront

(66)
(67)

67

(68)

68

AWS Marketplace

É possível adquirir soluções prontas no AWS

Marketplace

 As soluções consistem de pacotes pré-configurados

de serviços Amazon:

 Algumas soluções são gratuitas e outras são pagas

 Para ambos os casos é necessário pagar as taxas dos serviços utilizados

(69)
(70)

70

AWS Marketplace

 O AWS oferece também algumas soluções e

exemplos que funcionam com base nelas

 Os exemplos vão desde hospedagem web à

mecanismos de busca

 Os exemplos estão disponíveis em:

(71)
(72)

72

Leitura recomendada

 Documentação oficial:

 http://aws.amazon.com/documentation/

 REESE, G. Cloud Application Architectures: Building Applications and

Infrastructure in the Cloud (Theory in Practice. 1º ed. O’Reilly Media, 2009.

 RHOTON, J. Cloud Computing Explained: Implementation Handbook

(73)

73

Parte destas transparências foram elaboradas na Ação Computação em Nuvem, do Programa de Extensão Socialização de Software e Hardware Livre (Colméia) Colaboração: André Rover Campos, Glauber C. Batista e

Charles C. Miers

Este trabalho está licenciado sob uma licença Creative Commons

Atribuição-Compartilhamento pela mesma licença 2.0 http://creativecommons.org/licenses/by-sa/2.0/br/

Referências

Documentos relacionados

nesta nossa modesta obra O sonho e os sonhos analisa- mos o sono e sua importância para o corpo e sobretudo para a alma que, nas horas de repouso da matéria, liberta-se parcialmente

3.3 o Município tem caminhão da coleta seletiva, sendo orientado a providenciar a contratação direta da associação para o recolhimento dos resíduos recicláveis,

• Os municípios provavelmente não utilizam a análise dos dados para orientar o planejamento de suas ações;. • Há grande potencialidade na análise dos micro dados do Sisvan

A par disso, analisa-se o papel da tecnologia dentro da escola, o potencial dos recursos tecnológicos como instrumento de trabalho articulado ao desenvolvimento do currículo, e

Promovido pelo Sindifisco Nacio- nal em parceria com o Mosap (Mo- vimento Nacional de Aposentados e Pensionistas), o Encontro ocorreu no dia 20 de março, data em que também

After this matching phase, the displacements field between the two contours is simulated using the dynamic equilibrium equation that bal- ances the internal

Pinturas, depilatórios, unguentos mamilares, colorantes para o cabelo e até pomadas à base de vidro em pó (que, aparentemente, permitiam simular a virgindade) (Braunstein, 1990),

As relações hídricas das cultivares de amendoim foram significativamente influenciadas pela a deficiência hídrica, reduzindo o potencial hídrico foliar e o conteúdo relativo de