10:30 AM – 11:30 AM I TRACK 2 I BRATISLAVA
About Jakub Stejskal
Jakub works as a Principal Software Quality Engineer at Red Hat where he leads a team responsible for the quality of the Strimzi project. Over the course of years he significantly contributed to an automation of testing and he has become one of the Strimzi maintainers. Within his work he also gets in touch with numerous technologies that are truly useful for building proper automation for testing processes.
All these technologies such as Jenkins, Argo or Tekton are much more powerful in Kubernetes world. Nowadays, IT world has been changing in a way that extensive systems are being divided into so-called microservices while using Kubernetes as an infrastructure. As a result, Jakub and his colleagues needed to change the testing approach. Their goal is to explore all the new ways that are being introduced by the community around Kubernetes and to use it in a day-to-day testing within Strimzi and Red Hat.
Testing of Even-streaming solution with Cloud-native tools
In recent years the testing of huge distributed systems has become one of the most important work items of Quality Assurance. Users and customers demand is to have reliable and robust systems that will run smoothly even while experiencing infrastructure issues such as network degradation or server issues. To achieve better reliability of the software, most of the users adopt microservices architecture and migrate their applications into the Kubernetes platforms.
Kubernetes itself not only provides the users with great possibilities, but also adds a lot of work to QA to properly test the software on top of Kubernetes. Softwares like Apache Kafka are incredibly complex, however there are ways how to effectively deploy and run Kafka clusters. One of these ways is the Strimzi project. Strimzi provides a collection of Kubernetes operators for deploying and managing Kafka in various configurations. However, there comes a question with it. How to properly test software like this? Can we be sure that operators are working properly only with test coverage in the scope of system tests? In Strimzi we do one additional thing. We simulate real usage of Strimzi with complex Kafka configuration, Kafka Connect configured for reading data from Twitter, and integrate other projects like Debezium or Apicurio Registry. Within the scope of this, we also work within multi-kubernetes cluster environment, where different clusters host different parts of the system and communicate with each other.
Such testing is not easy. So the question is how can we make sure everything is working properly? We will show you how to easily create a way to continually upgrade and verify your systems with ArgoCD, Tekton, Prometheus, Grafana, and also number of more interesting projects, which can make testing more easy and fun!
3 key takeaways: