Kratix is a framework for building Platform-as-a-Product
Kratix enables the co-creation of capabilities by providing a clear contract between application and platform teams through the definition and creation of "Promises".
Kratix supports platform teams to easily deliver a curated Kubernetes-native platform API, over fleets of Kubernetes clusters, to increase flow across your organisation.
Unlike other frameworks and tooling which focus exclusively on application-developer experience, Kratix focuses on empowering platform engineers to build better platforms.
By using Kubernetes as the building block, Kratix brings together the power and flexibility of raw Kubernetes and enables platform teams to simplify the experience for application teams by reducing complexity.
Using the GitOps workflow and Kubernetes-native constructs, Kratix provides a flexible solution to empower your platform team to curate an API-driven, curated, bespoke platform that can easily be kept secure and up-to-date, as well as evolving as business needs change.
Kratix enables the injection of business-specific requirements such as compliance, security, and billing so that the “Promises” delivered by the platform represent the Golden Paths to production; making the right way the easy way.
What is a Kratix Promise?
A Promise is comprised of three elements:
Custom Resource Definition: input from an app team to create instances of a capability.
Worker Cluster Resources: dependencies necessary for any created Workloads.
Request Pipeline: business logic required when an instance of a capability is requested.
provide the right abstractions to make your developers as productive, efficient, and secure as possible. Any capability can be encoded and delivered via a Promise, and once “Promised” the capability is available on-demand, at scale, across the organisation.
codify the contract between platform teams and application teams for the delivery of a specific service, e.g. a database, an identity service, a supply chain, or a complete development pipeline of patterns and tools.
can be shared and reused between platforms, teams, business units, even other organisations.
are easy to build, deploy, and update. Bespoke business logic can be added to each Promise’s pipeline.
can create “Workloads”, which are deployed, via the GitOps Toolkit, across fleets of Kubernetes clusters.
Kratix Promise Use Cases
A suite of Promises to deliver on-demand production-ready internal services such as identity, namespaces, and databases.
NATIONAL RETAIL CHAIN
A Promise to encapsulate the golden path to production, making it easy and fast for application teams to request a “path” on-demand, and then get their application into production via that path in a compliant and governed manner.
INDEPENDENT SOFTWARE VENDOR
A Promise to deliver complex software deployments across multiple Kubernetes clusters in customer sites. The bespoke needs of the software are encoded into the Promise, providing a clean and consistent interface for customers to deploy additional instances of the ISV’s software.
GLOBAL SYSTEMS INTEGRATOR
A range of Promises to deliver high-level abstractions via a consistent interface across multiple public cloud providers. The GSI’s customers are able to consume high-value services across all public clouds.
ONLINE GAMING COMPANY
A Promise to deliver a combined metrics, monitoring, and logging solution based on open-source software but bespoke to the organisation’s needs. The Promise delivers an on-demand solution to the game teams that’s ready to use in production.
A Promise to deliver per-tenant SaaS environments on-demand. Tenants are unable to share environments due to regulatory reasons. Each request from the Promise creates a complete and ready to use environment, orchestrating public-cloud APIs with Terraform and Crossplane and scheduling custom resources to kubernetes clusters.