ops, the Operator Framework, provides a clean Python event system for
operators on Kubernetes, Linux or Windows.
This is a maintenance release, which includes tweaks to the README and some
__repr__ method for the several
Stored* classes, and support
for charms that include an empty
Operators are reusable ops code that drive application management - lifecycle,
configuration, upgrades, scale and integration. This operator framework takes
the Kubernetes operator pattern and generalises it to include traditional
applications on Linux and Windows server infrastructure, physical or cloud. An
operator package is called a charm, and you can find a lot of them on
The framework simplifies integration between operators and emphasises
collaboration between operator developers. The goal is to make it easier to
write operators that drive a single microservice perfectly in any cloud, in
different scenarios, and on heterogeneous architectures. Operators use the Juju
operator lifecycle manager (OLM) for model-driven integration and operations.
Python is a great language for operator developers. It’s structured, testable,
but still high-level and widely readable by devops. The framework enables ops
code to be pure, readable Python, and provides mechanisms to for debugging and
tracing in complex scale-out deployments. While the OLM is written in Golang for
concurrency, operators can be written in any language, and Python is the
preferred language in the Open Operator Collection community.
The framework helps you:
- model the integration of your applications
- manage the lifecycle of your application
- create reusable and scalable components
- keep your code simple and readable
We develop the Python Operator Framework on Github.