bbva arquitectura - demo devops

Post on 21-Jan-2018

572 Views

Category:

Software

6 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Demo 1 - DevOpsDevOps + AWS + Docker

Ernesto Anaya RuizBBVA DevOps Architect

Demo: Circuito Básico

CI / CD / 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

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

○ ...

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.

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.

¿Por qué DevOps ahora?

DevOpsMicroServices

ServerLess

IaaS

PaaS

SaaS

Virtualización

Tecnologías que facilitan 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

Pricing

Pricing

Pricing

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

El Reto

VMs vs Containers

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

DEMO● Instalar Docker en AWS

● Buscar Imágenes en el Hub

● Traer Imágenes

● Correr Containers simples

● Correr Containers (wordpress, voting app)

DE

MO

C

I

DEMO CI● GitLab CI

● Runner

● Dev Server

● Configuración de llaves

Developer

GitLab.com

GitLab CIRunner

Dev Server

git push

build

deploy

Métricas● A nivel de

○ Aplicación

○ Equipos

○ Unidades / Áreas

top related