65
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product Lead @ BBVA Labs Raimundo Alegría, Software Architect @ BBVA Labs @awscloud_es

Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

  • Upload
    others

  • View
    14

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Portable Applications - Containers on AWSOctober 2018

David Sanz, Solutions Architect, Amazon Web Services

Fernando García, Product Lead @ BBVA Labs

Raimundo Alegría, Software Architect @ BBVA Labs

@awscloud_es

Page 2: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

We all love containers

Page 3: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Everything is lovely around containers

Atomic

self-containedPortableLightweight

Containers and microservices go hand in hand

Page 4: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Running a container is super easy

$ docker run mykillerapp:0.0.1

Page 5: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Yes, we all love containers

Page 6: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Then it comes reality…

Server

Guest OS

Bins/Libs Bins/Libs

App1 App2

Page 7: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Then it comes reality…

Page 8: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

… scale…

Page 9: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

… and container orchestration

How do I deploy my containers to hosts?

• Zero downtime, blue green deployments

How do I keep my containers alive?

• Scheduling, recovery

How can my containers talk to each other?

• Service linking, discovery

How can I configure my containers at runtime?

• What about secrets

How do I best optimise my "pool of compute”?

• Placement, autoscaling

Page 10: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

AWS, build a Docker service for us

Page 11: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product
Page 12: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Elastic Container Service launch at re:Invent 2014

Page 13: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Amazon Elastic Container Registry

Page 14: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Simplify how to run container-based apps in production

AWS VPC

networking mode

Global footprint

Advanced task

placement

Deep integration

with AWS platform

…{ } ECS CLI

Powerful scheduling

engines

Auto scaling

CloudWatch metrics

Load balancers

Page 15: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

ECS as of December 2017

Over 100.000 clusters

Millions of instances

Hundreds of millions of new containers launched

each week

Page 16: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Fine, but what have you been up to lately?

Page 17: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Container access to environmental

metadata

Network Load Balancer

support

Console support for SpotFleet

Override parameters for RunTask

and StartTask APIs

Task Elastic Network Interface

Application Load

Balancer Support

HIPAA

eligibility

Console UX improvements

CLI V1.0

Container

instance draining

Windows containers

Cron and Cloudwatch

Event Task scheduling

Support for Docker

Privileged Mode

Lifecycle Policies for

container images

Beijing

Region

Support for

Device and Init

flags

Add attributes during boot

Seoul Region

Linux capabilities

ECS Service Team has been busy…

Page 18: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Same level of compliance as EC2

Global Quality

Standard

Security Mgmt

Controls

Cloud Specific

Controls

Personal Data

Protection

Audit Controls

Report

Security, Availability, &

Confidentiality Report

General Controls

Report

Payment Card Standards

PCI DSS Level 1

Protected Health

Information

Page 19: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Task VPC networking mode

Default/Root Global Namespace

docker0

Io

eth0

172.16.0.0

172.16.1.0

172.16.2.0

1. Pre ENI Attachment: The Primary

ENI (eth0) is in the default

namespace

Default/Root Global Namespace

docker0

Io

eth0

172.16.0.0

172.16.1.0

172.16.2.0eth1

2. ENI Attachment: The new

ENI (eth1) is in the default

namespace

Default/Root Global Namespace

ecs0

Io

eth0

172.16.0.0

172.16.1.0

172.16.2.0

do

cke

r0

Io

eth0

172.16.0.0

172.16.1.0

172.16.2.0

ve-c1

3. ENI Provisioned: The ECS Agent

invokes open source CNI plugins to

move the new ENI into the taks

namespace

Page 20: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Managed service discovery for ECS

Build apps where services are invoked by name

Name resolves to IP/port automatically

No infrastructure to manage

Route53 provides service registry

Page 21: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Full CI/CD with AWS CodePipeline

AWS

CodeCommit

AWS

CodeBuild

Amazon ECR Amazon ECS

Source

RepositoryBuild Deploy

or or

AWS

CodePipeline

Store Image

Page 22: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Windows containers

AWS VPC

networking mode

Global footprint

Advanced task

placement

Deep integration

with AWS platform

…{ } ECS CLI

Powerful scheduling

engines

Auto scaling

CloudWatch metrics

Load balancers

Page 23: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Ok, but I still have to manage the underlying cluster

Page 24: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Introducing Fargate

Launch tasks

Scale easily

No cluster

management

Resource based

pricing

No placement

No scheduling

Create a task definition (pod), set some resource characterization, and launch it

Page 25: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Fargate is just a launch mode

AWS VPC

networking mode

Global footprint

Advanced task

placement

Deep integration

with AWS platform

…{ } ECS CLI

Powerful scheduling

engines

Auto scaling

CloudWatch metrics

Load balancers

Page 26: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

When to use Fargate vs EC2 launch mode

Fargate when:

You are OK with awsvpc networking mode

You want to pay only when pods/tasks run

EC2 when:

You need to customize the underlying images

You need to access the underlying instances

You want a network mode other than awsvpc

You want to take advantage of things like spot fleets

Page 27: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

What I really love is Kubernetes

Page 28: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Vibrant and growing community

of Kubernetes workloads run

on AWS today

CNCF survey

Page 29: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

AWS, would you build a Kubernetes service for us?

Page 30: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Introducing Elastic Container Service for Kubernetes

Page 31: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product
Page 32: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product
Page 33: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product
Page 34: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Amazon EKS is certified Kubernetes conformant

The Certified Kubernetes Conformance Program guarantees you can use all existing plugins and tooling from the Kubernetes community

Any application running on any standard Kubernetes environment is fully compatible

Page 35: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Availability

Zone 1

Etcd

Master

Etcd

Master

Availability

Zone 2

Availability

Zone 3

Etcd

Master

Amazon EKS architecture

Page 36: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Availability

Zone 1

Etcd

Master

Etcd

Master

Availability

Zone 2

Availability

Zone 3

Etcd

Master

Amazon EKS architecture

Customer Account

AWS Managed

Page 37: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

mycluster.eks.amazonaws.com

EKS Workers

kubectl

Amazon EKS architecture

AZ 1 AZ 2 AZ 3

Your AWS account

Page 38: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Kubernetes upgrades

Major Minor Patch

Breaking

Changes

New

Features

Bug fixes

Security

Page 39: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Kubernetes / AWS Integrations

Page 40: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

I want to give a pod permissions to an AWS service: kube2iam

• Runs as a DaemonSet on your workers

• Creates iptables rules to redirect metadata service to kube2iam

• Add annotations to your pods to grant them AWS IAM Roles

Page 41: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

kube2iam example

apiVersion: extensions/v1beta1

kind: Deployment

metadata:

name: nginx-deployment

spec:

replicas: 3

template:

metadata:

annotations:

iam.amazonaws.com/role: arn:aws:iam:123567989012/role/nginx-role

spec:

containers:

- name: nginx

image: nginx:1.9.1

ports:

- containerPort: 80

Page 42: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

I want to use AWS accounts to operate Kubernetes: Heptio Authenticator for AWS

An open source approach to integrating

AWS IAM authentication with Kubernetes

Page 43: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

kubectl

3) Authorizes AWS Identity with RBAC

K8s API

1) Passes AWS Identity

2) Verifies AWS Identity

4) K8s action

allowed/denied

AWS Auth

Heptio IAM authentication with kubectl

Page 44: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Amazon Elastic Container Registry

Page 45: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Native VPC networking

with CNI plugin

Pods have the same VPC

address inside the pod

as on the VPC

Simple, secure networkingOpen source and

on Github

https://github.com/aws/amazon-vpc-cni-k8s

I want my pods to have an ENI on my VPC: amazon-vpc-cni-k8s

Page 46: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Nginx Pod

Java Pod

ENI

Secondary IPs:

10.0.0.1

10.0.0.2

Veth IP: 10.0.0.1

Veth IP: 10.0.0.2

Nginx Pod

Java Pod

ENI

Veth IP: 10.0.0.20

Veth IP: 10.0.0.22

Secondary IPs:

10.0.0.20

10.0.0.22

ec2.associateaddress()

VPC Subnet – 10.0.0.0/24

Instance 1 Instance 2

CNI

CNI

Amazon VPC network mode

Page 47: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

I want my services to be exposed through an AWS Load Balancer

$ kubectl run nginx --image=nginx --replicas 3 --port=80

$ kubectl expose deployment nginx --type=LoadBalancer

$ kubectl get services -o=wide

NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S)

nginx LoadBalancer 100.70.217.164 a5cefe533ac1d11e7a38f0a67818e472-1987464052.eu-west-1.elb.amazonaws.com 80:31108/TCP

Page 48: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Managed Kubernetes on AWS

Highly available Automated

version

upgrades

Integration

with other AWS

services

Etcd

Master

Managed

Kubernetes

control plane

CloudTrail,

CloudWatch, ELB, IAM,

VPC, PrivateLink

Page 49: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

So, what are my choices to run a managed container platform on AWS?

Page 50: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Choose your

orchestration tool1

Choose your

launch type2

ECS EKS

EC2 Fargate EC2 Fargate

AWS Managed Container Services

Page 51: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando Sistemas Críticos en CloudAWS Transformation Day

Octubre 2018

BBVAInnovation

Labs

Fernando García, Product Lead

Raimundo Alegría, Software Architect

Page 52: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 52

¿Qué consideramos sistemas críticos?

Index

01

02

03

Principios de diseño para la evolución

Cloud

Conclusiones

Page 53: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 53

¿Qué consideramos sistemas

críticos?

Page 54: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 54

¿Qué consideramos un

sistema crítico?

Ofrece servicio a clientes

finales

Genera impacto económico

directo en la compañía

24x7 con disponibilidad de

“cuatro nueves”: 99,99%

Page 55: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 55

¿Por qué evolucionar

sistemas críticos?

Adaptación a hábitos de

consumo cambiantes

Generar nuevos modelos de

negocio

Mercado mucho más

complejo y competitivo

Page 56: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 56

This slide can be used to explain

a photo. Body text must be Open

Sans format, 15pt minimum size

and 18pt. maximum size is

recommended. Highlights Open

Sans Bold, sapien non iaculis.

¿Cuál es la situación

actual?

Sistemas monolíticos con

escalado vertical

Coste de cambio elevado y lento

Dificultad para encontrar perfiles

especializados

Page 57: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 57

Principios de diseño para

evolucionar a una arquitectura

Cloud

Page 58: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 58

Convivencia con el sistema actual: Evitar grandes big bangs, adoptando conceptos de

Arquitectura Evolutiva*

Adaptarse a los nuevos riesgos de seguridad y normativos derivados del uso de la nube

pública

Mejorar los requisitos no funcionales del sistema de partida: SLAs, observabilidad, auditoría,

escalado...

...antes de abordar la evolución, hay que entender las restricciones del entorno

Punto de partida. Premisas de diseño

(*) https://www.thoughtworks.com/insights/blog/microservices-evolutionary-architecture

Page 59: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 59

Microservicios**. Permiten

implementar arquitecturas

evolutivas

Maximizar el uso de la

plataforma para enfocarte en tu

negocio

“Container is the new .exe”. Todo

se ejecuta en containers

Ley de Conway*. Diseñar la

arquitectura como reflejo de la

estructura organizativa

Despliegue multiplataforma.

Minimizando el vendor-lock

Automatiza todo. Es imposible operar

un sistema complejo sin automatizar

todos sus aspectos.

01

02

03

04

05

06

¿Cuáles son estos principios de diseño?

(*) https://en.wikipedia.org/wiki/Conway%27s_law

(**) https://martinfowler.com/articles/microservices.html

Page 60: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 60

El uso de containers ofrece unos niveles de estandarización y seguridad que habilitan reducir drásticamente el time to market

Container is the new .exe

Todo el SW productivo se ejecuta en

containers. Unifica los mecanismos de

despliegue, operación y mejora el

aprovechamiento de la infraestructura

Gestión de la configuración en docker.

Patrón sidecar*, la configuración como

parte de la versión del servicio

La infraestructura se define y

ejecuta utilizando containers.

Docker es la herramienta para la

construcción CI/CD. Habilita la

reproducibilidad, portabilidad y

versionado

Page 61: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 61

ECS como orquestador de contenedores

Curva de aprendizaje rápida.

Microservicios en producción a tres

clicks de distancia

Seguridad. El modo de red aws-vpc

nos permite segmentar roles y security

groups a nivel de container.

Totalmente gestionado. Mínima

necesidad de operación: evita

cambios de versiones, recovery,

parches de seguridad...

Escalable y disponible. Múltiples

zonas de disponibilidad y fácil escalado

con grupos de autoescalado

Maximizar el uso de la plataforma nos permite enfocarnos en las necesidades de negocio

Page 62: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 62

Arquitectura de sistemas

Es necesario conocer y seguir los estándares y las buenas prácticas del proveedor cloud

Page 63: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 63

Conclusiones

Page 64: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

Diseñando un sistema crítico en Cloud / 64

El uso de containers permite alcanzar niveles de estandarización y seguridad que habilitan reducir drásticamente el time to market y el riesgo operacional

La automatización habilita minimizar la inversión en tiempo y coste en operación

¡Usa la plataforma! Maximizar el uso de la plataforma nos permite enfocarnos en el core de nuestro de negocio

Conclusiones y aprendizajes

Page 65: Portable Applications - Containers on AWS - …...Portable Applications - Containers on AWS October 2018 David Sanz, Solutions Architect, Amazon Web Services Fernando García, Product

© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Thank you!https://aws.amazon.com/es/about-aws/events/eventos-es/

@awscloud_es