Název:
Testování projektu Strimzi s využitím chaosu a platformy Litmus
Překlad názvu:
Chaos Testing of the Strimzi Project Using the Litmus Platform
Autoři:
Zrnčík, Henrich ; Smrčka, Aleš (oponent) ; Vojnar, Tomáš (vedoucí práce) Typ dokumentu: Diplomové práce
Rok:
2022
Jazyk:
eng
Nakladatel: Vysoké učení technické v Brně. Fakulta informačních technologií
Abstrakt: [eng][cze]
Posledná dekáda v poli softwarového inžinierstva sa niesla v duchu automatizácie a abstrakcie. Vzostup nového spôsobu písania a menežovania softwaru (taktiež známeho ako architektúra mikroslužieb) so sebou taktiež priniesol nové výzvy v rámci zaručovania kvality softwaru. Beh systému v cloudovom prostredí s množstvom komponentov, ktoré sú roztrúsene po rôznych uzloch vyžaduje uvažovanie o závislostiach medzi týmito komponentami a dodatočné testovanie ktoré potvrdí odolnosť systému. Riešením je chaos inžinierstvo, často považované za logický krok po testovaní systému ako celku. Táto práca sa zaoberá riešením problému nedostatočných možností pre aplikáciu chaosu (a to prostredníctvom projektu Litmus) do produktu Apache Kafka, ktorý je nasadený na Kubernetes platforme ako súčasť projektu Strimzi. Inými slovami, aby sme mohli aplikovať chaos na projekte Strimzi, či iných systémoch ktoré ho používajú, musíme vytvoriť úplne nové časti Litmusu. Čo sa samotnej aplikácie chaosu týka, fakt že Strimzi je systém sám o sebe, avšak často súčasť iných systémov, znamená že budeme potrebovať vytvoriť rozšírenejšie riešenia. Práca je zavŕšená výslednými experimentami a potvrdením odolnosťi projektu v reálnom nasadení.
The last decade in software engineering has seen a trend towards automation and abstraction with increasing use of micro-service architecture. The trend towards micro-service architecture has brought with it a need to rethink how we implement software quality assurance. Running micro-services in the cloud with multiple distributed components requires additional management of shared and inter dependent components. This in turn requires additional testing of the system's resilience. A possible answer is chaos engineering, which is often considered the next logical step after end-to-end and integration testing. This thesis will focus on the gaps in testing created by the move to micro-service architecture and how chaos engineering can fill them. In particular it will focus on Apache Kafka deployed onto a kubernetes platform (Strimzi) and how the Litmus framework can be used to implement Chaos testing against this deployment. As our use-case was to have long running Kafkas deployed on kubernetes we had to adapt and extend the Litmus framework and build experiments that could test both long running kafkas and long running kubernetes. This thesis will demonstrate how we did this.
Klíčová slova:
Apache Kafka; Chaos engineering; container Orchestration; Distributed systems; Kubernetes; Kubernetes operators; Litmus; observability; Openshift; Strimzi; Apache Kafka; Chaos inžinierstvo; Distribuované systémi; Kubernetes; Kubernetes operátori; Litmus; Openshift; Orchestrácia kontajnerov; Pozorovatelnosť; Strimyi
Instituce: Vysoké učení technické v Brně
(web)
Informace o dostupnosti dokumentu:
Plný text je dostupný v Digitální knihovně VUT. Původní záznam: http://hdl.handle.net/11012/207838