Red Hat Releases a Framework to Easily Package Applications for Kubernetes
Open source enterprise software provider Red Hat has released a toolkit that makes it easy to build applications that can be managed by Kubernetes. Called the Operator Framework, it makes use of the Operator construct, a Kubernetes feature first developed by CoreOS, a company Red Hat acquired earlier this year.
“To the developer, we are simplifying a lot of the Kubernetes abstractions,” said Brandon Philips, CoreOS chief technology officer.
The company designed Operators as a way to package, deploy and manage an application so that it can be programmatically controlled by the Kubernetes open source container orchestration software. The framework came about as a result of using Operators to define a number of widely-used applications such as the ectd key store.
The difference between an application with an Operator and one without is like the difference between a cloud provider offering a dedicated cloud service, such as a database, and cloud provider just offering the database software encapsulated in a virtual machine. In other words, you get full API control and management through Operators.
“Kubernetes is the first thing that all the cloud providers have agreed upon. Operators let you plug in new services into your cloud providers because Kubernetes is there. If your provider doesn’t have an etcd service, you can install the etcd Operator for a deployable etcd service,” Philips said.
Perhaps the best example of the power of Operator is its recent use by Ticketmaster. The ticketing company was an early adopter of the Tectonic, CoreOS’ commercial distribution of Kubernetes. Although initially, the ticketing company did not use the Prometheus monitoring tool, which can be a chore to set up, CoreOS had given the company an Operator for Prometheus monitoring tool. Before long, the company’s IT staff found over 300 instances of Prometheus being used internally by different developers, so easy the Operator made the process of setting up the software.
Right now there are about 20 Operators that file in the gaps in Kubernetes’ basic compute and storage services, such as the one for etcd. It still remains difficult for developers and independent software vendors to build their own Operators to ease the use of their applications. Hence the framework.
The Operator Framework has three components, a software development kit, lifecycle management software, and metering capability, which will be introduced in the coming months.
The SDK provides a set of tools that will allow developers to build, test and package Operators without expertise in the Kubernetes API.
The Operator Lifecycle Management component oversees the updates and ongoing management of the Operators, and, by extension, the services they represent. Ultimately, the Operator Lifecycle Management component will provide the ability for IT staff to compile a catalog of applications, their version numbers, and where they are used.
The metering capability, when it is released, will cover CPU and memory usage, and could be used by the IT department to plan with budgeting and allocation. With metering, Ticketmaster could, for instance, understand how much their instances of Prometheus are running, and even how much they are costing to run on their cloud provider or in their data centers.
The Operator Framework is best suited for complex applications — such as monitoring systems or database management systems or Java application servers — with deployments and upgrade steps that can’t be captured in a Helm specification file.
Philips will be discussing the Operator Framework in greater detail during the Thursday morning keynotes at the KubeCon + CloudNativeCon Europe conference, being held this week in Copenhagen.
Red Hat is a sponsor of The New Stack.