Operators makes it easy to incorporte ops knowledge in k8s native resource. They are not something new, but they way it is built, managed and implemented is revolutionary. In fundamental k8s terms an operator is CRD ( custom resource definition ) and custom Controller.
Controllers are what integrates the CRD to k8s api and database. these are what makes kubernetes pluggable and extedable, as this is way to add your custom logic in context of k8s cluster.
You can learn all the details on this practical guide about kubernetes controllers.
p.s: this is wip.