Building Kubernetes Operators in an Ansible-native way


If you’d like discuss having me speak at your conference, Meetup, office, party, dinner, luncheon, podcast, etc. please use the CNCF speaker contact form. Thanks!

Learn how Ansible can help developers (or any systems savvy person) quickly ramp up to build Operators to automate and manage the life cycle of complex Kubernetes applications.

Elevator Pitch

Operators simplify management of complex applications on Kubernetes. They are usually written in Go and require expertise with the internals of Kubernetes, but there’s an alternative to that with a lower barrier to entry for all. Ansible is a first-class citizen in the Operator SDK that frees up application engineers and maximizes time to automate and orchestrate your applications across both new & existing platforms with one simple language. Here we see/demonstrate how.

Description

An Operator is a method of packaging, deploying and automating the complete lifecycle management activities of a Kubernetes application. Put more simply, an Operator encodes human operational knowledge. It is designed to watch and respond to the resources in your cluster and enable your application to run as desired.

While powerful, Operators are usually written in Go and requires expertise in the advanced libraries and patterns used to write Kubernetes controllers. Ansible can help. It is a first-class citizen in the Operator SDK providing a means of automating the deployment and management of Kubernetes applications on a cluster in an Ansible-native way. Ansible-based Kubernetes Operators provide a lower barrier to entry, faster iterations, and the power of Ansible and its ecosystem.

Combining Ansible and Kubernetes frees up application engineers to minimize the new skill sets required and maximize time to delivery. Furthermore, using the same tried and trusted Ansible tooling lets you automate and orchestrate your applications across both new and existing platforms with one simple language.

This talk introduces Operators with Ansible and demonstrates how you develop and deploy them to automate the management of complex Kubernetes application on a cluster.


See also