dev ops e infraestructura – acompañando nuestro software a producción

28
Carlos Peix - [email protected] - @carlospeix DevOps e Infraestruc tura Acompañando nuestro software a producción

Upload: kleer-agile-coaching-training

Post on 29-Jun-2015

90 views

Category:

Software


1 download

DESCRIPTION

Presentación de la sesión en Agiles 2014: DevOps: Acompañando nuestro código a producción.

TRANSCRIPT

Page 1: Dev ops e infraestructura – acompañando nuestro software a producción

Carlos Peix - [email protected] - @carlospeix

DevOps e Infraestructura

Acompañando nuestro software a producción

Page 2: Dev ops e infraestructura – acompañando nuestro software a producción

DevOps - ¿Qué es? ¿Qué NO es?

¿Que no es?● Bla, bla, bla● Bla, bla, bla● Bla, bla, bla● Bla, bla, bla● Bla, bla, bla

¿Que es?● Ble, ble, ble● Ble, ble, ble● Ble, ble, ble● Ble, ble, ble● Ble, ble, ble

Page 3: Dev ops e infraestructura – acompañando nuestro software a producción

Iniciativa DevOps

¿Por qué? ¿Cómo? ¿Qué?

Page 4: Dev ops e infraestructura – acompañando nuestro software a producción

¿Por qué?

¡¡¡Porque se siente bien!!!

Page 5: Dev ops e infraestructura – acompañando nuestro software a producción

¿Por qué?

Costo

Velocidad (costo)

Calidad (costo)

Page 6: Dev ops e infraestructura – acompañando nuestro software a producción

¿Por qué?

Page 7: Dev ops e infraestructura – acompañando nuestro software a producción

¿Por qué?

Page 8: Dev ops e infraestructura – acompañando nuestro software a producción

¿Por qué? Testers pueden probar cualquier versiónOperaciones instala con un solo click en cualquier ambienteSoporte que puede revisar cualquier versión pasadaÁrea de IT puede dedicarse a otros temas más interesantes

Sistema basado en demanda(pull system)

Page 9: Dev ops e infraestructura – acompañando nuestro software a producción

¿Por qué? < Stress< Fragilidad> Velocidad> Flexibilidad< Errores< Time to Market< Lead y Cycle Time

Repetible, confiable y predecible

Page 10: Dev ops e infraestructura – acompañando nuestro software a producción

¿Cómo?

“Si usted es un arquitecto de torre de marfil, por favor descienda y póngase en contacto con la intersección vital entre software, hardware y los usuarios finales.”

Trad. ajustada del libro Release It de Michael Nygard|

Page 11: Dev ops e infraestructura – acompañando nuestro software a producción

¿Cómo?

“Los desarrolladores deben entregar software listo para producción”

Trad. ajustada del libro Continuous Integration

De Jez Humble y David Farley

Page 12: Dev ops e infraestructura – acompañando nuestro software a producción

¿Cómo?

TTMLead TimeSimplicidad

SLAEstabilidadSeguridad

OportunidadesSoporte al negocioRetorno de inversiónCompetitividad

Page 13: Dev ops e infraestructura – acompañando nuestro software a producción

¿Cómo?Value Stream

Deployment pipeline

Flujo de valor y deployment pipeline

Page 14: Dev ops e infraestructura – acompañando nuestro software a producción

¿Cómo?

Flujo de valor

¡Producción!

Desarrollador

CommitStage

AcceptanceStage

ReleaseStage

Compile

Unit tests

Code metrics

Integration tests

Acceptance tests

Manual tests

Stress tests

Build server

Deployment pipeline

Page 15: Dev ops e infraestructura – acompañando nuestro software a producción

¿Cómo?

Todo en VCS

Proceso repetible

Automatizar (casi) todo

Si duele, más frecuente

Calidad desde el principio

Terminado es “en producción”

Todos somos responsables

Mejora continua

Page 16: Dev ops e infraestructura – acompañando nuestro software a producción

¿Qué?

Page 17: Dev ops e infraestructura – acompañando nuestro software a producción

¿Qué?

Construcción• Dependencias, calidad

Prueba• UI, integración, unitarias

Despliegue• Base de datos, ambiente, configuración

Monitoreo• Técnico, negocio

Desde el día

1

Page 18: Dev ops e infraestructura – acompañando nuestro software a producción

¿Qué?

Automatización• Jenkins, Teamcity, etc

Dependencias de terceros• Maven, Gems, NuGet

Dependencias propias• Nexus, Artifactory

Construcción

Page 19: Dev ops e infraestructura – acompañando nuestro software a producción

¿Qué?

Base de datos• Liquidbase, Migrator.NET, etc

Ambientes• Puppet, Ansible, Vagrant, Docker

Configuración• Nagios, Open NMS, Zookeeper• Ant, NAnt, Perl, Bash, Powershell

Despliegue

Page 20: Dev ops e infraestructura – acompañando nuestro software a producción

¿Qué?

Técnico• Smoke tests• Dependencias

Negocio• Indicadores transacciones de negocio• Graphite, Etc.

Monitoreo

Page 21: Dev ops e infraestructura – acompañando nuestro software a producción

¿Qué?

Despliegue completamente probadoDebe estar automatizado

(caso contrario, ¿qué probamos?)

Probamos (automatizamos)Cambios en la base de datosConfiguración del ambienteConfiguración de la aplicación

Page 22: Dev ops e infraestructura – acompañando nuestro software a producción

¿Qué?

Page 23: Dev ops e infraestructura – acompañando nuestro software a producción

DevOps - ¿Qué es? ¿Qué NO es?

¿Que no es?

¿Que es?

Page 24: Dev ops e infraestructura – acompañando nuestro software a producción

Referencias

Page 25: Dev ops e infraestructura – acompañando nuestro software a producción

Referencias

Page 26: Dev ops e infraestructura – acompañando nuestro software a producción

Referencias

Page 27: Dev ops e infraestructura – acompañando nuestro software a producción

BUENOS AIRES

MONTEVIDEO

SAO PAULO

BOGOTÁ

QUITO

LIMA

MÉXICO DF

COCHABAMBA

Estamos

en...

Page 28: Dev ops e infraestructura – acompañando nuestro software a producción

Carlos Peix [email protected]

@carlospeix