bbva arquitectura - demo devops

34
Demo 1 - DevOps DevOps + AWS + Docker Ernesto Anaya Ruiz BBVA DevOps Architect Demo: Circuito Básico

Upload: ernesto-anaya

Post on 21-Jan-2018

572 views

Category:

Software


6 download

TRANSCRIPT

Page 1: BBVA Arquitectura - Demo DevOps

Demo 1 - DevOpsDevOps + AWS + Docker

Ernesto Anaya RuizBBVA DevOps Architect

Demo: Circuito Básico

Page 2: BBVA Arquitectura - Demo DevOps

CI / CD / DevOps

Page 3: BBVA Arquitectura - Demo DevOps

¿Qué es DevOps?

● Cultura, movimiento, paradigma

● Apunta a establecer un ambiente donde construir, certificar, y desplegar

software ocurre rápida, frecuente y confiablemente.

● Rompe barreras culturales entre Desarrollo e Infraestructura

Page 4: BBVA Arquitectura - Demo DevOps
Page 5: BBVA Arquitectura - Demo DevOps

DevOps - ¿Qué requerimos?

● Buenas prácticas○ Agile Development

○ Versionar código

○ Integrar frecuentemente

○ Escribir pruebas unitarias automatizadas

○ Equipos multi-disciplinarios

○ Participación activa de Product Owner

○ KPI’s Automáticos

○ Automatizar todo

○ Uso de contenedores

○ Integración Continua

○ Entrega Continua

○ Despliegue Continuo

○ Acceso directo a Monitoreo de prod

○ ...

Page 6: BBVA Arquitectura - Demo DevOps

DevOps - ¿Qué requerimos?

● Herramientas○ Versionamiento: GIT GitLab, BitBucket

○ Issue Tracking: JIRA, GitLab Issues, Trello, Redmine

○ Build Automation: GitLab CI, Jenkins, Bamboo

○ Dependency Manager: Maven, Gradle

○ Static Code Analysis: SonarQube

○ Virtualización: IaaS, AWS, Open Stack Private Cloud

○ Artifact Repository Manager: Artifactory, NuGet

○ Container Images Registry: Docker Registry

○ Monitor: NewRelic

○ Comunicación: Slack, HipChat

○ etc.

Page 7: BBVA Arquitectura - Demo DevOps

DevOps - ¿Qué requerimos?

● Métricas / KPIs○ Frecuencia de Despliegues

○ % Code Coverage (unit testing)

○ % Builds pass/fail

○ % de Apps / Repos

Contenedorizados

○ Deuda Técnica

○ E2E time

○ % Rollbacks en Producción

○ etc.

Page 8: BBVA Arquitectura - Demo DevOps

¿Por qué DevOps ahora?

Page 9: BBVA Arquitectura - Demo DevOps

DevOpsMicroServices

ServerLess

IaaS

PaaS

SaaS

Page 10: BBVA Arquitectura - Demo DevOps

Virtualización

Page 11: BBVA Arquitectura - Demo DevOps

Tecnologías que facilitan DevOps

Page 12: BBVA Arquitectura - Demo DevOps
Page 13: BBVA Arquitectura - Demo DevOps
Page 14: BBVA Arquitectura - Demo DevOps

● No todos los servicios están en todas las regiones

● AWS opera 13 regiones, cada región tiene min 2, max 5 AZ

● Existen 2 Regiones Especiales (USA Gov, China)

● En total tienen 35 AZ

● Cada DataCenter tiene entre 50K a 80K Servidores Físicos

Region

AZ

DataCenter

AZ

AZ

DataCenter

DataCenter

DataCenter

DataCenter

DataCenter

Server

Server

Server

Server

Server

Server

Server

Server

VM

VM

VM

VM

VM

VM

VM

VM

Infraestructura de AWS

RegionAZ

AZ

AWS DataCenter

DataCenter

Page 15: BBVA Arquitectura - Demo DevOps
Page 16: BBVA Arquitectura - Demo DevOps

Pricing

Page 17: BBVA Arquitectura - Demo DevOps

Pricing

Page 18: BBVA Arquitectura - Demo DevOps

Pricing

Page 19: BBVA Arquitectura - Demo DevOps

DEMO● Revisión breve al Catálogo

● Lanzar una instancia EC2 desde consola

● “Hola Mundo” en web

● Lanzar una instancia EC2 usando el API

● Ejemplo del Billing

Page 20: BBVA Arquitectura - Demo DevOps
Page 21: BBVA Arquitectura - Demo DevOps

El Reto

Page 22: BBVA Arquitectura - Demo DevOps
Page 23: BBVA Arquitectura - Demo DevOps
Page 24: BBVA Arquitectura - Demo DevOps
Page 25: BBVA Arquitectura - Demo DevOps
Page 26: BBVA Arquitectura - Demo DevOps
Page 27: BBVA Arquitectura - Demo DevOps
Page 28: BBVA Arquitectura - Demo DevOps

VMs vs Containers

Page 29: BBVA Arquitectura - Demo DevOps

Característica VM Container

Emulación Hardware SI NO

Procesos aislados SI (Diferente OS) SI (Mismo OS)

Comparten el kernel NO SI

Reserva RAM para OS SI NO

Containers VS VMs

Page 30: BBVA Arquitectura - Demo DevOps
Page 31: BBVA Arquitectura - Demo DevOps

DEMO● Instalar Docker en AWS

● Buscar Imágenes en el Hub

● Traer Imágenes

● Correr Containers simples

● Correr Containers (wordpress, voting app)

Page 32: BBVA Arquitectura - Demo DevOps

DE

MO

C

I

Page 33: BBVA Arquitectura - Demo DevOps

DEMO CI● GitLab CI

● Runner

● Dev Server

● Configuración de llaves

Developer

GitLab.com

GitLab CIRunner

Dev Server

git push

build

deploy

Page 34: BBVA Arquitectura - Demo DevOps

Métricas● A nivel de

○ Aplicación

○ Equipos

○ Unidades / Áreas