El documento presenta una introducción al Chaos Engineering. Define el Chaos Engineering como la disciplina de experimentar con sistemas distribuidos para generar confianza en su capacidad de soportar condiciones turbulentas. Explica las herramientas del Chaos Engineering como Chaos Monkey y Pumba, y concluye que el Chaos Engineering entrena a los equipos y ayuda a crear sistemas más antifragiles.
1. Victor MAtínez Bahillo (@vthot4)
Chaos Engineering.
Caminando hacia los sistemas antifrágiles.
MalagaMité 2018
2. 14/11/2018 MalagaMité 2018 2
Sobre mi …
Arquitecto de Sistemas en Versia Tecnologías Emergentes.
• Cursando Grado de Ingeniería Informática.
• Cursando Grado de Ciencias Ambientales.
linkedin.com/in/victor-martinez-bahillo
@vthot4
4. Complejidad de los sistemas.
Systems Thinking
14/11/2018 MalagaMité 2018 4
5. 14/11/2018 MalagaMité 2018 5
Nuevas arquitecturas.
Source: http://blog.nicolaswebdev.com/2017/10/24/presentation-of-microservices-arquitecture.html
Un sistema es un conjunto
de elementos o partes que
interaccionan entre sí a fin de
alcanzar un objetivo concreto.
“El pensamiento sistémico es
una disciplina para ver totalidades.
Es un marco para ver interrelaciones
en vez de cosas, para ver patrones
de cambio en vez de “instantáneas”
estáticas.”
8. 14/11/2018 MalagaMité 2018 8
Cisnes Negro.
“… grave limitación de nuestro aprendizaje a partir de la observación o
la experiencia, y la fragilidad de nuestro conocimiento. Una sola
observación puede invalidar una afirmación generalizada derivada de
milenios de visiones confirmatorias de millones de cisnes blancos.”
9. 14/11/2018 MalagaMité 2018 9
Cisnes Negro.
• Es una rareza, pues habita fuera del reino de las
expectativas normales, porque nada del pasado
puede apuntar de forma convincente a su
posibilidad.
• Produce un impacto tremendo.
• Pese a su condición de rareza, la naturaleza
humana hace que inventemos explicaciones de su
existencia después del hecho, con lo que se hace
explicable y predecible.
10. 14/11/2018 MalagaMité 2018 10
Cisnes Negros. Historia de un pavo.
Confunde la “ausencia de pruebas” con tener realmente la “prueba de la ausencia”.
11. 14/11/2018 MalagaMité 2018 11
Tipos de sistemas.
FRÁGIL ROBUSTO ANTIFRAGIL
ARRL ( Assured Reliability and Resilience level)
12. 14/11/2018 MalagaMité 2018 12
Sistemas Antifrágiles.
“Los sistemas antifrágiles inteligentes se definen
como sistemas capaces no solo de soportar
perturbaciones en su funcionamiento, sino que
aprovechan los fallos sufridos para aprender y
mejorar su resiliencia de forma autónoma .”
ARRL ( Assured Reliability and Resilience level)
13. 14/11/2018 MalagaMité 2018 13
Sistemas Antifrágiles. AIOps.
AIOps (Artificial intelligence for IT operations), es un término general para
el uso de análisis de Big Data, Machine Learning, Deep Learning y otras
tecnologías de inteligencia artificial para automatizar la identificación y
resolución de problemas surgidos en los entornos de operación.
15. 14/11/2018 MalagaMité 2018 15
Chaos Engineering. Definición.
• No consiste en romper cosas en Producción.
• No trata hacer caer Producción.
16. 14/11/2018 MalagaMité 2018 16
Chaos Engineering. Definición.
“La ingeniería del caos es la disciplina de experimentar en sistemas
distribuidos, con la finalidad de generar confianza en la capacidad
del sistema para soportar condiciones turbulentas en producción.
http://principlesofchaos.org/
”El rendimiento de los sistemas complejos suele optimizarse al borde del caos, justo antes de
que el comportamiento del sistema se vuelva irreconociblemente turbulento.
Sydney Dekker, Drift Into Failure
17. 14/11/2018 MalagaMité 2018 17
Chaos Engineering. Necesidades.
NECESIDADES
Métricas de sistema
Disponibilidad
PKIs de servicio
24. 14/11/2018 MalagaMité 2018 24
Chaos Engineering. Chaos Toolkit.
Declarative
The Chaos Toolkit defines a declarative Open
API to express your Chaos Engineering
experiment
Extensible
The Chaos Toolkit is extensible at will for any
system through its Open API. Drivers for
Kubernetes, AWS, Google Cloud Engine,
Microsoft Azure, Cloud Foundry, Humio,
Prometheus and many others
Automation
The Chaos Toolkit loves automation and can be
embedded in your favourite CI/CD chain
Open Source
The Chaos Toolkit is Open Source with an
Apache 2 license. No lock-in and powered by its
community
28. 14/11/2018 MalagaMité 2018 28
“Estudia como si nunca fueras
a aprender bastantes bastante,
como si temieras olvidar lo
aprendido”
Confucio
“Me lo contaron y lo olvide;
lo vi y lo entendí;
lo hice y lo aprendí”
Confucio
“No importa lo lento que vayas
mientras no te detengas”
Confucio