Introducing the CDK for Kubernetes, a New Software Development Framework and Open Source Project for Defining Kubernetes Applications Using Code

Posted on: May 13, 2020

Amazon Web Services announces the Alpha release of Cloud Development Kit for Kubernetes (cdk8s), an open-source software development framework for defining Kubernetes applications using general-purpose programming languages. cdk8s makes it easy for you to manage Kubernetes using the same tools, techniques, and workflows that you use to write applications. cdk8s generates pure Kubernetes YAML, so you can use it to define applications for any Kubernetes cluster running anywhere.

Applications running on Kubernetes are composed of dozens of resources maintained through carefully maintained YAML files. As applications evolve and teams grow, these YAML files become harder to manage. Building new applications requires writing boilerplate, copying code, and manual tweaks. Sharing best practices or making any updates involves manual changes and complex migrations. All of this YAML engineering takes time away from delivering value to your customers.

cdk8s makes it easy to define Kubernetes applications using familiar programming languages including Python and Typescript. cdk8s includes tools that can be used to interact with any standard or custom Kubernetes object as a strongly-typed class. Additionally, you can author higher-level abstractions using the languages, IDEs, tools, and techniques you are familiar with, and share them through regular code libraries with your team, company, or the community. This simplifies defining and maintaining applications for all Kubernetes users and builds on top of the Kubernetes declarative API approach while fundamentally respecting its capabilities and flexibility.

cdk8s runs locally on your machine or in your CI pipeline and generates standard Kubernetes YAML manifests, so you can use it with any Kubernetes cluster running anywhere, including on-premises and the cloud. cdk8s is open source and we welcome community contributions.

To get started, visit cdk8s.io, see the project on GitHub, or read our blog.