diff --git a/docs/operators/index.md b/docs/operators/index.md new file mode 100644 index 0000000..78dc669 --- /dev/null +++ b/docs/operators/index.md @@ -0,0 +1,44 @@ +# Operators + +## What are Operators? +The [Operator pattern](https://kubernetes.io/docs/concepts/extend-kubernetes/operator/) is the concept of running "meta" software within your cluster to manage your applications and supporting components. + +For example, you as a cluster operator may provision a `OpensourceDatabaseSoftware` +(an operator-defined [Custom Resource](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/)), and the operator would take care of provisioning the underlying resources (Deployments, ConfigMap, Secrets, Pods, etc) on your behalf, based on the configuration you provide. + +Within OKD, we use a suite of tools called [Operator Framework](https://operatorframework.io/) to manage operators within the cluster +(an operator for operators). With Operator Framework we can access operators from central catalogs (such as this one) +and install them within your cluster. + +### Isn't that what Helm is for? + +Helm is a different way of deploying software into Kubernetes clusters. Helm Chats are a set of templates, and then based on your specification (from `values.yaml`), the Helm Controller renders those resources out. Helm Charts often relies on existing Kubernetes primitives (e.g. Deployment) to manage the running pods. + +Some Operators will use Helm internally to handle the creation of their Kubernetes resources, whilst the operator also provides additional management functionality (such as backup coordination) + +## Where can I find Operators to install on my cluster? +OKD currently by default includes a catalog shared with OpenShift called "[Community Operators](https://github.com/redhat-openshift-ecosystem/community-operators-prod)". These Community Operators are often packaged with OKD/OpenShift in mind. + +There is also [OperatorHub.io](https://operatorhub.io/) which contains a larger catalog of software, however operators in this catalog are more likely to not be compatible with OKD/Openshift. + +### [OKDerators](./okderators/index.md) + +The OKD Working Group packages an opionated and curated set of operators called "[OKDerators](./okderators/index.md)". These are intended to be the OKD alternative to the private catalogs included within OpenShift (see below). + +OKDerators includes solutions for Storage, Cluster Logging, GitOps, Multi-cluster and more. + +We need contributors to help package operators for OKDerators. We are especially seeking contributions to package Virtualisation and AI operator sets. + +### Why do you need OKD-adapted operators/applications? +Compared to many other Kubernetes distributions, OKD has additional security restrictions, assumptions and features +that mean an operator or application that would work "out of the box" on a more vanilla Kubernetes distribution, +does not function on OKD. For example, additional security profiles may need to be applied, or MachineConfigs applied +to add node features. + +## Are these "Cluster Extensions"? + +Some vendors (such as RedHat) use the term "Cluster Extension" to describe an opionated deployment of an operator or set of operators that bring significant functionality into their Kubernetes distribution (such as Storage or Virtualisation). + +### Can I install OpenShift Cluster Extensions/Operators on my OKD cluster? + +Red Hat OpenShift includes two additional private catalog sources. "redhat-operators" and "certified diff --git a/docs/operators/okderators/_category_.yml b/docs/operators/okderators/_category_.yml new file mode 100644 index 0000000..a9e5e2f --- /dev/null +++ b/docs/operators/okderators/_category_.yml @@ -0,0 +1,3 @@ +# https://docusaurus.io/docs/next/sidebar/autogenerated#category-item-metadata +collapsible: false +collapsed: false diff --git a/docs/operators/okderators/contribute.md b/docs/operators/okderators/contribute.md new file mode 100644 index 0000000..854f35d --- /dev/null +++ b/docs/operators/okderators/contribute.md @@ -0,0 +1,7 @@ +# Contribute + +We are looking for packagers to expand the OKDerator catalog! + +:::info +In progress +::: diff --git a/docs/operators/okderators/directory.md b/docs/operators/okderators/directory.md new file mode 100644 index 0000000..826700a --- /dev/null +++ b/docs/operators/okderators/directory.md @@ -0,0 +1,149 @@ +# Directory + +The goal of OKDerators is to provide a full suite of options for deploying many of the operators found in RedHat OpenShift. + +This page lists all those operators, and which ones are currently included in OKDerators. + +If you see an operator that you would like to use - please contribute and help us package it for inclusion. See [Contributing](contribute.md). + +--- + +## Operator inventory + +| Package | OpenShift Product Name | Default channel | Current version | OKD Product Name | Type | TL;DR | Source/GitHub | Challenges TL;DR | Priority | Complete | In OKD operator pipeline | In OKDerators catalog | +| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | +| advanced-cluster-management | Advanced Cluster Management for Kubernetes | release-2.15 | 2.15.1 | OKD Multi Cluster (Stolostron) | Suite | Stolostron is OKD integrated Open Cluster Management | [source](https://github.com/stolostron/deploy) | Build process requires access to stolostron quay org | High | No | ✅ | ✅ | +| odf-csi-addons-operator | CSI Addons | stable-4.20 | 4.20.6-rhodf | | | CSI Addons provides the CSI Addons Controller that enables advanced storage operations for CSI-drivers. | | | | | ✅ | ✅ | +| cluster-observability-operator | Cluster Observability Operator | stable | 1.3.1 | | Suite | Integrated Prometheus, Altermanager and Thanos Querier | [source](https://github.com/rhobs/observability-operator) | WHy this vs user workload monitoring? | High | Yes | ✅ | ✅ | +| odf-dependencies | Data Foundation Dependencies | stable-4.20 | 4.20.6-rhodf | | | deploys dependencies. | [source](https://github.com/red-hat-storage/odf-operator) | | | | ✅ | ✅ | +| openshift-external-secrets-operator | External Secrets Operator for Red Hat OpenShift | stable-v1 | 1.0.0 | | | External Secrets Operator for Red Hat OpenShift deploys and manages `external-secrets` application in OpenShift clusters. | [source](https://github.com/openshift/external-secrets-operator/blob/master/README.md) | | | | ✅ | ✅ | +| ingress-node-firewall | Ingress Node Firewall Operator | stable | 4.21.0-202602091142 | | Utility | Operator+Controller to add firewall rules in ebpf onto nodes | [source](https://github.com/openshift/ingress-node-firewall) | | Medium | No | ✅ | ✅ | +| kubernetes-nmstate-operator | Kubernetes NMState Operator | stable | 4.21.0-202602180447 | | Utility | Configure node network via K8s API objects | [source](https://github.com/openshift/kubernetes-nmstate) | | | No | ✅ | ✅ | +| lvms-operator | LVM Storage | stable-4.21 | 4.21.0 | | Utility | Used for single node usecase, provision PVs with local LVM system | [source](https://github.com/openshift/lvm-operator) | | High | Yes | ✅ | ✅ | +| local-storage-operator | Local Storage | stable | 4.21.0-202602100147 | | Utility | Discovers attached volumes that can be used for storage. Required on ODF bare metal | [source](https://github.com/openshift/local-storage-operator) | | High | Yes | ✅ | ✅ | +| loki-operator | Loki Operator | stable-6.4 | 6.4.2 | | Utility | LokiStack is a recommended deploy for the OS logging stack | [source](https://github.com/grafana/loki/) | Not sure where the openshift specific operator builds | High | Yes | ✅ | ✅ | +| metallb-operator | MetalLB Operator | stable | 4.21.0-202602091142 | | | An operator for deploying MetalLB on a kubernetes cluster. | [source](https://github.com/openshift/metallb-operator) | | High | Yes | ✅ | ✅ | +| netobserv-operator | Network Observability | stable | 1.11.0 | | | Network Observability is an OpenShift operator that deploys a monitoring pipeline consisting in: - an eBPF agent, that generates network flows from captured pa… | [source](https://github.com/netobserv/network-observability-operator) | | High | No | ✅ | ✅ | +| nfd | Node Feature Discovery Operator | stable | 4.21.0-202602091142 | | | The Node Feature Discovery Operator manages the detection of hardware features and configuration in a Kubernetes cluster by labeling the nodes with hardware-sp… | | | Medium | No | ✅ | ✅ | +| redhat-oadp-operator | OADP Operator | stable | 1.5.4 | OKD API for Data Protection (Velero) | | **OpenShift API for Data Protection (OADP)** operator sets up and installs Velero on the OpenShift platform, allowing users to backup and restore applications. | [source](https://github.com/openshift/oadp-operator) | | High | Yes | ✅ | ✅ | +| odf-multicluster-orchestrator | ODF Multicluster Orchestrator | stable-4.20 | 4.20.6-rhodf | | | Orchestrator for OpenShift Data Foundation clusters running across multiple OpenShift clusters. | [source](https://github.com/red-hat-storage/odf-multicluster-orchestrator) | | Medium | No | ✅ | ✅ | +| ocs-operator | OpenShift Container Storage | stable-4.20 | 4.20.6-rhodf | | | **Red Hat OpenShift Container Storage** deploys three operators. | [source](https://github.com/red-hat-storage/ocs-operator) | | | | ✅ | ✅ | +| odf-operator | OpenShift Data Foundation | stable-4.20 | 4.20.6-rhodf | OKD Data Foundation | | **Red Hat OpenShift Data Foundation** deploys three operators. | [source](https://github.com/red-hat-storage/odf-operator) | | High | Yes | ✅ | ✅ | +| ocs-client-operator | OpenShift Data Foundation Client | stable-4.20 | 4.20.6-rhodf | | | OpenShift Data Foundation client operator enables consumption of storage services from a remote centralized OpenShift Data Foundation provider cluster. | [source](https://github.com/red-hat-storage/ocs-client-operator) | | | | ✅ | ✅ | +| odf-prometheus-operator | Prometheus Operator | stable-4.20 | 4.20.6-rhodf | | | The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances. | [source](https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation) | | | No | ✅ | ✅ | +| openshift-gitops-operator | Red Hat OpenShift GitOps | latest | 1.19.1 | OKD GitOps (ArgoCD) | Suite | ArgoCD custom operator? | [source](https://github.com/redhat-developer/gitops-operator) | | High | Yes | ✅ | ✅ | +| cluster-logging | Red Hat OpenShift Logging | stable-6.4 | 6.4.2 | OKD Logging (Loki) | Utility | Red Hat OpenShift Logging The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and other third-party… | [source](https://github.com/openshift/cluster-logging-operator) | | High | Yes | ✅ | ✅ | +| servicemeshoperator | Red Hat OpenShift Service Mesh 2 | stable | 2.6.13-0 | OKD Service Mesh (Maistra) | Suite | Red Hat OpenShift Service Mesh 2 is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect… | [source](https://github.com/maistra) | | High | No | ✅ | ✅ | +| servicemeshoperator3 | Red Hat OpenShift Service Mesh 3 | stable | 3.2.2 | OKD Service Mesh (Maistra) | Suite | Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect,… | [source](https://github.com/maistra) | | High | No | ✅ | ✅ | +| sriov-network-operator | SR-IOV Network Operator | stable | 4.21.0-202602091142 | | Utility | SR-IOV Network Operator for Openshift ## Introduction The sriov-network-operator is generally responsible for configuring the sriov components in a openshift c… | [source](https://github.com/openshift/sriov-network-operator) | | Medium | No | ✅ | ✅ | +| odf-external-snapshotter-operator | Snapshot Controller | stable-4.20 | 4.20.6-rhodf | | | Snapshot Controller provides the snapshot controller for managing volume group snapshots | [source](https://github.com/red-hat-storage/external-snapshotter) | | | | ✅ | ✅ | +| web-terminal | Web Terminal | fast | 1.13.0 | | Utility | Start a web terminal in your browser with common CLI tools for interacting with the cluster. | [source](https://github.com/redhat-developer/web-terminal-operator) | | Medium | No | ✅ | ✅ | +| openshift-cert-manager-operator | cert-manager Operator for Red Hat OpenShift | stable-v1 | 1.18.1 | | Utility | Deploys vanilla cert-manager but different to the community operator | [source](https://github.com/openshift/cert-manager-operator/) | | High | Yes | ✅ | ✅ | +| multicluster-engine | multicluster engine for Kubernetes | stable-2.10 | 2.10.1 | | | Multicluster engine for Kubernetes provides the foundational components that are necessary for the centralized management of multiple Kubernetes-based clusters… | | | | No | ✅ | ✅ | +| pf-status-relay-operator | pf-status-relay-operator | stable | 4.21.0-202602091142 | | | It deploys the pf-status-relay application. | | | | | ✅ | ✅ | +| aws-efs-csi-driver-operator | AWS EFS CSI Driver Operator | stable | 4.21.0-202602170321 | | Utility | Deploys the OKD/Openshift integrated AWS EFS CSI Driver | [source](https://github.com/openshift/aws-efs-csi-driver-operator) | | | No | ❌ | ❌ | +| aws-load-balancer-operator | AWS Load Balancer Operator | stable-v1 | 1.3.0 | | Utility | Manages integrated deployment of https://github.com/openshift/aws-load-balancer-controller | [source](https://github.com/openshift/aws-load-balancer-operator) | | | No | ❌ | ❌ | +| rhacs-operator | Advanced Cluster Security for Kubernetes | stable | 4.9.3 | OKD Cluster Security (Stackrox) | Suite | Stackrox (fka as Prevent/Mitigate/Apollo) | [source](https://github.com/stackrox/stackrox/tree/master/operator) | Looks like it already has an OSS deploy and seems to be few mods for openshift | High | No | ❌ | ❌ | +| ansible-automation-platform-operator | Ansible Automation Platform | stable-2.6 | 2.6.0+0.1768951397 | OKD Ansible | Suite | Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. | [source](https://github.com/ansible/awx-operator) | | | No | ❌ | ❌ | +| ansible-cloud-addons-operator | Ansible Cloud Addons | stable-2.5-cluster-scoped | 2.5.0+0.1761049779 | | | Presumably related to Ansible Automation Platform but can’t find any of the CRDs on GitHub | ?? Can't find | Unable to find open source component | | No | ❌ | ❌ | +| authorino-operator | Authorino Operator | stable | 1.3.0 | | | The operator to manage instances of Authorino | [source](https://github.com/Kuadrant/authorino-operator) | | | | ❌ | ❌ | +| openshift-builds-operator | Builds for Red Hat OpenShift Operator | latest | 1.7.0 | | | Builds for Red Hat OpenShift is an extensible build framework based on the Shipwright project, which you can use to build container images on an OpenShift Cont… | [source](https://github.com/redhat-openshift-builds/operator) | | | | ❌ | ❌ | +| businessautomation-operator | Business Automation | stable | 7.13.5-19 | | Suite | Deploys OptaPlanner (+drools/jBPM) | [source](https://github.com/kiegroup/kie-cloud-operator) | lots of related images in the manifest | | No | ❌ | ❌ | +| smb-csi-driver-operator | CIFS/SMB CSI Driver Operator | stable | 4.21.0-202602091142 | | | CIFS/SMB CSI Driver Operator provides Server Message Block (SMB) CSI Driver that enables you to create and mount CIFS/SMB PersistentVolumes. | [source](https://github.com/openshift/csi-operator) | | | | ❌ | ❌ | +| cli-manager | CLI Manager | tech-preview | 0.2.0 | | | The CLI Manager is a comprehensive tool designed to simplify the management of OpenShift CLI plugins within the OpenShift environment. | [source](https://github.com/openshift/cli-manager) | | | | ❌ | ❌ | +| cephcsi-operator | CephCSI operator | stable-4.20 | 4.20.6-rhodf | | | Operator to deploy ceph csi drivers. | [source](https://github.com/ceph/ceph-csi-operator) | | | | ❌ | ❌ | +| clusterresourceoverride | ClusterResourceOverride Operator | stable | 4.21.0-202602091142 | | Utility | Deploys a https://github.com/openshift/cluster-resource-override-admission that allows customising overcommit levels | [source](https://github.com/openshift/cluster-resource-override-admission-operator) | | | No | ❌ | ❌ | +| compliance-operator | Compliance Operator | stable | 1.8.2 | | Suite | Integrated OpenSCAP | [source](https://github.com/ComplianceAsCode/compliance-operator) | Unsure if superseded, operator in catalog refers to a deprecated repo (openshift/compliance-operato… | | No | ❌ | ❌ | +| openshift-custom-metrics-autoscaler-operator | Custom Metrics Autoscaler | stable | 2.18.1-2 | | Utility | integrated keda.sh | [source](https://github.com/openshift/custom-metrics-autoscaler-operator) | Seems to already be part of community repo? | | No | ❌ | ❌ | +| dns-operator | DNS Operator | stable | 1.3.0 | | | A Kubernetes Operator to manage the lifecycle of DNS resources | [source](https://github.com/Kuadrant/dns-operator) | | | | ❌ | ❌ | +| dpu-network-operator | DPU Network Operator | stable | 4.13.0-202309181427 | | Utility | support Nvidia BlueField DPU 2-cluster deployment method | [source](https://github.com/openshift/dpu-network-operator) | unsure on usecase | | No | ❌ | ❌ | +| datagrid | Data Grid | stable | 8.5.14 | | Utility | productised infinispan | [source](https://github.com/infinispan/infinispan-operator) | no major differences afaik | | No | ❌ | ❌ | +| devworkspace-operator | DevWorkspace Operator | fast | 0.39.0 | | Suite | implements DevWorkspace api | [source](https://github.com/devfile/devworkspace-operator) | | | No | ❌ | ❌ | +| external-dns-operator | ExternalDNS Operator | stable-v1 | 1.3.3 | | Utility | deploys https://github.com/kubernetes-sigs/external-dns via operator moethod | [source](https://github.com/openshift/external-dns-operator) | | High | No | ❌ | ❌ | +| fence-agents-remediation | Fence Agents Remediation Operator | stable | 0.7.0 | | Utility | MediK8s - kill the power of dodgy nodes via ClusterLabs fence-agents | [source](https://github.com/medik8s/fence-agents-remediation) | | | No | ❌ | ❌ | +| file-integrity-operator | File Integrity Operator | stable | 1.3.8 | | Utility | Runs https://aide.github.io/containers on the node to check for fiddling | [source](https://github.com/openshift/file-integrity-operator) | | | No | ❌ | ❌ | +| gcp-filestore-csi-driver-operator | GCP Filestore CSI Driver Operator | stable | 4.21.0-202602091142 | | Utility | Deploys https://github.com/openshift/gcp-filestore-csi-driver | [source](https://github.com/openshift/gcp-filestore-csi-driver-operator) | | | No | ❌ | ❌ | +| gatekeeper-operator-product | Gatekeeper Operator | stable | 3.20.0 | | Utility | Part of Stolostron(ACM), manages an https://github.com/open-policy-agent/gatekeeper | [source](https://github.com/stolostron/gatekeeper-operator) | | | No | ❌ | ❌ | +| red-hat-hawtio-operator | HawtIO Operator | stable-v1 | 1.3.0 | | | Red Hat build of HawtIO ============== HawtIO eases the discovery and management of Java applications deployed on OpenShift. | | | | | ❌ | ❌ | +| bamoe-kogito-operator | IBM BAMOE Kogito Operator | 8.x | 8.0.5-3 | | Suite | Deploys Kogito(?) | [source](https://github.com/kiegroup/kogito-operator) | Unsure how this interacts with RedHat branded equivalent | | No | ❌ | ❌ | +| bamoe-businessautomation-operator | IBM Business Automation | 8.x-stable | 8.0.8-1 | | Suite | Deploys OptaPlanner | [source](https://github.com/kiegroup/kie-cloud-operator) | Unsure how this interacts with RedHat branded equivalent | | No | ❌ | ❌ | +| eap | JBoss EAP | stable | 3.2.12 | | Suite | Deploys integrated Wildfly (JBoss EAP = supported Wildfly) | [source](https://github.com/wildfly/wildfly-operator) | Not sure exactly where the operator is built | | No | ❌ | ❌ | +| job-set | Job Set Operator | stable-v1.0 | 1.0.0 | | | The JobSet Operator provides the ability to deploy a JobSet controller in OpenShift. | [source](https://github.com/openshift/kubernetes-sigs-jobset) | | | | ❌ | ❌ | +| kernel-module-management | Kernel Module Management | stable | 2.5.1 | | | Kubernetes operator managing out of tree kernel modules | | | | | ❌ | ❌ | +| kernel-module-management-hub | Kernel Module Management (Hub) | stable | 2.5.1 | | | Hub component for Kernel Module Management | | | | | ❌ | ❌ | +| kiali-ossm | Kiali Operator | stable | 2.17.4 | | Suite | Part of Service Mesh | [source](https://github.com/kiali/kiali) | Need to consider how plays into next-gen service mes | | No | ❌ | ❌ | +| cluster-kube-descheduler-operator | Kube Descheduler Operator | stable | 5.3.2 | | Utility | Move pods that aren’t where you want them to be (ie fails taint constrains) | [source](https://github.com/openshift/cluster-kube-descheduler-operator) | | | No | ❌ | ❌ | +| lifecycle-agent | Lifecycle Agent | stable | 4.21.0 | | | Lifecycle Agent for OpenShift The Lifecycle Agent for OpenShift provides local lifecycle management services for Single Node Openshift (SNO) clusters. | | | | | ❌ | ❌ | +| limitador-operator | Limitador | stable | 1.3.0 | | | The Limitador operator installs and maintains limitador instances | [source](https://github.com/Kuadrant/limitador-operator) | | | | ❌ | ❌ | +| machine-deletion-remediation | Machine Deletion Remediation operator | stable | 0.6.0 | | | Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy nodes using the Machine API. | [source](https://github.com/medik8s/machine-deletion-remediation) | | | No | ❌ | ❌ | +| mta-operator | Migration Toolkit for Applications Operator | stable-v8.0 | 8.0.1 | | | Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new techn… | | | | No | ❌ | ❌ | +| mtr-operator | Migration Toolkit for Runtimes Operator | alpha | 1.2.7 | | | The Migration Toolkit for Runtimes (MTR) is a web console application that supports large-scale Java application modernization and migration projects across a… | [source](https://github.com/windup/windup-operator) | | | No | ❌ | ❌ | +| mtv-operator | Migration Toolkit for Virtualization Operator | release-v2.11 | 2.11.0 | | | The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on OpenShift | [source](https://github.com/kubev2v/forklift) | | | No | ❌ | ❌ | +| model-validation-operator | Model Validation Operator | tech-preview | 0.0.2 | | | Model Validation Operator | [source](https://github.com/sigstore/model-validation-operator) | | | | ❌ | ❌ | +| multiarch-tuning-operator | Multiarch Tuning Operator | stable | 1.2.2 | | | The Multiarch Tuning Operator optimizes workload management within multi-architecture clusters and in single-architecture clusters transitioning to multi-archi… | | | | | ❌ | ❌ | +| tang-operator | NBDE Tang Server | alpha | 1.0.0 | | | NBDE Tang Server operator allows Tang Server deployment on OpenShift | [source](https://github.com/latchset/tang-operator) | | | | ❌ | ❌ | +| numaresources-operator | NUMA Resources Operator | 4.21 | 4.21.0 | | | NUMA Resources Operator for OpenShift Provides NUMA-aware scheduling and resources management for workloads. | [source](https://github.com/openshift-kni/numaresources-operator) | | | No | ❌ | ❌ | +| node-healthcheck-operator | Node Health Check Operator | stable | 0.11.0 | | | Introduction Hardware is imperfect, and software contains bugs. | [source](https://github.com/medik8s/node-healthcheck-operator) | | High | No | ❌ | ❌ | +| node-maintenance-operator | Node Maintenance Operator | stable | 5.6.0 | | | Node Maintenance Operator (NMO) This operator will keep nodes cordoned and drained while a matching NodeMaintenance (nm) custom resource exists. | [source](https://github.com/medik8s/node-maintenance-operator) | | High | No | ❌ | ❌ | +| node-observability-operator | Node Observability Operator | alpha | 0.2.0 | | | An Operator that will be able to gather debugging/profiling data over a custom period of time which would be helpful to troubleshoot and resolve issues for Ope… | [source](https://github.com/openshift/node-observability-operator) | | Medium | No | ❌ | ❌ | +| mcg-operator | NooBaa Operator | stable-4.20 | 4.20.6-rhodf | | | The noobaa operator creates and reconciles a NooBaa system in a Kubernetes/Openshift cluster. | [source](https://github.com/noobaa/noobaa-core) | | | | ❌ | ❌ | +| lightspeed-operator | OpenShift Lightspeed Operator | stable | 1.0.9 | | | OpenShift Lightspeed Operator provides generative AI-based virtual assistant which integrates into the OpenShift web console. | [source](https://github.com/openshift/lightspeed-operator) | | | | ❌ | ❌ | +| logic-operator | OpenShift Serverless Logic Operator | stable | 1.37.1 | | | OpenShift Serverless Logic Kubernetes Operator for deploying workflow applications based on the [CNCF Serverless Workflow specification v0.8] | [source](https://github.com/kiegroup/kogito-serverless-operator/) | | | | ❌ | ❌ | +| logic-operator-rhel8 | OpenShift Serverless Logic Operator (Alpha) | alpha | 1.36.1 | | | OpenShift Serverless Logic Kubernetes Operator for deploying workflow applications based on the [CNCF Serverless Workflow specification v0.8] | [source](https://github.com/kiegroup/kogito-serverless-operator/) | | | | ❌ | ❌ | +| cincinnati-operator | OpenShift Update Service | v1 | 5.0.3 | | | Use Case Running an Update Service instance in a cluster is appealing for offline OpenShift clusters or for admins that want to provide their own graph data in… | [source](https://github.com/openshift/cincinnati-operator) | | | No | ❌ | ❌ | +| kubevirt-hyperconverged | OpenShift Virtualization | stable | 4.21.0 | | | Requirements Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers. | [source](https://github.com/kubevirt) | | High | No | ❌ | ❌ | +| sandboxed-containers-operator | OpenShift sandboxed containers Operator | stable | 1.9.0 | | | OpenShift sandboxed containers, based on the Kata Containers open source project, provides an Open Container Initiative (OCI) compliant container runtime using… | [source](https://www.github.com/openshift/sandboxed-containers-operator) | | High | No | ❌ | ❌ | +| odr-cluster-operator | Openshift DR Cluster Operator | stable-4.20 | 4.20.6-rhodf | | | OpenShift DR Cluster is a disaster-recovery orchestrator for stateful applications, that operates from an Advanced Cluster Management (ACM) managed cluster and… | [source](https://github.com/red-hat-storage/ramen) | | | No | ❌ | ❌ | +| odr-hub-operator | Openshift DR Hub Operator | stable-4.20 | 4.20.6-rhodf | | | OpenShift DR Hub is a disaster-recovery orchestrator for stateful applications. | [source](https://github.com/red-hat-storage/ramen) | | | No | ❌ | ❌ | +| ptp-operator | PTP Operator | stable | 4.21.0-202602180447 | | | Precision Time Protocol (PTP) Operator for Openshift ## Introdution PTP Operator manages cluster wide PTP configuration. | [source](https://github.com/k8snetworkplumbingwg/ptp-operator) | | | No | ❌ | ❌ | +| policy-controller-operator | Policy Controller Operator | tech-preview | 0.0.2-techpreview | | | A Helm-managed Operator that installs and maintains the Red Hat Trusted Artifact Signer's (RHTAS) Policy Controller on OpenShift. | [source](https://github.com/securesign/policy-controller-operator) | | | | ❌ | ❌ | +| power-monitoring-operator | Power monitoring for Red Hat OpenShift | tech-preview | 0.5.0 | | | Kepler (Kubernetes-based Efficient Power Level Exporter) is a Prometheus exporter that measures energy consumption metrics at the container, pod, and node leve… | | | | | ❌ | ❌ | +| rhods-prometheus-operator | Prometheus Operator | beta | 4.10.0 | | | The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances. | [source](https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation) | | | No | ❌ | ❌ | +| rhpam-kogito-operator | RHPAM Kogito Operator | 7.x | 7.13.5-4 | | | RHPAM Kogito Operator is designed for deployment and management of Kogito services from source (only on OpenShift) and every piece of infrastructure that the s… | [source](https://github.com/kiegroup/kogito-operator/) | | | No | ❌ | ❌ | +| recipe | Recipe | stable-4.20 | 4.20.6-rhodf | | | Recipe describes a workflow used for capturing or recovering Kubernetes resources. | [source](https://github.com/red-hat-storage/recipe) | | | | ❌ | ❌ | +| rhcl-operator | Red Hat Connectivity Link | stable | 1.3.0 | | | A Kubernetes Operator to manage the lifecycle of the Kuadrant system | [source](https://github.com/Kuadrant/kuadrant-operator) | | | | ❌ | ❌ | +| 3scale-operator | Red Hat Integration - 3scale | threescale-2.13 | 0.10.5 | | | The 3scale Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations. | [source](https://github.com/3scale/3scale-operator) | | | No | ❌ | ❌ | +| apicast-operator | Red Hat Integration - 3scale APIcast gateway | threescale-2.14 | 0.8.1 | | | APIcast is an API gateway to be used together with Red Hat 3scale. | [source](https://github.com/3scale/apicast-operator) | | | No | ❌ | ❌ | +| amq-broker-rhel8 | Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch) | 7.12.x | 7.12.5-opr-1+0.1769103371.p | | | **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. | | | | No | ❌ | ❌ | +| amq-broker-rhel9 | Red Hat Integration - AMQ Broker for RHEL 9 (Multiarch) | 7.13.x | 7.13.3-opr-1+0.1767807057.p | | | **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. | | | | No | ❌ | ❌ | +| amq7-interconnect-operator | Red Hat Integration - AMQ Interconnect | 1.10.x | 1.10.20 | | | AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and… | | | | No | ❌ | ❌ | +| red-hat-camel-k | Red Hat Integration - Camel K | 1.10.x | 1.10.8+0.1733993735.p | | | Red Hat Integration - Camel K ============== **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless super… | [source](https://github.com/apache/camel-k) | | | No | ❌ | ❌ | +| devspaces | Red Hat OpenShift Dev Spaces | stable | 3.26.1 | | | A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development. | [source](https://github.com/redhat-developer/devspaces-images/) | | | No | ❌ | ❌ | +| openshift-pipelines-operator-rh | Red Hat OpenShift Pipelines | latest | 1.21.0 | | Suite | Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev). | [source](https://github.com/openshift-pipelines) | | High | No | ❌ | ❌ | +| serverless-operator | Red Hat OpenShift Serverless | stable | 1.37.1 | OKD Serverless (kNative) | Suite | The Red Hat OpenShift Serverless operator provides a collection of APIs that enables containers, microservices and functions to run "serverless". | [source](https://github.com/openshift-knative/serverless-operator) | | Medium | No | ❌ | ❌ | +| quay-operator | Red Hat Quay | stable-3.16 | 3.16.2 | | | The Red Hat Quay Operator deploys and manages a production-ready [Red Hat Quay](https://www.openshift.com/products/quay) private container registry. | [source](https://github.com/quay/quay-operator) | | | No | ❌ | ❌ | +| quay-bridge-operator | Red Hat Quay Bridge Operator | stable-3.16 | 3.16.2 | | | Enhance OCP using Red Hat Quay container registry | | | | No | ❌ | ❌ | +| container-security-operator | Red Hat Quay Container Security Operator | stable-3.16 | 3.16.2 | | | The Container Security Operator (CSO) brings Quay and Clair metadata to Kubernetes / OpenShift. | [source](https://github.com/quay/container-security-operator) | | | No | ❌ | ❌ | +| skupper-operator | Red Hat Service Interconnect | stable-2 | 2.1.3-rh-1 | | | Red Hat Service Interconnect enables communication between services running in different network locations. | [source](https://github.com/skupperproject/skupper-operator) | | Low | No | ❌ | ❌ | +| skupper-netobs-operator | Red Hat Service Interconnect Network Observer | stable-2 | 2.1.3-rh-1 | | | Red Hat Service Interconnect enables communication between services running in different network locations. | | | | | ❌ | ❌ | +| rhsso-operator | Red Hat Single Sign-On Operator | stable | 7.6.12-opr-007 | | | Used to be it’s own thing, but is now Keycloak | | | | No | ❌ | ❌ | +| rhtas-operator | Red Hat Trusted Artifact Signer | stable | 1.3.2 | | | Red Hat Trusted Artifact Signer enhances software supply chain security by simplifying cryptographic signing and verifying of software artifacts, such as conta… | [source](https://github.com/securesign/secure-sign-operator) | | | | ❌ | ❌ | +| rhtpa-operator | Red Hat Trusted Profile Analyzer | stable-v1.1 | 1.1.1 | | | Red Hat Trusted Profile Analyzer (RHTPA) provides a single source of truth for your software inventory across all your environments. | [source](https://github.com/trustification/trusted-profile-analyzer-operator) | | | | ❌ | ❌ | +| service-registry-operator | Red Hat build of Apicurio Registry | 2.x | 2.6.13-r2+0.1770021374.p | | | Red Hat build of Apicurio Registry Red Hat build of Apicurio Registry stores and retrieves API designs and event schemas, and gives you control of their evolut… | [source](https://github.com/Apicurio/apicurio-registry/) | | | | ❌ | ❌ | +| apicurio-registry-3 | Red Hat build of Apicurio Registry 3 | 3.x | 3.1.6-r2 | | | Red Hat build of Apicurio Registry 3 Apicurio Registry stores and retrieves API designs and event schemas, and gives you control of their evolution. | [source](https://github.com/Apicurio/apicurio-registry/) | | | | ❌ | ❌ | +| cryostat-operator | Red Hat build of Cryostat | stable | 4.1.1 | | | The Red Hat build of Cryostat provides a cloud-based solution for interacting with the JDK Flight Recorder already present in OpenJDK 11+ JVMs. | [source](https://github.com/cryostatio/cryostat) | | | No | ❌ | ❌ | +| rhbk-operator | Red Hat build of Keycloak Operator | stable-v26.4 | 26.4.9-opr.1 | | | A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak. | | | | | ❌ | ❌ | +| kueue-operator | Red Hat build of Kueue | stable-v1.2 | 1.2.0 | | | Red Hat build of Kueue is a collection of APIs, based on the [Kueue](https://kueue.sigs.k8s.io/docs/) open source project, that extends Kubernetes to manage ac… | [source](https://github.com/openshift/kueue-operator) | | | | ❌ | ❌ | +| leader-worker-set | Red Hat build of Leader Worker Set | stable-v1.0 | 1.0.0 | | | Red Hat build of Leader Worker Set is based on the [LWS](https://lws.sigs.k8s.io/docs/) open source project. | [source](https://github.com/openshift/kubernetes-sigs-lws) | | | | ❌ | ❌ | +| opentelemetry-product | Red Hat build of OpenTelemetry | stable | 0.144.0-1 | | | Red Hat build of OpenTelemetry is a collection of tools, APIs, and SDKs. | [source](https://github.com/open-telemetry/opentelemetry-operator) | | | | ❌ | ❌ | +| rook-ceph-operator | Rook-Ceph | stable-4.20 | 4.20.6-rhodf | | | The Rook-Ceph storage operator packages, deploys, manages, upgrades and scales Ceph storage for providing persistent storage to infrastructure services (Loggin… | [source](https://github.com/red-hat-storage/rook) | | | | ❌ | ❌ | +| run-once-duration-override-operator | Run Once Duration Override Operator | stable | 1.4.0 | | | | [source](https://github.com/openshift/run-once-duration-override) | | | No | ❌ | ❌ | +| runtimes-inventory-operator | Runtimes Inventory Operator | stable | 1.0.0 | | | Operator support for Runtimes Inventory | [source](https://github.com/RedHatInsights/runtimes-inventory-operator) | | | | ❌ | ❌ | +| storage-based-remediation | SBD | candidate | 0.2.0 | | | TBD | | | | | ❌ | ❌ | +| openshift-secondary-scheduler-operator | Secondary Scheduler Operator for Red Hat OpenShift | stable | 1.5.1 | | | The Secondary Scheduler Operator provides the ability to use a customized scheduler image that was developed using the scheduler plugin framework as a secondar… | [source](https://github.com/openshift/secondary-scheduler-operator) | | | No | ❌ | ❌ | +| secrets-store-csi-driver-operator | Secrets Store CSI Driver Operator | stable | 4.21.0-202602091142 | | | Operator that installs and configures the CSI driver for Secrets Store. | [source](https://github.com/openshift/secrets-store-csi-driver-operator) | | | No | ❌ | ❌ | +| security-profiles-operator | Security Profiles Operator | release-alpha-rhel-8 | 0.10.0 | | | SPO is an operator which aims to make it easier for users to use SELinux, seccomp and AppArmor in Kubernetes clusters | [source](https://github.com/openshift/security-profiles-operator) | | | No | ❌ | ❌ | +| self-node-remediation | Self Node Remediation Operator | stable | 0.12.0 | | | This self node remediation operator is using an alternate mechanism for a node in a cluster to detect its health status and take actions to remediate itself in… | [source](https://github.com/medik8s/self-node-remediation) | | High | No | ❌ | ❌ | +| rh-service-binding-operator | Service Binding Operator | stable | 1.3.3 | | | The Service Binding Operator manages the data plane for applications and backing services. | | | | No | ❌ | ❌ | +| amq-streams | Streams for Apache Kafka | stable | 3.1.0-11 | | | **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. | | | | | ❌ | ❌ | +| amq-streams-console | Streams for Apache Kafka Console | stable | 3.1.0-8 | | | The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster. | | | | | ❌ | ❌ | +| amq-streams-proxy | Streams for Apache Kafka Proxy | stable | 3.1.0-12 | | | Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware proxy. | | | | | ❌ | ❌ | +| tempo-product | Tempo Operator | stable | 0.20.0-1 | | | Red Hat OpenShift distributed tracing platform based on Tempo. | [source](https://github.com/grafana/tempo-operator) | | Medium | No | ❌ | ❌ | +| topology-aware-lifecycle-manager | Topology Aware Lifecycle Manager | stable | 4.21.0 | | | Topology Aware Lifecycle Manager is an operator that facilitates platform and operator upgrades of group of clusters | | | | No | ❌ | ❌ | +| vertical-pod-autoscaler | Vertical Pod Autoscaler Operator | stable | 4.21.0-202602091142 | | | An operator to run the OpenShift Vertical Pod Autoscaler. | | | | | ❌ | ❌ | +| volsync-product | VolSync | stable | 0.14.1 | | | Asynchronous volume replication for Kubernetes CSI storage VolSync is a Kubernetes operator that performs asynchronous replication of persistent volumes within… | [source](https://github.com/backube/volsync) | | | No | ❌ | ❌ | +| jws-operator | WebServer | alpha | 2.3.0 | | | WebServer operator can manage JBoss Web Server images. | | | | | ❌ | ❌ | +| windows-machine-config-operator | Windows Machine Config Operator | stable | 10.21.0 | | | Introduction The Windows Machine Config Operator configures Windows Machines into nodes, enabling Windows container workloads to be run on OCP clusters. | | | | | ❌ | ❌ | +| openshift-zero-trust-workload-identity-manager | Zero Trust Workload Identity Manager | stable-v1 | 1.0.0 | | | The Zero Trust Workload Identity Manager is an Openshift Day-2 Operator designed to automate the setup and management of SPIFFE/SPIRE components (like spire-se… | [source](https://github.com/openshift/zero-trust-workload-identity-manager/blob/master/README.md) | | | | ❌ | ❌ | +| o-cloud-manager | o-cloud manager | stable | 4.21.2 | | | O-cloud manager operator | | | | | ❌ | ❌ | +| support-log-gather-operator | support log gather | tech-preview | 4.20.0 | | | An operator that collects logs in Red Hat OpenShift and sends them to Red Hat Support for troubleshooting. | [source](https://github.com/openshift/must-gather-operator) | | | | ❌ | ❌ | diff --git a/docs/operators/okderators/index.md b/docs/operators/okderators/index.md new file mode 100644 index 0000000..637c09c --- /dev/null +++ b/docs/operators/okderators/index.md @@ -0,0 +1,53 @@ +# OKDerators + +:::warning +OKDerators is a WIP project that is in active development. +Use with caution! We are looking for contributors! +::: + + +## What are OKDerators? + +OKDerators are a curated and opionated catalog of operators for deployment onto OKD clusters. + +The Cloud Native landscape is very large with many options for solving similar problems. This is good for the health of the ecosystem but as a cluster administrator, integrating these solutions into a cohesive application platform for your developers can be hard! + +An OKDerator makes the choice for you and provides integrations into OKD tooling (web console, compatibility with other OKDerators etc) by specially packaging open source operators with some additional patches or features. + +For example, OKD Storage is built on the `rook-ceph` operator. Packaged as an OKDerator it also includes console plugins and playbooks for dealing with the physical nodes and storage provisioning. + +Currently, the choice of what operators are included and packaged as an OKDerator is mainly driven by what's included in RedHat's OpenShift catalogs, and we will use their "mid-stream" versions of the open source project. + +## Installation + +To install the OKDerators catalog, you can run the following script. This will create or update the existing OKDerators +CatalogSource in your cluster, which will allow you to install operators from the OKDerators catalog via the OperatorHub UI or CLI. +To run this command, you will need `oc` or `kubectl` with cluster-admin privileges. + +```bash +curl -s https://raw.githubusercontent.com/okd-project/okderators-catalog-index/refs/heads/release-4.20/hack/install-catalog.sh | bash +``` +:::info +Update the branch to your relevant version, this example is for 4.20 with `release-4.20` +::: + + +If successful, the command will return: + +``` +catalogsource.operators.coreos.com/okderators created +``` + +## Compatibility and Support + +OKDerators are built and tested against the latest OKD releases. Older versions of the OKDerators catalog are not +maintained once a new version of OKD is released. + + +## I think Operator X should be used to solve Y instead of Operator Z + +Our choice of operators is currently driven by what's included in the RedHat OpenShift first-party catalog. Over time we may diverge or have an additional options (e.g. via an additional "extras" CatalogSource) but at the time of writing we are not sure what that will look like. + +## Links +- [Catalog repository](https://github.com/okd-project/okderators-catalog-index) +- [Build pipelines repository](https://github.com/okd-project/okd-operator-pipelines) diff --git a/docs/operators/operators.md b/docs/operators/operators.md deleted file mode 100644 index 040e52b..0000000 --- a/docs/operators/operators.md +++ /dev/null @@ -1,30 +0,0 @@ -# Operator Hub Catalogs - - - -!!!Warning - This section is under construction - -OKD contains many operators which deliver the base platform, however there is also additional capabilities delivered as operators available via the Operator Hub. - -The operator hub story for OKD isn't ideal currently (as at OKD 4.10) as OKD shares source with OpenShift, the commercial sibling to OKD. OpenShift has additional operator hub catalogs provided by Red Hat, which deliver additional capabilities as part of the supported OpenShift product. These additional capabilities are not currently provided to OKD. - -OpenShift and OKD share a community catalog of operators, which are a subset of the operators available in the [OperatorHub](https://operatorhub.io). The operators in the community catalog should run on OKD/OpenShift and will include any additional configuration, such as security context configuration. - -However, where an operator in the community catalog has a dependency that Red Hat supports and delivers as part of the additional OpenShift operator catalog, then the community catalog operator will specify the dependency from the supported OpenShift catalog. This results in missing dependency errors when attempting to install on OKD. - -!!!Question - - will the proposed OKD catalog solve all the dependency issues in the community catalog? - - what is the timeline for the OKD catalog? - -!!!Todo - Some useful repo links - do we need to create instructions for specific operators? - - - Community operator source - - [docs](https://redhat-openshift-ecosystem.github.io/community-operators-prod/) - - [repo](https://github.com/redhat-openshift-ecosystem/community-operators-prod) - - OKD operators : [repo](https://github.com/redhat-openshift-ecosystem/okd-operators) - - Marketplace operator : [repo](https://github.com/operator-framework/operator-marketplace) - - Devworkspace operator : [repo](https://github.com/devfile/devworkspace-operator) - - GitOps operator : [repo](https://github.com/redhat-developer/gitops-operator) - - devspaces (crw) : [public repo](https://github.com/redhat-developer/devspaces)