Lessons from Building an Operator Using Operator SDK and Ansible
summary
A project built an operator called M4e-operator using Operator SDK with Ansible to manage Moodle on Kubernetes (repo github.com/krestomatio/m4e-operator). The design encodes Moodle lifecycle into custom resources, implements lifecycle steps as Ansible roles/collections and a dynamic inventory plugin to execute commands against pods. Initial reconciliation ran ~60 Ansible tasks (>1 min) then was trimmed to ~40 tasks (~50 s) and scaled to 220 instances with ~5 min cycles; using community Turbo Mode caching reduced cycle time toward ~20 s, while performance, debugging and upgrade testing remain work in progress.
AI-written summary · about
chapters (13)
- 0:00Introduction
- 1:54Kubernetes operator
- 4:27Moodle automation
- 8:09Adopting operators
- 13:43Operator SDK options
- 17:13Ansible for operators
- 19:24Technical challenges
- 27:41Operator performance
- 30:13Performance improvements
- 34:00Testing updates
- 37:13Debugging lifecycle
- 38:37Ansible plugins
- 41:12Closing
related talks
27mRoll Your Own Operator with Ansible
01h 29mTutorial: Deep Dive into the Operator Framework for Kubernetes
26mAutomating the Management of Kubernetes Apps
43mWrite your own Kubernetes Operator using Ansible
43mSOS: Simplifying Operators Substantially - A Hands-on Workshop for Beginners in k8s Native Applications
24mAutomating Stateful Apps with Kubernetes Operators
45mBuild Your Kubernetes Operator with the Right Tool!
36mLessons learned writing 10+ Kubernetes Operators - Lars Francke and Jannik Heyl
