Skip to content

Latest commit

 

History

History
161 lines (157 loc) · 29.9 KB

README.md

File metadata and controls

161 lines (157 loc) · 29.9 KB

Awesome Operators in the Wild

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.
Application Runtimes application-runtimes/operator An Operator for deploying any runtime based applications to Kubernetes, which can also be used as a base for runtime-specific Operators.
Appsody appsody/appsody-operator An Operator for deploying Appsody based applications to Kubernetes.
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.
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.
AWS SageMaker aws/amazon-sagemaker-operator-for-k8s Manages AWS sagemaker jobs from inside your kubernetes cluster.
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 datastax/cass-operator DataStax Kubernetes Operator for Apache Cassandra™ and DataStax Enterprise (DSE).
Cassandra #2 instaclustr/cassandra-operator Kubernetes operator for Apache Cassandra.
Cassandra #3 vgkowski/cassandra-operator Kubernetes operator for cassandra clusters automation.
Cassandra #4 jetstack/navigator Create and scale multi-AZ Casssandra clusters on Kubernetes.
Cassandra #5 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...
Cassandra #6 kudobuilder/operators/cassandra An Operator for Apache Cassandra built using KUDO
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
Che eclipse/che-operator Kubernetes operator for Che, a container based IDE that provides a fast, easy to use, extensible platform for hybrid cloud development teams
ClickHouse Altinity/clickhouse-operator A Kubernetes operator for ClickHouse.
Cloud Foundry cloudfoundry/cf-operator Run Cloud Foundry upon Kubernetes, or any BOSH deployment
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 #1 ibm/couchdb-operator() Fully automated deployment and configuration of Apache CouchDB clusters. Also available on OperatorHub.io
CouchDB #2 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
DB Operator kloeckner-i/db-operator A DB Operator for MySQL/PostgresSQL. Supports also Google Cloud SQL instance creation.
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
Elasticsearch #4 kudobuilder/operators/elastic An Operator for ElasticSearch built using KUDO
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.
Flink lyft/flinkk8soperator Kubernetes operator that provides control plane for managing Apache Flink applications.
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.
Galera Operator Orange-OpenSource/galera-operator Galera Operator makes it easy to manage highly-available galera clusters deployed to Kubernetes and automates tasks related to operating a galera cluster.
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.
Halkyon halkyonio/operator To simplify the process of composing/deploying and bind micro-service applications on Kubernetes
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.
IBM Block Storage CSI Driver IBM/ibm-block-csi-operator The IBM block storage CSI driver enables container orchestrators, such as Kubernetes and OpenShift, to manage the life-cycle of persistent storage. This operator deploys and manages the driver.
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
Kafka #3 banzaicloud/kafka-operator An operator that manages Kafka on Kubernetes.
Kafka #4 kudobuilder/operators/kafka An Apache Kafka Operator built on KUDO
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 provides you with many familiar database engines to choose from, including PostgreSQL, MySQL, MongoDB, Elasticsearch, Redis, Memcached, and Percona XtraDB
KubeVirt kubevirt/kubevirt Kubernetes Virtualization Operator with API and runtime in order to define and manage virtual machines.
KUDO kudobuilder/kudo The Kubernetes Universal Declarative Operator, a toolkit for building Kubernetes Operators declaratively using YAML.
Logging Operator banzaicloud/logging-operator Logging operator for Kubernetes based on Fluentd and Fluent-bit.
Mailgun whyseco/mailgun-operator Mailgun operator to deploy mailgun configuration through a kubernetes controller.
Memcached ianlewis/memcached-operator A Kubernetes operator for memcached
MongoDB #1 (Official) mongodb/mongodb-enterprise-kubernetes MongoDB Enterprise Operator for Kubernetes
MongoDB #2 (Official) mongodb/mongodb-kubernetes-operator MongoDB Community Operator for Kubernetes
MongoDB #3 kbst/mongodb MongoDB Operator for Kubernetes
MongoDB #4 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.
NuoDB nuodb/nuodb-operator The NuoDB Operator deploys the NuoDB database and supports either ephemeral or persistent storage options with configurations to run NuoDB Insights, a visual database monitoring Web UI, and start a sample application (ycsb) to quickly generate a configurable SQL workload against the database. See: NuoDb's github for requirements.
New Relic personio/newrelic-alert-manager Manage New Relic alerts and dashboards as Kubernetes custom resources.
OpenFaaS openfaas-incubator/openfaas-operator An operator for OpenFaaS functions.
OpenStack Seeder sapcc/kubernetes-operators Seed your OpenStack content with a this operator.
Open Liberty OpenLiberty/open-liberty-operator An Operator for deploying Open Liberty application containers into Kubernetes.
Oracle Database malagoli/oracle-db-operator Prototype of an Oracle Database 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.
Pulsar sky-big/pulsar-operator Manages pulsar cluster on Kubernetes.
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 #5 ucloud/redis-operator Redis operator build a Highly Available Redis cluster with Sentinel atop Kubernetes
Redis Cluster #1 AmadeusITGroup/Redis-Operator A Kubernetes operator for running Redis in Cluster mode
Redis Cluster #2 ucloud/redis-cluster-operator Redis Cluster Operator creates and manages Redis in Cluster mode atop Kubernetes
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 #1 huanwei/rocketmq-operator Create, operate and scale self-healing Rocketmq clusters on Kubernetes.
RocketMQ #2 apache/rocketmq-operator RocketMQ Operator is to manage RocketMQ service instances deployed on Kubernetes.
Rook rook/rook File, Block, and Object Storage Services for your Cloud-Native Environment
Secret Backup Operator geritol/secret-backup-operator Backs up your Kubernetes Secrets
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.
Shell flant/shell-operator Shell-operator is a tool for running event-driven scripts in a Kubernetes cluster.
SOPS Operator craftypath/sops-operator A Kubernetes operator for Mozilla SOPS.
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.
Spark #3 mesosphere/kudo-spark-operator An Operator for Apache Spark built using KUDO
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.
Terraform hashicorp/terraform-k8s First-class integrations between Terraform and Kubernetes. Currently, this project includes the Terraform Cloud Operator, which synchronizes a Kubernetes Workspace (Custom Resource) to a Terraform Cloud Workspace. You can read more about this project and its potential use cases on the HashiCorp blog.
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.
Vault dynamic configuration patoarvizu/vault-dynamic-configuration-operator This operator works in conjunction with banzaicloud/bank-vaults, to dynamically modify a target Vault custom resource based on annotations on Kubernetes ServiceAccounts.
VaultSync Operator thatInfrastructureGuy/vaultsync-operator Periodically syncs secrets from industry standard Vaults (Azure KeyVault / AWS Secrets Manager) to Kubernetes Secrets. Ability to redeploy deployments/statefulsets to ensure applications utilize the newly updated secrets.
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.
Ververica Platform fintechstuiods/ververica-platform-k8s-operator Ververica Platform is a production-ready stream processing platform powered by open source Apache Flink®.
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.
Worker Pod Autoscaler practo/k8s-worker-pod-autoscaler Scale kubernetes pods based on the combination of queue metrics by intelligently querying them only when needed.
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
ZooKeeper #3 kudobuilder/operators/zookeeper An Operator for Apache ZooKeeper built with KUDO