From Monolith to K8s
Welcome to this community project created to be used as examples for showing different Open Source projects that can help you in your Cloud-Native journey.
No matter which technology stack you are using for your day to do day work, these examples are easy to follow and should give enough pointers for you to implement similar approaches in your projects.
This repository contains different directories that explains different aspects of the sample application and how different projects can be used in conjuctions to solve particular challenges or to make our everyday life a little bit easier.
Scenario
The examples included and linked in this repository all use the same application, a Conference Platform. You can find more about the application and the application architecture in the scenario section
Open Source Projects
After installing playing around and trying to break the application you can try to use different Open Source projects to solve different challenges, and you can find separate guides to do so:
- Using Helm as a Package Manager
- Building your Services and Environment pipelines with Tekton
- Release Strategies with Knative Serving
- Polyglot CloudEvents consumers and producers
- Event-Driven Architectures with Knative Eventing and CD Events
- Adding Functions to your repertoire with Knative
func
(TBD) - Platform Composition and Multi-Cloud Infrastructure with Crossplane
- Single Sign-On with Keycloak
- Monitoring with Prometheus and Graphana
- Supply Chain tools with Keptn and Cartographer(TBD)
Source Code
- Monolith Application
- API Gateway
- C4P Service
- Agenda Service
- Email Service
- Queue Service
- Tickets Service
- Payments Service
Conferences
- Jump! Conference 2021
- Kubernetes Community Days - Spain 2021
- QCon Plus - Private Workshop 2020
- Spring One 2020
- JNation 2020
- KubeCon EU Virtual 2020
- SouJava Meetup 2019
Feedback / Get Involved
All the projects here are Open Source under the ASL 2.0 License and I welcome Pull Requests and Issues with more tools additions and suggestions to improve the workshop. I encourage people to follow the workshop in their own clusters to experience the usage of these tools, their issues and their strengths.