Operators are Kubernetes native applications. We define native as being both managed using the Kubernetes APIs via kubectl and ran on Kubernetes as containers. Operators take advantage of Kubernetes’s extensibility to deliver the automation advantages of cloud services like provisioning, scaling, and backup/restore while being able to run anywhere that Kubernetes can run.
This list is built by the community. Have you built or are you using an Operator that is not listed? Please send a pull request and we will add that Operator to the list.
If you want to start building an Operator, you should definitely look into the Operator SDK.
App Name | Github | Description |
---|---|---|
Rook | rook/rook | File, Block, and Object Storage Services for your Cloud-Native Environment |
ElasticSearch | upmc-enterprises/elasticsearch-operator | Elasticsearch is a distributed, RESTful search and analytics engine. This operator manages one or more elastic search clusters on Kubernetes. |
etcd | coreos/etcd-operator | etcd is a distributed key-value (k/v) store. This operator manages etcd k/v database clusters on Kubernetes. |
Prometheus | coreos/prometheus-operator | Prometheus, a Cloud Native Computing Foundation project, is a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts if some condition is observed to be true. The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances. |
Icinga2 operator | appscode/searchlight | Icinga is an open source computer system and network monitoring application. This operator provide alerts for Kubernetes |
OpenStack | sapcc/kubernetes-operators | SAP OpenStack operator creates various resources in OpenStack. |
KubeVirt | kubevirt/kubevirt | Kubernetes Virtualization Operator with API and runtime in order to define and manage virtual machines. |
Kafka #1 | krallistic/kafka-operator | A Kafka Operator for Kubernetes |
Kafka #2 | strimzi/strimzi | Operator for running Kafka and Kafka Connect on Kubernetes and OpenShift |
PostgreSQL #1 | CrunchyData/postgres-operator | PostgreSQL Operator Creates/Configures/Manages PostgreSQL Clusters on Kubernetes |
PostgreSQL #2 | zalando-incubator/postgres-operator | Create and manage PostgreSQL HA clusters on Kubernetes using Patroni |
Mongo #1 | kbst/mongodb | MongoDB Operator for Kubernetes |
Mongo #2 | Ultimaker/k8s-mongo-operator | MongoDB Operator for MongoDB Replica Sets and Backups |
Kong | upmc-enterprises/kong-operator | Manages Kong clusters on Kubernetes. |
Tensorflow | kubeflow/tf-operator | Tools for ML/Tensorflow on Kubernetes. |
WebLogic | oracle/weblogic-kubernetes-operator | Oracle Weblogic Server Kubernetes Operator |
Redis #1 | spotahome/redis-operator | Redis Operator creates/configures/manages redis clusters atop Kubernetes. |
Redis #2 | jw-s/redis-operator | Redis operator for Kubernetes |
Habitat | habitat-sh/habitat-operator | A Kubernetes operator for Habitat services. |
Tidb | aliyx/tidb-operator | Tidb-operator creates/configures/manages tidb clusters atop Kubernetes. |
Memcached | ianlewis/memcached-operator | A Kubernetes operator for memcached |
MXNet | deepinsight/mxnet-operator | Apache MXNet is a modern open-source deep learning framework used to train, and deploy deep neural networks. This operator manages the tools for ML/MXNet on Kubernetes. |
NATS | nats-io/nats-operator | NATS is an open-source, high-performance, lightweight and secure cloud native messaging system. This operator manages NATS clusters atop Kubernetes, automating their creation and administration. |
MySQL #1 | grtl/mysql-operator | MySQL is an Open Source SQL database management system. This creates a Kubernetes Custom Resource for MySQL. |
MySQL #2 | oracle/mysql-operator | MySQL is an Open Source SQL database management system. This operator creates, operates, and scales self-healing MySQL clusters in Kubernetes |
MySQL #3 | [presslabs/mysql-operator] (https://github.com/presslabs/mysql-operator) | MySQL is an Open Source SQL database management system. This operator manages all the necessary resources for deploying and managing a highly available MySQL cluster. It provides efortless backups, while keeping the cluster highly-available. |
Cassandra #1 | instaclustr/cassandra-operator | Cassandra is a free and open-source distributed wide column store NoSQL database management system designed to handle large amounts of data. This is a Kubernetes operator for Apache Cassandra. |
Cassandra #2 | vgkowski/cassandra-operator | Cassandra is a free and open-source distributed wide column store NoSQL database management system designed to handle large amounts of data. This ia a Kubernetes operator for Cassandra cluster automation. |
KubeDB | kubedb/operator | KubeDB Operator |
Consul | python/consul-operator | Consul is a highly available and distributed service discovery and Key Value Store. This is a Kubernetes operator for Consul. |
ArangoDB | arangodb/kube-arangodb | ArangoDB is a native multi-model database system. The database system supports three important data models with one database core and a unified query language AQL. This ia a RangoDB Kubernetes Operator |
RDS | MYOB-Technology/ops-kube-db-operator | RDS is a Database as a Service offering from Amazon. This Operator controls RDS DBs in AWS. |
CouchDB | nicolai86/couchdb-operator | CouchDB is a document-oriented NoSQL database. This is a prototype Kubernetes operator for couchDB. |
Zeebe | zeebe-io/zeebe-operator | Zeebe is a distributed Workflow Engine for Microservices Orchestration. This is a Kubernetes Operator for Zeebe |
InfluxDB | gianarb/influxdb-operator | The Kubernetes operator for InfluxDB and the TICK stack. |
Aerospike | travelaudience/aerospike-operator | Manages Aerospike clusters atop Kubernetes, automating their creation and administration. |
DynamoDB | microdc/k8s-dynamodb-operator | A Kubernetes DynamoDB operator |
Spark | GoogleCloudPlatform/spark-on-k8s-operator | Kubernetes CRD operator for specifying and running Apache Spark applications idiomatically on Kubernetes. |
Vault #1 | coreos/vault-operator | Run and manage Vault on Kubernetes simply and securely. |
Vault #2 | banzaicloud/bank-vaults | A feature rich HA Vault operator with TLS, external API based re/configuration, several/automatic unseal options and more. |
Kanister | kanisterio/kanister | An extensible framework for application-level data management on Kubernetes. |
cert-manager | jetstack/cert-manager | Automatically provision and manage TLS certificates in Kubernetes |
Ark | heptio/ark | Manages the backup and restoration of cluster components (pv,pvc,deployments, etc.) to aid in disaster recovery |
PVC | banzaicloud/pvc-operator | This operator helps to use Kubernetes Persistent Volumes easier on cloud providers by dynamically creating the required accounts, classes and more. |
WildFly | banzaicloud/wildfly-operator | Wildfly Operator let's you describe and deploy JEE application on Wildfly server by creating a CRD in Kubernetes. |
Infinispan | banzaicloud/infinispan-operator | This operator deploys and runs an Infinispan cache cluster . |
Prometheus Jmx Exporter | banzaicloud/prometheus-jmx-exporter-operator | This operator using Jmx Exporter enables Java processes running ok Kubernetes Pods to expose metrics collected form mBeans via JMX to Prometheus. |
Envoy | solo-io/envoy-operator | Run and manage Envoy on Kubernetes simply and securely. |
CloudFormation | linki/cloudformation-operator | Run and manage CloudFormation stacks. Manage AWS resources from Kubernetes. |
ZooKeeper | Nuance-Mobility/zookeeper-operator | A ZooKeeper 3.5.x Operator for Kubernetes |
AWS | giantswarm/aws-operator | Manages Kubernetes clusters running on AWS |
Unifiedpush | aerogear/ups-config-operator | Manage your Unifiedpush variants from Kubernetes / Openshift |
RethinkDB | jmckind/rethinkdb-operator | A Kubernetes operator to manage RethinkDB instances. |
Android SDK | aerogear/android-sdk-operator | A Kubernetes operator to manage android sdk packages syncronization in a persistent volume. |
RBAC Manager | reactiveops/rbac-manager | This operator simplifies the management of RBAC Role Bindings in Kubernetes. |