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 |
---|---|---|
Aerospike | travelaudience/aerospike-operator | Aerospike is a NoSQL distributed database. This Operator manages Aerospike clusters atop Kubernetes, automating their creation and administration. |
Airflow | GoogleCloudPlatform/airflow-operator | A Kubernetes operator to manage Apache Airflow. |
Android SDK | aerogear/android-sdk-operator | A Kubernetes operator to manage android sdk packages syncronization in a persistent volume. |
Aqua Security | aquasecurity/aqua-operator | Aqua Security Operator for k8s or openshift - aqua-operator is a group of controllers that runs within a Kubernetes or Openshift cluster that provides a means to deploy and manage Aqua Security cluster |
ArangoDB | arangodb/kube-arangodb | ArangoDB Kubernetes Operator - Start ArangoDB on Kubernetes in 5min. |
aranya | arhat-dev/aranya | A Kubernetes Operator for Edge Devices Management |
Argo CD | argoproj/argo-cd | Declarative continuous deployment for Kubernetes |
AWS | giantswarm/aws-operator | Manages Kubernetes clusters running on Amazon Web Services |
AWS Services | awslabs/aws-service-operator | Manages AWS services that are used by your applications running in Kubernetes. |
Azure Databricks | microsoft/azure-databricks-operator | Manages an Azure Databricks Workspace from inside your Kubernetes cluster. |
Camel-k | apache/camel-k | Lightweight integration framework built from Apache Camel that runs natively on Kubernetes |
Cassandra #1 | instaclustr/cassandra-operator | Kubernetes operator for Apache Cassandra. |
Cassandra #2 | vgkowski/cassandra-operator | Kubernetes operator for cassandra clusters automation. |
Cassandra #3 | jetstack/navigator | Create and scale multi-AZ Casssandra clusters on Kubernetes. |
Cassandra #4 | Orange-OpenSource/cassandra-k8s-operator | This Kubernetes operator automates the Cassandra operations such as deploying a new rack aware cluster, adding/removing nodes, configuring the C* and JVM parameters, upgrading JVM and C* versions, and many more... |
Cerebral | containership/cerebral | Kubernetes cluster autoscaler operator with pluggable metric/event sources and cloud provider support |
cert-manager | jetstack/cert-manager | Automatically provision and manage TLS certificates in Kubernetes |
ClickHouse | Altinity/clickhouse-operator | A Kubernetes operator for ClickHouse. |
CloudFormation | linki/cloudformation-operator | AWS CloudFormation is a service that helps you model and set up your Amazon Web Services resources. Using this operator run and manage CloudFormation stacks and manage AWS resources from Kubernetes. |
Consul | python/consul-operator | A Kubernetes operator for consul. |
Couchbase Autonomous Operator | couchbase/operator | Automates administrative tasks and operational best practices while maintaining full data platform capabilities from within and across clouds and on-premises deployments. |
CouchDB | nicolai86/couchdb-operator | Prototype Kubernetes operator for couchDB. |
Dex | kubic-project/dex-operator | A Kubernetes operator for configuring Dex with custom resources |
DynamoDB | microdc/k8s-dynamodb-operator | Amazon DynamoDB is a fully proprietary NoSQL database service that supports key-value and document data structures. This is a Kubernetes operator for DynamoDB |
Elasticell | deepfabric/elasticell-operator | Elasticell is a key-value storage with strong consistency and reliability. This is a Kubernetes operator for Elasticell |
Elasticsearch #1 (Official) | elastic/cloud-on-k8s | Elastic Cloud on Kubernetes (ECK) is the official Elastic Operator to deploy, provision, manage and orchestrate secured Elasticsearch clusters and Kibana on Kubernetes. |
Elasticsearch #2 | upmc-enterprises/elasticsearch-operator | Manages one or more elastic search clusters on Kubernetes. |
Elasticsearch #3 | jetstack/navigator | Create, scale and upgrade multi-AZ Elasticsearch clusters on Kubernetes |
Envoy | solo-io/envoy-operator | Envoy is a Microservice Abstraction Layer (also known as an API Gateway, API Middleware or in some cases Service Mesh)Run and manage Envoy on Kubernetes simply and securely. |
External Secret Operator | ContainerSolutions/externalsecrets-operator | External Secret Operator injects secrets from secret stores like AWS Secret Manager or 1Password and injects them as Kubernetes Secret resources. |
etcd | coreos/etcd-operator | Manages etcd k/v database clusters on Kubernetes. |
Flux | fluxcd/flux | The GitOps Kubernetes Operator. |
Flux Helm Operator | fluxcd/helm-operator | Manage Helm releases using HelmRelease resources. |
Fortio-operator | verfio/fortio-operator | Load Testing Operator within the Kubernetes cluster and outside of it. |
GateKeeper | replicatedhq/gatekeeper | Manages dynamic Admission Controllers using Open Policy Agent. |
Gitea | integr8ly/gitea-operator | An Operator that installs Gitea and, optionally on OpenShift, an oauth proxy |
GitLab | gitlab-operator | supports online upgrades |
Google Cloud Operator | paulczar/gcp-cloud-compute-operator | Allows the provisioning of Google Cloud resources such as Instances and Images using Kubernetes |
Grafana | integr8ly/grafana-operator | A Kubernetes Operator for creating and managing Grafana instances. |
Habitat | habitat-sh/habitat-operator | A Kubernetes operator for Habitat services. |
Hazelcast (Official) | hazelcast/hazelcast-operator | Hazelcast Enterprise cluster with Management Center |
HPA Operator | banzaicloud/hpa-operator | Horizontal Pod Autoscaler operator for Kubernetes. Annotate, and let HPA operator do the rest. |
Icinga2 operator | appscode/searchlight | Alerts for Kubernetes |
Infinispan | banzaicloud/infinispan-operator | Infinispan is a distributed in-memory key/value data store. This operator deploys and runs an Infinispan cache cluster. |
InfluxDB | gianarb/influxdb-operator | InfluxDB is an open-source time series database. This is the Kubernetes operator for InfluxDB and the TICK stack. |
Istio Operator | banzaicloud/istio-operator | An operator that manages Istio deployments on Kubernetes. |
Jaeger | jaegertracing/jaeger-operator | Jaeger Operator for Kubernetes. |
Jenkins | jenkinsci/jenkins-operator | Kubernetes native Jenkins operator. |
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 |
Kanister | kanisterio/kanister | Kanister is an extensible framework for application-level data management on Kubernetes |
KMS Vault | patoarvizu/kms-vault-operator | Operator for managing KMS-encrypted secrets and write them to Hashicorp Vault. |
Konfigurator | stakater/konfigurator | Dynamically generates and manages app configuration based on kubernetes resources |
Kong | upmc-enterprises/kong-operator | Manages Kong clusters on Kubernetes (no longer actively maintained) |
Kopf | kopf/operator | A Python framework to write Kubernetes operators in just few lines of code. |
KubeDB | kubedb/operator | KubeDB Operator |
KubeVirt | kubevirt/kubevirt | Kubernetes Virtualization Operator with API and runtime in order to define and manage virtual machines. |
Logging Operator | banzaicloud/logging-operator | Logging operator for Kubernetes based on Fluentd and Fluent-bit. |
Memcached | ianlewis/memcached-operator | A Kubernetes operator for memcached |
MongoDB #1 (Official) | mongodb/mongodb-enterprise-kubernetes | MongoDB Enterprise Operator for Kubernetes |
MongoDB #2 | kbst/mongodb | MongoDB Operator for Kubernetes |
MongoDB #3 | Ultimaker/k8s-mongo-operator | MongoDB Operator for MongoDB Replica Sets and Backups |
MXNet | deepinsight/mxnet-operator | Tools for ML/MXNet on Kubernetes. |
MySQL #1 | grtl/mysql-operator | This operator creates a Kubernetes Custom Resource for MySQL. |
MySQL #2 | oracle/mysql-operator | This operator creates, operates, and scales self-healing MySQL clusters in Kubernetes |
MySQL #3 | presslabs/mysql-operator | 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. |
MySQL #4 | banzaicloud/mysql-operator | Create, operate and scale self-healing MySQL clusters in Kubernetes. |
MySQL #5 | Percona-Lab/percona-xtradb-cluster-operator | A Kubernetes operator for Percona XtraDB Cluster. Multi-master MySQL cluster with ProxySQL ingress, native backups, scaling, monitoring, reliable automatic self-healing. |
NATS | nats-io/nats-operator | This operator manages NATS clusters atop Kubernetes, automating their creation and administration. |
Neo4J | lukasz-antoniak/neo4j-operator | Kubernetes operator for Neo4J graph database. Allows to quickly provision, check status and periodically backup Neo4J cluster. |
Netperf | piontec/netperf-operator | This is a very simple operator that can be used to test network performance between 2 pods using the netperf tool. It is also a good operator for learning puposes, as the code base is pretty small and it's described in detail in this blog post. |
NSQ | andyxning/nsq-operator | A Kubernetes operator for NSQ. |
OpenFaaS | openfaas-incubator/openfaas-operator | An operator for OpenFaaS functions. |
OpenStack Seeder | sapcc/kubernetes-operators | Seed your OpenStack content with a this operator. |
opssight-connector | blackducksoftware/opssight-connector | The Black Duck OpsSight Connector provides software composition analysis of open-source components of containers. |
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 |
Pravega | pravega/pravega-operator | Create, operate and scale Pravega stream storage clusters on Kubernetes |
Prometheus | coreos/prometheus-operator | Monitor Kubenertes and external resources with Prometheus. |
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. |
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. |
Qdr | interconnectedcloud/qdr-operator | Operator for running Apache Qpid Dispatch Router (AMQP 1.0) on Kubernetes and OpenShift |
Quobyte | Quobyte/Quobyte | Quobyte’s next-generation file system unifies file, block and object storage for enterprise and scientific applications. |
RBAC Manager | reactiveops/rbac-manager | This operator simplifies the management of RBAC Role Bindings in Kubernetes. |
RabbitMQ | skylt/rabbitmq-operator | RabbitMQ operator for Kubernetes. |
RDS | MYOB-Technology/ops-kube-db-operator | Operator to control RDS DBs in AWS. |
Redis #1 | spotahome/redis-operator | Redis Operator creates/configures/manages redis clusters atop Kubernetes. |
Redis #2 | jw-s/redis-operator | Redis operator for Kubernetes |
Redis #3 | amaizfinance/redis-operator | Redis operator for Kubernetes. Provides high availability for Redis. Designed to resist to most kinds of failures without human intervention. |
Redis #4 | kube-incubator/redis-operator | Redis operator for Kubernetes based on operator-sdk. |
Redis Cluster | AmadeusITGroup/Redis-Operator | A Kubernetes operator for running Redis in Cluster mode |
Registries | kubic-project/registries-operator | A Kubernetes operator for managing images registries |
RethinkDB | jmckind/rethinkdb-operator | RethinkDB is a free and open-source, distributed document-oriented database. This is a Kubernetes operator to manage RethinkDB instances. |
RocketMQ | huanwei/rocketmq-operator | Create, operate and scale self-healing Rocketmq clusters on Kubernetes. |
Rook | rook/rook | File, Block, and Object Storage Services for your Cloud-Native Environment |
Secreter | amaizfinance/secreter | Kubernetes operator and CLI tool for encrypting Kubernetes secrets and declarative secret management. |
Service level | slok/service-level-operator | Manage application's SLI and SLO's easily with the application lifecycle inside a Kubernetes cluster. |
Spark #1 | GoogleCloudPlatform/spark-on-k8s-operator | Kubernetes CRD operator for specifying and running Apache Spark applications idiomatically on Kubernetes. |
Spark #2 | jvm-operators/spark-operator | ConfigMap-based operator for deploying ephemeral Apache Spark clusters and intelligent applications that spawn their own Spark clusters natively on Kubernetes and OpenShift. |
StorageOS | storageos/cluster-operator | StorageOS transforms commodity server or cloud based disk capacity into enterprise-class storage to run persistent workloads such as databases in containers. The StorageOS Operator installs and manages StorageOS clusters. |
Stork | libopenstorage/stork | Stork is a Cloud Native storage orchestration runtime scheduler plugin. It translates a scheduler's orchestration decisions into someting that an external cloud native storage solution can act upon. By doing so, it extends Kubernetes with more stateful awareness of the underlying storage provider, it's capabilities and state. |
Tensorflow | kubeflow/tf-operator | Tools for ML/Tensorflow on Kubernetes. |
TiDB #1 (Official) | pingcap/tidb-operator | TiDB operator creates and manages TiDB clusters running in Kubernetes. |
TiDB #2 | aliyx/tidb-operator | TiDB operator creates/configures/manages TiDB clusters atop Kubernetes. |
Tomcat | kube-incubator/tomcat-operator | Tomcat operator creates/manages Tomcat clusters atop Kubernetes. It is also a good operator for learning puposes, as the code base is pretty small. |
Unifiedpush | aerogear/ups-config-operator | UnifiedPush Server is a server that allows sending push notifications to different (mobile) platforms. Using this operator manage your Unifiedpush variants from Kubernetes and Openshift |
Vault #1 | coreos/vault-operator | This operator will run and manage Vault on Kubernetes simply and securely. |
Vault #2 | banzaicloud/bank-vaults | This operator offers a feature rich HA Vault operator with TLS, external API based re/configuration, several/automatic unseal options and more. |
Velero | heptio/velero | Velero (formerly Ark) is a utility for managing disaster recovery, this operator manages the backup and restoration of cluster components (pv,pvc,deployments, etc.) to aid in disaster recovery. |
WebLogic | oracle/weblogic-kubernetes-operator | Oracle Weblogic Server Kubernetes Operator |
WildFly | banzaicloud/wildfly-operator | Wildfly Operator let's you describe and deploy JEE application on Wildfly server by creating a Custom Resource Definitions in Kubernetes. |
Wordpress | presslabs/wordpress-operator | Enables managing multiple WordPress installments at scale. |
Zeebe | zeebe-io/zeebe-operator | Kubernetes Operator for Zeebe - Let me manage your https://zeebe.io cluster on K8s. |
ZooKeeper #1 | Nuance-Mobility/zookeeper-operator | This is an operator for ZooKeeper 3.5.x |
ZooKeeper #2 | pravega/zookeeper-operator | This is an operator for ZooKeeper 3.5.x |