Kubernetes Operator
Fleeting- External reference: https://kubernetes.io/docs/concepts/extend-kubernetes/operator/
kubernetes operator are specific kubernetes controller that deal with custom resources to do things that are not possible with bare kubernetes.
most common way to deploy an operator is to add the Custom Resource Definition and its associated Controller to your cluster
— https://kubernetes.io/docs/concepts/extend-kubernetes/operator/
Operators are clients of the Kubernetes API that act as controllers for a Custom Resource
— https://kubernetes.io/docs/concepts/extend-kubernetes/operator/
operator pattern aims to capture the key aim of a human operator
[…]
deep knowledge of how the system ought to behave
[…]
automation to take care of repeatable tasks
[…]
automate a task beyond what Kubernetes itself provides
— https://kubernetes.io/docs/concepts/extend-kubernetes/operator/
Some of the things that you can use an operator to automate include:
- deploying an application on demand
- taking and restoring backups of that application’s state
- handling upgrades of the application code alongside related changes such as database schemas or extra configuration settings
- publishing a Service to applications that don’t support Kubernetes APIs to discover them
- simulating failure in all or part of your cluster to test its resilience
- choosing a leader for a distributed application without an internal member election process
— https://kubernetes.io/docs/concepts/extend-kubernetes/operator/
Notes linking here
- Des silos au Platform Engineering en passant par le DevOps : adopter GitOps et aller au-d… - YouTube
- Implementing Kubernetes Operators with Python