AWS para desarrolladores

42
Amazon Web Service for Developers @raulhugo

Transcript of AWS para desarrolladores

Amazon Web Service for Developers @raulhugo

Raul Hugo

System Engineer at Verizon

Cloud Engineer

Escalabilidad

AWS

OpenStack

Cloud Foundry

@raulhugo

Qué es Amazon Web Service?

El mejor servicio de computación en la

nube.

• Rapidez

• Escalabilidad

• Innovación

• Flexibilidad

• DevOps

Servicios en AWS

CUIDADO!

Free Tier

Capa gratuita por un Año

Servicios Clasicos para Desarrolladores

Elastic BeanStalk

Fácil Despliegue de Código.

Diseñado para no preocuparse de la

infraestructura.

Sube tu Código, recibe tu endpoint.

Y ya esta tu app corriendo.

Elastic Bean Stalk : Partes Importantes

● ELB○ Balanceador de carga

● EC2 ○ Instancias de servidor donde se ejecuta tu código.

● AutoScaling Group○ Grupo de autoescalamiento automatico.

● Security Group ○ Lista de Puertos e Ips para definer accesos, something like a

FIREWALL

● Bucket S3○ Crea una carpeta en S3 donde puede subir tu código para que

sea desplegado.

Concéntrate en tu idea

Elastic Bean Stalk : Escalabilidad

Hablemos de Escalabilidad para

Desarrolladores.

Que es comun en cloud?

Vertical u Horizontal?

Escalabilidad

● Manejo de Sesiones

● Manejo de Archivos alojados en el Web Server.

● Manejo de Data Set Connections

● Tercerizar Servicios no CORE

● Versionado y separacion de Archivos Estaticos

● Motores de DB que permitan Replicar.

Introduccion a Lambda λ

Application Data

Websites

Mobile

Apps

Wearable

Application

Files

Content +

Some API Calls

API Calls

Websites

Mobile

Apps

Wearable

DB

Application

FilesAPI Calls

Websites

(JavaScript

Apps)

Mobile

Apps

Wearable

DB

JavaScript

API Calls

Application

FilesAPI Calls

Websites

(JavaScript

Apps)

Mobile

Apps

Wearable

DB

Services

API Calls

JavaScript

API Calls

Files

DB

API Calls

Websites

(JavaScript

Apps)

Mobile

Apps

Wearable

Services

API Calls

JavaScript

Authentication

& Authorization

Caching &

Throttling

Business

Logic

Application

API Calls

DB

API Calls

Websites

(JavaScript

Apps)

Mobile

Apps

Wearable

Services

API Calls

JavaScript

Files

Amazon

S3

Amazon

DynamoDB

Authentication &

Authorization

Amazon

Cognito

Business Logic

AWS

Lambda

Caching & Throttling

Amazon API

GatewayAPI Calls

Application

Cómo funciona internamente?

X

Authentication

Providers

User

Credentials

Authentication

Token

Amazon Cognito

Identity Broker

Identity Pool Id

(Token)

Identity IdAWS Temp Credentials

(Depending on

Auth / Unauth Role)

Access to

AWS Services

(Including Amazon

API Gateway)Identity Id

AWS Temp Credentials

Amazon S3

Amazon

DynamoDB

Amazon

Mobile Analytics

Amazon Cognito

Sync Store

K / V

Authentication &

Authorization

Amazon

CognitoCheck Token

End Users

X

User

Credentials

Authentication

Token

Amazon Cognito

Identity Broker

Identity Pool Id

(Token)

Identity IdAWS Temp Credentials

(Depending on

Auth / Unauth Role)

Access to

AWS Services

(Including Amazon

API Gateway)Identity Id

AWS Temp Credentials

Amazon S3

Amazon

DynamoDB

Amazon

Mobile Analytics

Amazon Cognito

Sync Store

K / V

Custom

Authentication

Service

Get Token

Token Authentication &

Authorization

Amazon

Cognito

End Users

Amazon

CloudFront

API Gateway

Cache

Amazon

CloudWatch

Monitoring & Logs

Endpoints on

Amazon EC2 or

AWS Elastic Beanstalk

Internet

Any other publicly

accessible endpoint

AWS Lambda

Functions

Caching & Throttling

Amazon API

Gateway

X

Access to

API Method

Caché autogestionada para almacenar las respuestas del API

Latencia baja y protección contra ataques DDoS a través de

Amazon CloudFront

Generación de SDK para iOS, Android y JavaScript

Respuesta HTTP 429 para el acelerador del API (Gestionado

por el SDK)

Request / Response Data Transformation

Business Logic

AWS

Lambda

AWS Lambda

Functions

Amazon

API Gateway

Amazon

DynamoDB

Amazon Cognito

Sync Store

K / VAmazon

SNSAmazon

KinesisAlexa Skills Kit (ASK)

Alexa Voice Service (AVS)

HTTPS

Invoke

Custom

Events

Amazon S3

HTTPS

REST

API Call

Construye servicios Cliente-Servidor a medida

Responde rápido a la información

Codea sin necesitar de infraestructura

Eficiente y beneficioso a nivel de costos

Amazon API Gateway

+

AWS Lambda

Resource + HTTP Verb ➔ Method

Resource + HTTP Verb ➔ Method

/books + GET ➔ GetAllBooks

Resource + HTTP Verb ➔ Method

/books + GET ➔ GetAllBooks

/books + POST ➔ CreateNewBook

Resource + HTTP Verb ➔ Method

/books + GET ➔ GetAllBooks

/books + POST ➔ CreateNewBook

/books/{id} + GET ➔ GetBookById

/books/{id} + PUT ➔ CreateOrUpdateBookById

/books/{id} + DELETE ➔ DeleteBookById

ahora, unamos las partes

Aplicación de Contenidos

compartidos públicos

λ

λ λ

Amazon

API Gateway

λ

λ

λλ

Bucket Usage

Table

Media Metadata

Table

User Stat

Table

User

Location

Table

K / V

λ

λ

λ

Amazon Cognito

Identity Broker

Amazon Cognito

Sync Store

Amazon

SNS

Amazon

Kinesis

Media

Bucket

Log

Tabl

e

Invoke

Read

Write / Send

λ

λ λ

λ

λ

λλ

λ

λ

λ

Arquitectura de Microservicios

λλ λλ

λλ λλ λ

λ

Concéntrate en tu idea

Ya conoces la teoría, manos a la

Obra!!!

Raul Hugo Noriega

Cloud Engineer at Verizon

[email protected]

@raulhugo

sherlockholmes