IBM open sourced its Razee continuous delivery (CD) tool that allows developers to manage applications in their Kubernetes-based cluster deployments. The move also continues to bolster IBM’s push into the Kubernetes space.

Razee consists of two parts: Kaptain, which are components that handle the multi-cluster deployments; and RazeeDash, which is basically the control panel.

The Kaptain component within Razee provides a pull-based deployment model that supports self-updating clusters. This helps in generating inventory and scripts that describe actions for each cluster or each application running in a Kubernetes environment.

Its multi-cluster inventory also allows it to know what versions of your services are deployed and where. This includes searchable live and historical data that can be used to support ongoing operations after delivery.

Jake Kitchener, an architect for Razee, explained in an email that the platform’s pull-based, declarative deployment mechanism allows it to scale to tens of thousands of clusters and hundreds of thousands of deployments. He noted that this pull-based mechanism was different from traditional push-style CD deployments like those offered by vendors like Codefresh.

Razee can also be integrated with rules engines that allows for managing deployments by labels rather than by individual clusters or service.

“Those familiar with managing Kubernetes resources will instantly recognize the power brought by operating through labels,” Kitchener explained. “Rather than building out huge inventory and deployment loops, DevOps teams can describe state by label.”

The RazeeDash dashboard shows dynamic inventory and change history for each Kubernetes cluster. This makes it easier to troubleshoot issues as data is filtered so a developer can determine which deployments occurred at the time of a failure and which clusters were modified.

Kitchener said the platform specifically targets CD and should be “paired with a continuous integration (CI) system like Travis,” which is an open source CI tool.

Kubernetes Integration

IBM has been offering Razee internally within its cloud platform, which has allowed for tracking of changes across Kubernetes clusters. Kitchener said it was combining input from those deployments with the now offered open source version to construct plans to offer a managed and integrated service within IBM Cloud.

The launch comes 2 years after IBM first launched its Kubernetes service. The vendor last year also moved the ability to run its enterprise Cloud Managed Services (CMS) on its Kubernetes-based Cloud Private application platform.

Dan Berg, a distinguished engineer within IBM Cloud, noted last year that IBM’s initial decision in 2016 to “go full bore on Kubernetes was a bit of a gamble” at that time as the platform itself was still “rough around the edges.”

“It was a risk, and even our vendor partners at the time were trying to straddle the fence in terms of orchestration platforms,” Berg said. “Just for self-preservation we had to pick one, and while I am not a betting man, just looking at the facts, Kubernetes stood out as having the potential to make it.”

IBM is also using Kubernetes to boost support for the Knative serverless platform, which it helped develop. The vendor earlier this year launched quasi-support for Knative as an “experimental managed add-on” to its Cloud Kubernetes Service.

Jason McGee, vice president and CTO for IBM’s Cloud Platform, told attendees at the KubeCon + CloudNativeCon North America 2018 event in Seattle that Knative teaches Kubernetes how to deal with building and serving applications and functions, which makes it an important piece in the cloud-native landscape.