Packaging Applications and Services with Kubernetes Operators

Package applications and services for Kubernetes with the Operator framework. 

Developing Operators

Image result for operator framework image

Operators give you a convenient way to package, deploy, manage and distribute applications for Kubernetes. The method allows you to package configuration so that users can deploy operators from a simple catalog without having to engage administrators. You can distribute operators beyond your organization using OperatorHub.io which is open to all contributions or the Red Hat OpenShift OperatorHub using Red Hat's certification process. 

Download Operator-SDK binary 

Operator maturity model

Conceptually, an Operator takes human operational knowledge and encodes it into software that is more easily packaged and shared with consumers. How you approach and build your Operator is up to you. Advanced Operators are designed to handle upgrades seamlessly, react to failures automatically, and not take shortcuts, such as skipping a software backup process to save time.

A Kubernetes application is both deployed on Kubernetes and managed using the Kubernetes APIs and kubectl/oc tooling. You can think of Operators as the runtime that manages this type of application on Kubernetes.

Hands-on Operator labs

Course

Building Operators on OpenShift

9 lessons | 240 minutes

Learn about k8s API fundamentals, the etcd operator, using the Operator SDK with Go and Helm, review Ansible basics, and use Ansible to deploy Kubernetes modules.

Lesson

Operator SDK with Helm

30 minutes | Beginner

Create a CockroachDB Operator from an existing CockroachDB Helm chart, running securely without Tiller or manual invocation.

Lesson

Manage the etcd Operator

30 minutes | Beginner

Manage etcd clusters on Kubernetes and automate resize, failover, and upgrade tasks, including backup and restore actions.

Lesson

Install the Operator Lifecycle Manager

30 minutes | Beginner

Install the Operator Lifecycle Manager in an OpenShift environment, access the UI, create a subscription manifest, and approve an InstallPlan.

Lesson

Ansible Operator Overview

30 minutes | Beginner

Learn what the Ansible Operator is, how to map custom resource events, pass extra variables, leverage existing roles from Ansible Galaxy, then how to deploy and run the Operator in a local or remote OpenShift cluster.

Enterprise software for any cloud

The open cloud marketplace that makes it easier to try, buy, and sell Red Hat Certified software as operators for Red Hat OpenShift - for public clouds and on-premises.

Build with Marketplace 

Technology partners: Publish on OpenShift OperatorHub

operatorhub

Red Hat Partner Connect is a program for technology partners—ISVs, SIs, and VARs—that provides software, tools, and other technical resources for your development work, and marketing resources for your marketing & sales colleagues.

Certify your Operator with Red Hat Partner Connect

When you publish, you get:

security

Seal of approval

Your Operator functionality is verified by Red Hat.

Faster

Promotion

Listed in Red Hat OpenShift OperatorHub and Red Hat Ecosystem Catalog for all customers to see and download.

RHEL Release

Continuous certification

Using Red Hat Certification Build Service APIs means continuous security compliance—great for CI/CD.

RHEL Release

Support coverage

Full Red Hat support for the foundation of Operators and their containers when used with Red Hat OpenShift.

New articles about Operators

Kubernetes integration and more in odo 2.0

Kubernetes integration and more in odo 2.0

October 6, 2020

Odo is a developer-focused command-line interface (CLI) for OpenShift and Kubernetes. This article introduces highlights of the odo 2.0 release, which now integrates with Kubernetes. Additional highlights include the new default deployment method in odo 2.0, which uses devfiles for rapid, iterative development. We’ve also moved Operator deployment out of experimental mode, so you can easily deploy […]

Command-line cluster management with Red Hat OpenShift's new web terminal (tech preview)

Command-line cluster management with Red Hat OpenShift's new web terminal (tech preview)

October 1, 2020

Red Hat OpenShift‘s web console simplifies many development and deployment chores to just a few clicks, but sometimes you need a command-line interface (CLI) to get things done on a cluster. Whether you’re learning by cut-and-paste in a tutorial or troubleshooting a deep bug in production (also often done by cut-and-paste), you’ll likely need to […]

Call an existing REST service with Apache Camel K

Call an existing REST service with Apache Camel K

September 28, 2020

With the release of Apache Camel K, it is possible to create and deploy integrations with existing applications that are quicker and more lightweight than ever. In many cases, calling an existing REST endpoint is the best way to connect a new system to an existing one. Take the example of a cafe serving coffee. What […]

Kubeflow 1.0 monitoring and enhanced JupyterHub builds in Open Data Hub 0.8

Kubeflow 1.0 monitoring and enhanced JupyterHub builds in Open Data Hub 0.8

September 18, 2020

The new Open Data Hub version 0.8 (ODH) release includes many new features, continuous integration (CI) additions, and documentation updates. For this release, we focused on enhancing JupyterHub image builds, enabling more mixing of Open Data Hub and Kubeflow components, and designing our comprehensive end-to-end continuous integration and continuous deployment and delivery (CI/CD) process. In […]

How to switch Red Hat OpenShift Virtualization from hardware virtualization to software emulation

How to switch Red Hat OpenShift Virtualization from hardware virtualization to software emulation

September 17, 2020

OpenShift Virtualization is a feature of Red Hat OpenShift Container Platform (OCP) and OpenShift Kubernetes Engine that allows you to run and manage virtual machine workloads alongside container workloads. Based on the open source project KubeVirt, the goal of OpenShift Virtualization is to help enterprises move from a VM-based infrastructure to a Kubernetes-and-container-based stack, one […]

5 tips for developing Kubernetes Operators with the new Operator SDK

5 tips for developing Kubernetes Operators with the new Operator SDK

September 11, 2020

Kubernetes Operators are all the rage this season, and the fame is well deserved. Operators are evolving from being used primarily by technical-infrastructure gurus to becoming more mainstream, Kubernetes-native tools for managing complex applications. Kubernetes Operators today are important for cluster administrators and ISV providers, and also for custom applications developed in house. They provide […]

Latest Comments

Waiting for Disqus…

Adventures Aboard the Kluster Kruise Ship

This story uses a series of metaphors to introduce the concept of Operators, explain how they aid in the automation of clusters, and provide a high-level overview of Operator Lifecycle Management in a way that anyone can understand. Readers will meet Kate the octopus, esteemed cruise ship director, who finds herself overwhelmed with the responsibilities associated with her position.

 

Get a copy of the book

Interested in the Operator community?

OperatorHub is the community home for Kubernetes Operators. Find an existing Operator or list your own.

Browse Operators