Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare una empresa de Scribd logo
Ingeniería en Software
Deployment y Testing
automatizado de
infraestructura
Marcelo Klein y Diego Mansilla
Argentesting 2018
Quienes somos
Argentesting 2018
Infra - 10 años atrás...
HW oriented
+ Infra = + equipos físicos
Argentesting 2018
Timelapse de los últimos años
Flickr 10+ Deploys por día
Amazon AWS
Servicios en la Nube
Digital Ocean
Open Cloud
Devops “Movement”
Virtual Machines
Infrastructure as a Service
Argentesting 2018
Infra - Hoy
Papá, ¿De qué
están hechas
las nubes?
Principalmente
de servidores
Linux...
Argentesting 2018
Deployment automatizado
Argentesting 2018
Deployment Automatizado
Deploy Right NOW
Menor downtime posible
(Google is chasing us)
Tests Despliegue
Necesidades Desafíos
Independencia Infra
Rollback simple
Frontend Servers
(CSS, JS, imagenes)
Amazon Load
Balancer
Amazon Load
Balancer + HAProxy
For Domain Control
Application Nodes
(Al menos 8)
Data Nodes
Microservices
Nodes
HAProxy For
Services & Data
Argentesting 2018
Como automatizamos y testeamos
Empezar de forma Simple
Conocer las herramientas
que dispones
.. y construir algo grandioso
Argentesting 2018
Como testeamos el deploy
Ya teníamos una
herramienta que estaba
orientada a otra función...
Tests Despliegue
Independencia Infra
Check fast si falla
Alarma de
acuerdo a reglas
Plugins permiten
agregar código
específico de que
chequear
Chequea
múltiples
elementos en un
server, incluido
checksums
Permite chequear
URLs asociadas a
servicios o sitios
webs
Argentesting 2018
Como testeamos el deploy
Ya teníamos una
herramienta que estaba
orientada a otra función...
Tests Despliegue
Independencia Infra
Check fast si falla
Alarma de
acuerdo a reglas
Plugins permiten
agregar código
específico de que
chequear
Chequea
múltiples
elementos en un
server, incluido
checksums
Permite chequear
URLs asociadas a
servicios o sitios
webs
Argentesting 2018
Desafíos
Test de Docker
Containers
Test SWARM files
Argentesting 2018
Testear Infra como Servicio
Argentesting 2018
Medallia y su escala
> 10.000 MM de Encuestas
Capture Análisis Acción Mejora
Uptime > 99.95%
> 1MM usuarios / mes
Argentesting 2018
La necesidad de una nube híbrida
SaaS
PaaS
IaaSTITAN IaaS API
Argentesting 2018
Del Monolito a los Microservicios
Antes Ahora
Argentesting 2018
Infrastructure as Code, GitOps, ChatOps, Cloud Native
Cómo manejamos miles de servidores en varios DC heterogéneos?
Argentesting 2018
Infrastructure as Code, GitOps, ChatOps, Cloud Native
Código
Version
Control
Code
Review
Integrar
Build
Deploy
Estado Declarativo
Editor Texto Git/etc Tool Code
Review
Static analysis Cloud Tooling
“Debe haber 10 nodos públicos y 10 privados” VS
“Crear 4 máquinas nuevas”
Fuente de verdad
Herramienta de Comunicación
Reconciliación de estado contínua y CI/CD
Infraestructura Reproducible
Verify
Testing Tools
Monitoring
Argentesting 2018
Distintos niveles de configuración
.. y construir algo grandioso
Hardware Físico Sistema Operativo Aplicación
Argentesting 2018
Deployment + testing de infra hoy
Algunas Tools que creamos
● DCIB: Datacenter in a Box
● Autopilot
● Genie AWS Testing
● Jenkins Infra Testing set
● Titan Infra Tester
Argentesting 2018
● Smarter Deployments
○ Service Level Objectives (SLO)
○ Self-healing DC / Remediation
● Improve Existing
○ Mocking
○ Chaos Testing
■ Chaos Monkey (Netflix)
■ Pumba for Docker
○ Disaster Recovery - Automated
Próximos pasos en la empresa y futuro en la industria
Algunos Proyectos por venir

Más contenido relacionado

Argentesting 2018 - Deployment y Testing automatizado en infraestructura

  • 1. Ingeniería en Software Deployment y Testing automatizado de infraestructura Marcelo Klein y Diego Mansilla
  • 3. Argentesting 2018 Infra - 10 años atrás... HW oriented + Infra = + equipos físicos
  • 4. Argentesting 2018 Timelapse de los últimos años Flickr 10+ Deploys por día Amazon AWS Servicios en la Nube Digital Ocean Open Cloud Devops “Movement” Virtual Machines Infrastructure as a Service
  • 5. Argentesting 2018 Infra - Hoy Papá, ¿De qué están hechas las nubes? Principalmente de servidores Linux...
  • 7. Argentesting 2018 Deployment Automatizado Deploy Right NOW Menor downtime posible (Google is chasing us) Tests Despliegue Necesidades Desafíos Independencia Infra Rollback simple Frontend Servers (CSS, JS, imagenes) Amazon Load Balancer Amazon Load Balancer + HAProxy For Domain Control Application Nodes (Al menos 8) Data Nodes Microservices Nodes HAProxy For Services & Data
  • 8. Argentesting 2018 Como automatizamos y testeamos Empezar de forma Simple Conocer las herramientas que dispones .. y construir algo grandioso
  • 9. Argentesting 2018 Como testeamos el deploy Ya teníamos una herramienta que estaba orientada a otra función... Tests Despliegue Independencia Infra Check fast si falla Alarma de acuerdo a reglas Plugins permiten agregar código específico de que chequear Chequea múltiples elementos en un server, incluido checksums Permite chequear URLs asociadas a servicios o sitios webs
  • 10. Argentesting 2018 Como testeamos el deploy Ya teníamos una herramienta que estaba orientada a otra función... Tests Despliegue Independencia Infra Check fast si falla Alarma de acuerdo a reglas Plugins permiten agregar código específico de que chequear Chequea múltiples elementos en un server, incluido checksums Permite chequear URLs asociadas a servicios o sitios webs
  • 11. Argentesting 2018 Desafíos Test de Docker Containers Test SWARM files
  • 13. Argentesting 2018 Medallia y su escala > 10.000 MM de Encuestas Capture Análisis Acción Mejora Uptime > 99.95% > 1MM usuarios / mes
  • 14. Argentesting 2018 La necesidad de una nube híbrida SaaS PaaS IaaSTITAN IaaS API
  • 15. Argentesting 2018 Del Monolito a los Microservicios Antes Ahora
  • 16. Argentesting 2018 Infrastructure as Code, GitOps, ChatOps, Cloud Native Cómo manejamos miles de servidores en varios DC heterogéneos?
  • 17. Argentesting 2018 Infrastructure as Code, GitOps, ChatOps, Cloud Native Código Version Control Code Review Integrar Build Deploy Estado Declarativo Editor Texto Git/etc Tool Code Review Static analysis Cloud Tooling “Debe haber 10 nodos públicos y 10 privados” VS “Crear 4 máquinas nuevas” Fuente de verdad Herramienta de Comunicación Reconciliación de estado contínua y CI/CD Infraestructura Reproducible Verify Testing Tools Monitoring
  • 18. Argentesting 2018 Distintos niveles de configuración .. y construir algo grandioso Hardware Físico Sistema Operativo Aplicación
  • 19. Argentesting 2018 Deployment + testing de infra hoy Algunas Tools que creamos ● DCIB: Datacenter in a Box ● Autopilot ● Genie AWS Testing ● Jenkins Infra Testing set ● Titan Infra Tester
  • 20. Argentesting 2018 ● Smarter Deployments ○ Service Level Objectives (SLO) ○ Self-healing DC / Remediation ● Improve Existing ○ Mocking ○ Chaos Testing ■ Chaos Monkey (Netflix) ■ Pumba for Docker ○ Disaster Recovery - Automated Próximos pasos en la empresa y futuro en la industria Algunos Proyectos por venir