000125572 001__ 125572
000125572 005__ 20230420124056.0
000125572 037__ $$aTAZ-TFG-2022-2271
000125572 041__ $$aspa
000125572 1001_ $$aTorres Castillo, Sergio
000125572 24200 $$aDistributed systems resiliency validation using Chaos Engineering.
000125572 24500 $$aValidación de la resiliencia de sistemas distribuidos mediante Chaos Engineering.
000125572 260__ $$aZaragoza$$bUniversidad de Zaragoza$$c2022
000125572 500__ $$aCon la colaboración de la empresa Sysdig.
000125572 506__ $$aby-nc-sa$$bCreative Commons$$c3.0$$uhttp://creativecommons.org/licenses/by-nc-sa/3.0/
000125572 520__ $$aEste proyecto tiene como fin validar la resiliencia de los sistemas distribuidos mediante una nueva disciplina de pruebas llamada Chaos Engineering. Los sistemas distribuidos son sistemas complejos que necesitan ser sometidos a pruebas de resiliencia para asegurar que están en buen estado o poder encontrar los problemas fácilmente para corregirlos más adelante. En esto ayuda Chaos Engineering, simulando condiciones turbulentas en sistemas distribuidos para generar caos de igual forma que podría ocurrir ante acontecimientos imprevistos en nuestros sistemas. Sysdig es una empresa dedicada a la monitorización y seguridad en la nube y será el entorno de trabajo de este proyecto, dentro del departamento de calidad del software. Su servicio está construido sobre un sistema distribuido, por lo que se usará este escenario para simular ahí las condiciones turbulentas y comprobar su resiliencia ante una serie de inyección de fallos en algunos componentes que forman parte del sistema. Se definen varios casos de uso que describen varias hipótesis sobre cómo debería de comportarse nuestro sistema ante caídas de servicio o actualizaciones de componentes. Cada uno de estos casos de uso prueban distintos componentes de nuestro sistema, concretamente los datastores Redis, NATS Streaming y Kafka, en ese orden y de forma incremental de dificultad. Estos componentes forman parte importante del servicio de Sysdig y por eso validar que son resilientes para este tipo de condiciones resulta de importancia para asegurar una buena calidad de servicio. Para la ejecución de las pruebas de NATS Streaming y Kafka se utiliza el framework de Chaos Engineering Chaos Toolkit, que abstrae el diseño, implementación y ejecución de las pruebas de forma sencilla y extensible para los distintos casos de uso que se añaden. Finalmente, se validan los resultados para cada uno de los casos de uso, especificando los problemas que se han encontrado y si se ha encontrado alguna solución. Además, después de haber realizado las pruebas y tras comprobar los resultados obtenidos, se concluye si Chaos Engineering es una buena opción a largo plazo para seguir trabajando en la empresa. <br />
000125572 521__ $$aGraduado en Ingeniería Informática
000125572 540__ $$aDerechos regulados por licencia Creative Commons
000125572 700__ $$aJulián Ramos, Miguel$$edir.
000125572 7102_ $$aUniversidad de Zaragoza$$bInformática e Ingeniería de Sistemas$$cArquitectura y Tecnología de Computadores
000125572 7202_ $$aArronategui Arribalzaga, Unai$$eponente
000125572 8560_ $$f738233@unizar.es
000125572 8564_ $$s4593446$$uhttps://zaguan.unizar.es/record/125572/files/TAZ-TFG-2022-2271.pdf$$yMemoria (spa)
000125572 909CO $$ooai:zaguan.unizar.es:125572$$pdriver$$ptrabajos-fin-grado
000125572 950__ $$a
000125572 951__ $$adeposita:2023-04-20
000125572 980__ $$aTAZ$$bTFG$$cEINA
000125572 999__ $$a20220622143122.CREATION_DATE