## Why You Shouldn't
# Build an Operator!
http://bit.ly/cn_reject
# WHAT?
* custom resource definitions
* spec vs status (custom controller logic)
"kubernetes, go left, go right"
vs
"kubernetes, take me home!"
# WHY NOT?
* security
* consistency
* no need for a custom control interface?
* no need to extend the cluster?
* namespacing, adv cluster proliferation...
# WHY?
* security
* consistency
* community (shared support via TSANet)
* updates (updates via OLM)
* sourcing a distribution full of services from CNCF landscape, available on any K8s via operatorhub.io
### Productivity
Productivity requires:
* reproducibility (service availability)
* observability (logs, metrics, traces)
* using the right tool for the job
### Productivity
Production-like environments provide the best reproducibility, observability
1. Kubernetes provides a reproducible platform for cloud-native solutions
2. OpenShift provides a PaaS-like environment whith active management for cloud-native solutions (with maintainers, patch streams)
3. Portable app code from the neck up
## OperatorHub
OperatorHub.io
## OperatorSDK
learn.openshift.com/operatorframework
### Ways to get started with the OperatorSDK:
* go
* ansible
* helm charts