Keptn
Keptn is an event-driven cloud-native application life-cycle orchestration platform.
Keptn enables DevOps engineers and SREs to scale delivery and operations automation in their organizations. Its goal is to connect tools already present in an organization and orchestrate them to support the life-cycle management of applications in cloud environments.
Keptn uses a declarative approach to build scalable automation for delivery and operations, which can be scaled to many services. It evaluates Service Level Indicators (SLOs) and provides a dashboard, alerts, and auto-remediation for them.
Started in 2018 by Dynatrace employees, Keptn is now a member project of the Cloud Native Computing Foundation and in Incubation status. It has numerous integrations with the Cloud Native ecosystem, including Prometheus, ArgoCD, CloudEvents, LithmusChaos, Backstage, and dozens of other cloud-native projects.
The Keptn project targets three areas of automation:
- Observability, dashboards, and alerting by automating the configuration of these tools based on the Keptn shipyard (process definition) and SLO specifications
- SLO-driven multi-stage delivery by providing an abstraction layer for multi-stage delivery (shipyard) and built-in quality gates based on SLOs
- Operations and remediation, again based on a declarative process definition and built-in quality gates
Why Keptn?
Keptn enables DevOps engineers and SREs to scale delivery and operations automation in their organizations.
Many organizations are building their own orchestrations to deliver applications, which often creates a large amount of automation and point-2-point tool integration legacy code that needs to be maintained. Issues often arise when organizations want to change the tools in the pipeline. These changes require a huge investment of time as the pipeline code needs to be rewritten manually.
With Keptn, you can simply specify your automation sequences in a declarative way with a YAML file, letting Keptn do the rest by interacting with your tools through a standardized eventing model. Changing or adding new tools is also very simple, just edit the YAML file or change the event subscription.
Furthermore, Keptn allows you to define and automate:
- SLO-based Quality Gates for deployments between stages
- Performance & Chaos Testing
- Multi-Stage and Multi-Target Delivery
- Auto-Remediation in production
Keptn is built upon an event-driven architecture to automate delivery and operational use cases.
Keptn architecture
Keptn is a cloud-native application that consists of multiple services and can be distributed across multiple clusters. Keptn follows an event-driven approach with the benefits of loosely coupled components and a flexible design that allows easy integration of other components and services.
Learn more about Keptn’s architecture in our documentation.
Keptn technologies
- Golang
- Angular
- Kubernetes
- Helm
Keptn community
Keptn can boast a large and thriving community with contributors from all corners of the globe.
The team organizes multiple weekly community and user group meetings to share knowledge with users.
It has previously offered LFX mentorships and is participating in Google Summer of Code in 2022.
Keptn has been adopted by 40 organizations, as highlighted in the adopters' file. Here’s an overview of adopters that have shared their Keptn implementations on user group meetings (with more to come!).
Useful links
Learn more about Keptn on the Keptn website or watch the video created by TechWorld with Nana: Automate your Multi-Stage Continuous Delivery and Operations with Keptn
If you’d like to contribute, get in touch with the Keptn community on the Keptn Slack channel or check out our open issues on GitHub.