About this Module
We'll cover the following
Who is this module for?#
This module is for anyone who has knowledge of Kubernetes production and release. It is required to have prior knowledge of Kubernetes to get the hang of the concepts of this module.
Module structure#
This module has nine chapters, namely:
-
Introduction to Kubernetes Chaos Engineering:
This chapter introduces us to Chaos Engineering. It also teaches the principles and the process, and the checklist.
-
Defining Requirements:
This chapter goes through the requirements guideline of the tool choice and the installation process of the Chaos Toolkit.
-
Destroying Application Instances:
This chapter goes through the process of terminating application instances and then probing phases and conditions to make the application fault-tolerant.
-
Experimenting with Application Availability:
This chapter teaches us about the validation of an application. It also teaches us to validate application health and availability.
-
Obstructing and Destroying Network:
This chapter introduces us to the
Istio
plugin. It also teaches us how to abort network requests and how they can help to make the application resilient to partial network failures. It also teaches us to simulate and run denial of service attacks. -
Draining and Deleting Nodes:
This chapter teaches us about draining, uncordoning, and deleting worker nodes. It also teaches us how to make nodes drainable and destroying cluster zones.
-
Creating Chaos Experiment Reports:
This chapter introduces us to the experiments journal. It also teaches us how to create a journal and creating multi-experimental reports.
-
Running Chaos Experiments Inside a Kubernetes Cluster:
This chapter teaches us how to set up a Chaos Toolkit in a Kubernetes cluster. It also teaches us about the types of experiment executions, how to run those executions, and sending experiment notifications.
-
Executing Random Chaos:
This chapter explores different dashboards such as Grafana and Kiali. It also teaches how to prepare for termination of instances, termination random application instances, disrupting network traffic, and termination random nodes.