1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-05 12:46:18 +01:00

OSDOCS-3991: Port Operators book to OSD/ROSA

This commit is contained in:
Ben Hardesty
2023-06-12 09:50:04 -04:00
committed by openshift-cherrypick-robot
parent 532c9513ff
commit 3c94de79cc
96 changed files with 1244 additions and 156 deletions

View File

@@ -9,7 +9,14 @@ include::_attributes/common-attributes.adoc[]
toc::[]
Using Operator Lifecycle Manager (OLM), cluster administrators can install OLM-based Operators to an {product-title} cluster.
Using Operator Lifecycle Manager (OLM),
ifndef::openshift-dedicated,openshift-rosa[]
cluster administrators
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
administrators with the `dedicated-admin` role
endif::openshift-dedicated,openshift-rosa[]
can install OLM-based Operators to an {product-title} cluster.
[NOTE]
====
@@ -32,7 +39,7 @@ include::modules/olm-installing-operators-from-operatorhub.adoc[leveloffset=+1]
* xref:../../operators/understanding/olm-understanding-operatorhub.adoc#olm-understanding-operatorhub[Understanding OperatorHub]
include::modules/olm-installing-from-operatorhub-using-web-console.adoc[leveloffset=+1]
ifdef::openshift-enterprise,openshift-webscale,openshift-origin[]
ifdef::openshift-enterprise,openshift-webscale,openshift-origin,openshift-dedicated,openshift-rosa[]
include::modules/olm-installing-from-operatorhub-using-cli.adoc[leveloffset=+1]
[role="_additional-resources"]
@@ -82,20 +89,28 @@ When you initiate the Operator installation, if the Operator has dependencies, t
include::modules/olm-pod-placement.adoc[leveloffset=+1]
// TODO: Uncondition these xrefs when the Nodes content is ported to OSD/ROSA.
ifndef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* Adding taints and tolerations xref:../../nodes/scheduling/nodes-scheduler-taints-tolerations.adoc#nodes-scheduler-taints-tolerations-adding_nodes-scheduler-taints-tolerations[manually to nodes] or xref:../../nodes/scheduling/nodes-scheduler-taints-tolerations.adoc#nodes-scheduler-taints-tolerations-adding-machineset_nodes-scheduler-taints-tolerations[with compute machine sets]
* xref:../../nodes/scheduling/nodes-scheduler-node-selectors.adoc#nodes-scheduler-node-selectors-project_nodes-scheduler-node-selectors[Creating project-wide node selectors]
* xref:../../nodes/scheduling/nodes-scheduler-taints-tolerations.adoc#nodes-scheduler-taints-tolerations-projects_nodes-scheduler-taints-tolerations[Creating a project with a node selector and toleration]
endif::openshift-dedicated,openshift-rosa[]
endif::[]
include::modules/olm-overriding-operator-pod-affinity.adoc[leveloffset=+1]
// TODO: Uncondition these xrefs when the Nodes content is ported to OSD/ROSA.
ifndef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* xref:../../nodes/scheduling/nodes-scheduler-pod-affinity.adoc#nodes-scheduler-pod-affinity-about_nodes-scheduler-pod-affinity[Understanding pod affinity]
* xref:../../nodes/scheduling/nodes-scheduler-node-affinity.adoc#nodes-scheduler-node-affinity-about_nodes-scheduler-node-affinity[Understanding node affinity]
* xref:../../nodes/nodes/nodes-nodes-working.adoc#nodes-nodes-working-updating_nodes-nodes-working[Understanding how to update labels on nodes].
endif::openshift-dedicated,openshift-rosa[]
// This xref points to a topic not currently included in the OSD and ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../nodes/nodes/nodes-nodes-working.adoc#nodes-nodes-working-updating_nodes-nodes-working[Understanding how to update labels on nodes]
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -11,8 +11,19 @@ If a global proxy is configured on the {product-title} cluster, Operator Lifecyc
[role="_additional-resources"]
.Additional resources
// Configuring the cluster-wide proxy is a different topic in OSD/ROSA.
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../networking/enable-cluster-wide-proxy.adoc#enable-cluster-wide-proxy[Configuring the cluster-wide proxy]
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
* xref:../../networking/configuring-cluster-wide-proxy.adoc[Configuring a cluster-wide proxy]
endif::openshift-dedicated,openshift-rosa[]
// This xref points to a topic that is not currently included in the OSD and ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../networking/configuring-a-custom-pki.adoc#configuring-a-custom-pki[Configuring a custom PKI] (custom CA certificate)
endif::openshift-dedicated,openshift-rosa[]
* Developing Operators that support proxy settings for xref:../../operators/operator_sdk/golang/osdk-golang-tutorial.adoc#osdk-run-proxy_osdk-golang-tutorial[Go], xref:../../operators/operator_sdk/ansible/osdk-ansible-tutorial.adoc#osdk-run-proxy_osdk-ansible-tutorial[Ansible], and xref:../../operators/operator_sdk/helm/osdk-helm-tutorial.adoc#osdk-run-proxy_osdk-helm-tutorial[Helm]

View File

@@ -33,26 +33,36 @@ include::modules/disabling-catalogsource-objects.adoc[leveloffset=+1]
* xref:../../operators/understanding/olm-understanding-operatorhub.adoc#olm-operatorhub-arch-operatorhub_crd_olm-understanding-operatorhub[OperatorHub custom resource]
* xref:../../operators/admin/olm-restricted-networks.adoc#olm-restricted-networks-operatorhub_olm-restricted-networks[Disabling the default OperatorHub catalog sources]
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../operators/admin/olm-restricted-networks.html#olm-restricted-networks-operatorhub_olm-restricted-networks[Disabling the default OperatorHub catalog sources]
endif::openshift-dedicated,openshift-rosa[]
include::modules/olm-node-selector.adoc[leveloffset=+1]
// TODO: Uncondition this xref when the Nodes content is ported to OSD/ROSA.
ifndef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* xref:../../nodes/scheduling/nodes-scheduler-node-selectors.adoc#nodes-scheduler-node-selectors[Placing pods on specific nodes using node selectors]
endif::openshift-dedicated,openshift-rosa[]
include::modules/olm-priority-class-name.adoc[leveloffset=+1]
// TODO: Uncondition this xref when the Nodes content is ported to OSD/ROSA.
ifndef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* xref:../../nodes/pods/nodes-pods-priority.adoc#admin-guide-priority-preemption-priority-class_nodes-pods-priority[Pod priority classes]
endif::openshift-dedicated,openshift-rosa[]
include::modules/olm-tolerations.adoc[leveloffset=+1]
// TODO: Uncondition this xref with the Nodes content is ported to OSD/ROSA.
ifndef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* xref:../../nodes/scheduling/nodes-scheduler-taints-tolerations.adoc#nodes-scheduler-taints-tolerations-about_nodes-scheduler-taints-tolerations[Understanding taints and tolerations]
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -10,7 +10,11 @@ The following describes how to delete, or uninstall, Operators that were previou
[IMPORTANT]
====
You must successfully and completely uninstall an Operator prior to attempting to reinstall the same Operator. Failure to fully uninstall the Operator properly can leave resources, such as a project or namespace, stuck in a "Terminating" state and cause "error resolving resource" messages to be observed when trying to reinstall the Operator. For more information, see xref:../../support/troubleshooting/troubleshooting-operator-issues.adoc#olm-reinstall_troubleshooting-operator-issues[Reinstalling Operators after failed uninstallation].
You must successfully and completely uninstall an Operator prior to attempting to reinstall the same Operator. Failure to fully uninstall the Operator properly can leave resources, such as a project or namespace, stuck in a "Terminating" state and cause "error resolving resource" messages to be observed when trying to reinstall the Operator.
// TODO: Uncondition this xref when the Support content is ported to OSD/ROSA.
ifndef::openshift-dedicated,openshift-rosa[]
For more information, see xref:../../support/troubleshooting/troubleshooting-operator-issues.adoc#olm-reinstall_troubleshooting-operator-issues[Reinstalling Operators after failed uninstallation].
endif::openshift-dedicated,openshift-rosa[]
====
include::modules/olm-deleting-operators-from-a-cluster-using-web-console.adoc[leveloffset=+1]

View File

@@ -6,7 +6,13 @@ include::_attributes/common-attributes.adoc[]
toc::[]
Cluster administrators and Operator catalog maintainers can create and manage custom catalogs packaged using the xref:../../operators/understanding/olm-packaging-format.adoc#olm-bundle-format_olm-packaging-format[bundle format] on Operator Lifecycle Manager (OLM) in {product-title}.
ifndef::openshift-dedicated,openshift-rosa[]
Cluster administrators
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
Administrators with the `dedicated-admin` role
endif::openshift-dedicated,openshift-rosa[]
and Operator catalog maintainers can create and manage custom catalogs packaged using the xref:../../operators/understanding/olm-packaging-format.adoc#olm-bundle-format_olm-packaging-format[bundle format] on Operator Lifecycle Manager (OLM) in {product-title}.
[IMPORTANT]
====
@@ -23,7 +29,7 @@ If your cluster is using custom catalogs, see xref:../../operators/operator_sdk/
[id="olm-managing-custom-catalogs-bundle-format-prereqs"]
== Prerequisites
* Install the xref:../../cli_reference/opm/cli-opm-install.adoc#cli-opm-install[`opm` CLI].
* You have installed the xref:../../cli_reference/opm/cli-opm-install.adoc#cli-opm-install[`opm` CLI].
[id="olm-managing-custom-catalogs-fb"]
== File-based catalogs
@@ -36,7 +42,13 @@ As of {product-title} 4.11, the default Red Hat-provided Operator catalog releas
The `opm` subcommands, flags, and functionality related to the SQLite database format are also deprecated and will be removed in a future release. The features are still supported and must be used for catalogs that use the deprecated SQLite database format.
Many of the `opm` subcommands and flags for working with the SQLite database format, such as `opm index prune`, do not work with the file-based catalog format. For more information about working with file-based catalogs, see xref:../../operators/understanding/olm-packaging-format.adoc#olm-file-based-catalogs_olm-packaging-format[Operator Framework packaging format] and xref:../../installing/disconnected_install/installing-mirroring-disconnected.adoc#installing-mirroring-disconnected[Mirroring images for a disconnected installation using the oc-mirror plugin].
Many of the `opm` subcommands and flags for working with the SQLite database format, such as `opm index prune`, do not work with the file-based catalog format.
ifndef::openshift-dedicated,openshift-rosa[]
For more information about working with file-based catalogs, see xref:../../operators/understanding/olm-packaging-format.adoc#olm-file-based-catalogs_olm-packaging-format[Operator Framework packaging format] and xref:../../installing/disconnected_install/installing-mirroring-disconnected.adoc#installing-mirroring-disconnected[Mirroring images for a disconnected installation using the oc-mirror plugin].
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
For more information about working with file-based catalogs, see xref:../../operators/understanding/olm-packaging-format.adoc#olm-file-based-catalogs_olm-packaging-format[Operator Framework packaging format].
endif::openshift-dedicated,openshift-rosa[]
====
include::modules/olm-creating-fb-catalog-image.adoc[leveloffset=+2]
@@ -46,11 +58,13 @@ include::modules/olm-creating-fb-catalog-image.adoc[leveloffset=+2]
* xref:../../cli_reference/opm/cli-opm-ref.adoc#cli-opm-ref[`opm` CLI reference]
include::modules/olm-filtering-fbc.adoc[leveloffset=+2]
ifndef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* xref:../../installing/disconnected_install/installing-mirroring-disconnected.adoc#updating-mirror-registry-content[Mirroring images for a disconnected installation using the oc-mirror plugin -> Keeping your mirror registry content updated]
* xref:../../operators/admin/olm-restricted-networks.adoc#olm-creating-catalog-from-index_olm-restricted-networks[Adding a catalog source to a cluster]
endif::openshift-dedicated,openshift-rosa[]
[id="olm-managing-custom-catalogs-sqlite"]
== SQLite-based catalogs
@@ -64,10 +78,13 @@ include::modules/olm-pruning-index-image.adoc[leveloffset=+2]
include::modules/olm-catalog-source-and-psa.adoc[leveloffset=+1]
// This xref points to a topic that is not currently included in the OSD and ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* xref:../../authentication/understanding-and-managing-pod-security-admission.adoc#understanding-and-managing-pod-security-admission[Understanding and managing pod security admission]
endif::openshift-dedicated,openshift-rosa[]
include::modules/olm-migrating-sqlite-catalog-to-fbc.adoc[leveloffset=+2]
@@ -85,9 +102,14 @@ include::modules/olm-creating-catalog-from-index.adoc[leveloffset=+1]
.Additional resources
* xref:../../operators/understanding/olm/olm-understanding-olm.adoc#olm-catalogsource_olm-understanding-olm[Operator Lifecycle Manager concepts and resources -> Catalog source]
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../operators/admin/olm-managing-custom-catalogs.adoc#olm-accessing-images-private-registries_olm-managing-custom-catalogs[Accessing images for Operators from private registries]
// This xref may be relevant to OSD/ROSA, but the topic is not currently included in the OSD and ROSA docs.
* xref:../../openshift_images/managing_images/image-pull-policy.adoc#image-pull-policy[Image pull policy]
endif::openshift-dedicated,openshift-rosa[]
// Exclude from OSD/ROSA - dedicated-admins can't create the necessary secrets to do this procedure.
ifndef::openshift-dedicated,openshift-rosa[]
include::modules/olm-accessing-images-private-registries.adoc[leveloffset=+1]
[role="_additional-resources"]
@@ -96,6 +118,17 @@ include::modules/olm-accessing-images-private-registries.adoc[leveloffset=+1]
* See xref:../../cicd/builds/creating-build-inputs.adoc#builds-secrets-overview_creating-build-inputs[What is a secret?] for more information on the types of secrets, including those used for registry credentials.
* See xref:../../openshift_images/managing_images/using-image-pull-secrets.adoc#images-update-global-pull-secret_using-image-pull-secrets[Updating the global cluster pull secret] for more details on the impact of changing this secret.
* See xref:../../openshift_images/managing_images/using-image-pull-secrets.adoc#images-allow-pods-to-reference-images-from-secure-registries_using-image-pull-secrets[Allowing pods to reference images from other secured registries] for more details on linking pull secrets to service accounts per namespace.
endif::openshift-dedicated,openshift-rosa[]
// Exclude from OSD/ROSA - dedicated-admins can't do this procedure.
ifndef::openshift-dedicated,openshift-rosa[]
include::modules/olm-restricted-networks-configuring-operatorhub.adoc[leveloffset=+1]
endif::openshift-dedicated,openshift-rosa[]
// Removing custom catalogs can be done as a dedicated-admin, but the steps are different.
ifndef::openshift-dedicated,openshift-rosa[]
include::modules/olm-removing-catalogs.adoc[leveloffset=+1]
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
include::modules/sd-olm-removing-catalogs.adoc[leveloffset=+1]
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -6,7 +6,12 @@ include::_attributes/common-attributes.adoc[]
toc::[]
ifndef::openshift-dedicated,openshift-rosa[]
As a cluster administrator, you can manage Operator conditions by using Operator Lifecycle Manager (OLM).
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
As an administrator with the `dedicated-admin` role, you can manage Operator conditions by using Operator Lifecycle Manager (OLM).
endif::openshift-dedicated,openshift-rosa[]
include::modules/olm-overriding-operatorconditions.adoc[leveloffset=+1]
include::modules/olm-updating-use-operatorconditions.adoc[leveloffset=+1]

View File

@@ -23,4 +23,6 @@ include::modules/olm-cs-status-cli.adoc[leveloffset=+1]
* xref:../../operators/understanding/olm/olm-understanding-olm.adoc#olm-catalogsource_olm-understanding-olm[Operator Lifecycle Manager concepts and resources -> Catalog source]
* gRPC documentation: link:https://grpc.github.io/grpc/core/md_doc_connectivity-semantics-and-api.html[States of Connectivity]
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../operators/admin/olm-managing-custom-catalogs.adoc#olm-accessing-images-private-registries_olm-managing-custom-catalogs[Accessing images for Operators from private registries]
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -6,7 +6,14 @@ include::_attributes/common-attributes.adoc[]
toc::[]
As a cluster administrator, you can update Operators that have been previously installed using Operator Lifecycle Manager (OLM) on your {product-title} cluster.
As
ifndef::openshift-dedicated,openshift-rosa[]
a cluster administrator,
endif::[]
ifdef::openshift-dedicated,openshift-rosa[]
an administrator with the `dedicated-admin` role,
endif::[]
you can update Operators that have been previously installed using Operator Lifecycle Manager (OLM) on your {product-title} cluster.
[NOTE]
====

View File

@@ -8,9 +8,21 @@ toc::[]
include::modules/operators-overview.adoc[leveloffset=+1]
With Operators, you can create applications to monitor the running services in the cluster.
Operators are designed specifically for your applications. Operators implement and automate the common Day 1 operations such as installation and configuration as well as Day 2 operations such as autoscaling up and down and creating backups. All these activities are in a piece of software running inside your cluster.
With Operators, you can create applications to monitor the running services in the cluster. Operators are designed specifically for your applications. Operators implement and automate the common Day 1 operations such as installation and configuration as well as Day 2 operations such as autoscaling up and down and creating backups. All these activities are in a piece of software running inside your cluster.
// Include Cluster Operators and Add-on Operators for OSD/ROSA. These modules are in architecture/control-place.adoc, but this assembly is not currently included in the OSD/ROSA docs.
ifdef::openshift-dedicated,openshift-rosa[]
== Operators in {product-title}
include::modules/arch-cluster-operators.adoc[leveloffset=+2]
include::modules/arch-olm-operators.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
* For more details on running add-on Operators in {product-title}, see the _Operators_ guide sections on xref:../operators/understanding/olm/olm-understanding-olm.adoc#olm-understanding-olm[Operator Lifecycle Manager (OLM)] and xref:../operators/understanding/olm-understanding-operatorhub.adoc#olm-understanding-operatorhub[OperatorHub].
* For more details on the Operator SDK, see xref:../operators/operator_sdk/osdk-about.adoc#osdk-about[Developing Operators].
endif::openshift-dedicated,openshift-rosa[]
[id="operators-overview-developer-tasks"]
== For developers
@@ -18,31 +30,58 @@ Operators are designed specifically for your applications. Operators implement a
As a developer, you can perform the following Operator tasks:
** xref:../operators/operator_sdk/osdk-installing-cli.adoc#osdk-installing-cli[Install Operator SDK CLI].
// The Operator quickstarts aren't published for OSD/ROSA, so for OSD/ROSA, these xrefs point to the tutorials instead.
ifndef::openshift-dedicated,openshift-rosa[]
** Create xref:../operators/operator_sdk/golang/osdk-golang-quickstart.adoc#osdk-golang-quickstart[Go-based Operators], xref:../operators/operator_sdk/ansible/osdk-ansible-quickstart.adoc#osdk-ansible-quickstart[Ansible-based Operators], xref:../operators/operator_sdk/java/osdk-java-quickstart.adoc#osdk-java-quickstart[Java-based Operators], and xref:../operators/operator_sdk/helm/osdk-helm-quickstart.adoc#osdk-helm-quickstart[Helm-based Operators].
** xref:../operators/operator_sdk/osdk-about.adoc#osdk-about[Use Operator SDK to build,test, and deploy an Operator].
endif::openshift-dedicated,openshift-rosa[]
// TODO: When the Java-based Operators is GA, it can be added to the list below for OSD/ROSA.
ifdef::openshift-dedicated,openshift-rosa[]
** Create xref:../operators/operator_sdk/golang/osdk-golang-tutorial.adoc#osdk-golang-tutorial[Go-based Operators], xref:../operators/operator_sdk/ansible/osdk-ansible-tutorial.adoc#osdk-ansible-tutorial[Ansible-based Operators], and xref:../operators/operator_sdk/helm/osdk-helm-tutorial.adoc#osdk-helm-tutorial[Helm-based Operators].
endif::openshift-dedicated,openshift-rosa[]
** xref:../operators/operator_sdk/osdk-about.adoc#osdk-about[Use Operator SDK to build, test, and deploy an Operator].
ifndef::openshift-dedicated,openshift-rosa[]
** xref:../operators/user/olm-installing-operators-in-namespace.adoc#olm-installing-operators-in-namespace[Install and subscribe an Operator to your namespace].
endif::openshift-dedicated,openshift-rosa[]
** xref:../operators/user/olm-creating-apps-from-installed-operators.adoc#olm-creating-apps-from-installed-operators[Create an application from an installed Operator through the web console].
// This xref could be relevant for OSD/ROSA, but the target doesn't currently exist in the OSD/ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* xref:../machine_management/deleting-machine.adoc#machine-lifecycle-hook-deletion-uses_deleting-machine[Machine deletion lifecycle hook examples for Operator developers]
endif::openshift-dedicated,openshift-rosa[]
[id="operators-overview-administrator-tasks"]
== For administrators
ifndef::openshift-dedicated,openshift-rosa[]
As a cluster administrator, you can perform the following Operator tasks:
endif::openshift-dedicated,openshift-rosa[]
** xref:../operators/admin/olm-managing-custom-catalogs.adoc#olm-managing-custom-catalogs[Manage custom catalogs]
** xref:../operators/admin/olm-creating-policy.adoc#olm-creating-policy[Allow non-cluster administrators to install Operators]
** xref:../operators/user/olm-installing-operators-in-namespace.adoc#olm-installing-operators-in-namespace[Install an Operator from OperatorHub]
ifdef::openshift-dedicated,openshift-rosa[]
As an administrator with the `dedicated-admin` role, you can perform the following Operator tasks:
endif::openshift-dedicated,openshift-rosa[]
** xref:../operators/admin/olm-managing-custom-catalogs.adoc#olm-managing-custom-catalogs[Manage custom catalogs].
ifndef::openshift-dedicated,openshift-rosa[]
** xref:../operators/admin/olm-creating-policy.adoc#olm-creating-policy[Allow non-cluster administrators to install Operators].
endif::openshift-dedicated,openshift-rosa[]
ifndef::openshift-dedicated,openshift-rosa[]
** xref:../operators/user/olm-installing-operators-in-namespace.adoc#olm-installing-operators-in-namespace[Install an Operator from OperatorHub].
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
** xref:../operators/admin/olm-adding-operators-to-cluster.adoc#olm-installing-operators-from-operatorhub_olm-adding-operators-to-a-cluster[Install an Operator from OperatorHub].
endif::openshift-dedicated,openshift-rosa[]
** xref:../operators/admin/olm-status.adoc#olm-status[View Operator status].
** xref:../operators/admin/olm-managing-operatorconditions.adoc#olm-managing-operatorconditions[Manage Operator conditions]
** xref:../operators/admin/olm-upgrading-operators.adoc#olm-upgrading-operators[Upgrade installed Operators]
** xref:../operators/admin/olm-deleting-operators-from-cluster.adoc#olm-deleting-operators-from-a-cluster[Delete installed Operators]
** xref:../operators/admin/olm-configuring-proxy-support.adoc#olm-configuring-proxy-support[Configure proxy support]
** xref:../operators/admin/olm-restricted-networks.adoc#olm-restricted-networks[Use Operator Lifecycle Manager on restricted networks]
** xref:../operators/admin/olm-managing-operatorconditions.adoc#olm-managing-operatorconditions[Manage Operator conditions].
** xref:../operators/admin/olm-upgrading-operators.adoc#olm-upgrading-operators[Upgrade installed Operators].
** xref:../operators/admin/olm-deleting-operators-from-cluster.adoc#olm-deleting-operators-from-a-cluster[Delete installed Operators].
** xref:../operators/admin/olm-configuring-proxy-support.adoc#olm-configuring-proxy-support[Configure proxy support].
ifndef::openshift-dedicated,openshift-rosa[]
** xref:../operators/admin/olm-restricted-networks.adoc#olm-restricted-networks[Use Operator Lifecycle Manager on restricted networks].
To know all about the cluster Operators that Red Hat provides, see xref:../operators/operator-reference.adoc#cluster-operators-ref[Cluster Operators reference].
endif::openshift-dedicated,openshift-rosa[]
[id="operators-overview-next-steps"]
== Next steps

View File

@@ -24,20 +24,24 @@ include::modules/cluster-bare-metal-operator.adoc[leveloffset=+1]
* xref:../installing/cluster-capabilities.adoc#cluster-bare-metal-operator_cluster-capabilities[Bare-metal capability]
include::modules/baremetal-event-relay.adoc[leveloffset=+1]
include::modules/cloud-credential-operator.adoc[leveloffset=+1]
[role="_additional-resources"]
[discrete]
[id="additional-resources_cluster-op-ref-cco"]
=== Additional resources
* xref:../authentication/managing_cloud_provider_credentials/about-cloud-credential-operator.adoc#about-cloud-credential-operator[About the Cloud Credential Operator]
* xref:../rest_api/security_apis/credentialsrequest-cloudcredential-openshift-io-v1.adoc#credentialsrequest-cloudcredential-openshift-io-v1[`CredentialsRequest` custom resource]
include::modules/cluster-authentication-operator.adoc[leveloffset=+1]
include::modules/cluster-autoscaler-operator.adoc[leveloffset=+1]
include::modules/cluster-cloud-controller-manager-operator.adoc[leveloffset=+1]
include::modules/cluster-capi-operator.adoc[leveloffset=+1]
include::modules/cluster-config-operator.adoc[leveloffset=+1]
include::modules/cluster-csi-snapshot-controller-operator.adoc[leveloffset=+1]
@@ -47,9 +51,13 @@ include::modules/cluster-csi-snapshot-controller-operator.adoc[leveloffset=+1]
* xref:../installing/cluster-capabilities.adoc#cluster-csi-snapshot-controller-operator_cluster-capabilities[CSI snapshot controller capability]
include::modules/cluster-image-registry-operator.adoc[leveloffset=+1]
include::modules/cluster-machine-approver-operator.adoc[leveloffset=+1]
include::modules/cluster-monitoring-operator.adoc[leveloffset=+1]
include::modules/cluster-network-operator.adoc[leveloffset=+1]
include::modules/cluster-samples-operator.adoc[leveloffset=+1]
[role="_additional-resources"]
@@ -64,6 +72,7 @@ include::modules/cluster-storage-operator.adoc[leveloffset=+1]
* xref:../installing/cluster-capabilities.adoc#cluster-storage-operator_cluster-capabilities[Storage capability]
include::modules/cluster-version-operator.adoc[leveloffset=+1]
include::modules/console-operator.adoc[leveloffset=+1]
[role="_additional-resources"]
@@ -81,27 +90,34 @@ include::modules/control-plane-machine-set-operator.adoc[leveloffset=+1]
* xref:../rest_api/machine_apis/controlplanemachineset-machine-openshift-io-v1.adoc#controlplanemachineset-machine-openshift-io-v1[`ControlPlaneMachineSet` custom resource]
include::modules/cluster-dns-operator.adoc[leveloffset=+1]
include::modules/etcd-operator.adoc[leveloffset=+1]
include::modules/ingress-operator.adoc[leveloffset=+1]
include::modules/insights-operator.adoc[leveloffset=+1]
[role="_additional-resources"]
.Additional resources
* xref:../installing/cluster-capabilities.adoc#insights-operator_cluster-capabilities[Insights capability]
* See xref:../support/remote_health_monitoring/about-remote-health-monitoring.adoc#about-remote-health-monitoring[About remote health monitoring] for details about Insights Operator and Telemetry.
include::modules/kube-apiserver-operator.adoc[leveloffset=+1]
include::modules/kube-controller-manager-operator.adoc[leveloffset=+1]
include::modules/cluster-kube-scheduler-operator.adoc[leveloffset=+1]
include::modules/cluster-kube-storage-version-migrator-operator.adoc[leveloffset=+1]
include::modules/machine-api-operator.adoc[leveloffset=+1]
include::modules/machine-config-operator.adoc[leveloffset=+1]
include::modules/operator-marketplace.adoc[leveloffset=+1]
[role="_additional-resources"]
.Additional resources
* xref:../installing/cluster-capabilities.adoc#marketplace-operator_cluster-capabilities[Marketplace capability]
include::modules/node-tuning-operator.adoc[leveloffset=+1]
@@ -110,10 +126,10 @@ include::modules/node-tuning-operator.adoc[leveloffset=+1]
[role="_additional-resources"]
[id="cluster-operators-ref-nto-addtl-resources"]
=== Additional resources
* xref:../scalability_and_performance/cnf-low-latency-tuning.adoc#cnf-understanding-low-latency_cnf-master[Low latency tuning of OCP nodes]
include::modules/openshift-apiserver-operator.adoc[leveloffset=+1]
include::modules/cluster-openshift-controller-manager-operators.adoc[leveloffset=+1]
[id="cluster-operators-ref-olm"]
@@ -133,13 +149,12 @@ include::modules/olm-arch-catalog-registry.adoc[leveloffset=+2]
[discrete]
[id="cluster-operators-ref-olm-addtl-resources"]
=== Additional resources
* For more information, see the sections on xref:../operators/understanding/olm/olm-understanding-olm.adoc#olm-understanding-olm[understanding Operator Lifecycle Manager (OLM)].
include::modules/openshift-service-ca-operator.adoc[leveloffset=+1]
include::modules/vsphere-problem-detector-operator.adoc[leveloffset=+1]
[role="_additional-resources"]
.Additional resources
* For more details, see xref:../installing/installing_vsphere/using-vsphere-problem-detector-operator.adoc#using-vsphere-problem-detector-operator[Using the vSphere Problem Detector Operator].

View File

@@ -6,6 +6,8 @@ include::_attributes/common-attributes.adoc[]
toc::[]
// This assembly is currently excluded from the OSD and ROSA docs, because it requires cluster-admin permissions.
The Operator SDK includes options for generating an Operator project that leverages existing Ansible playbooks and modules to deploy Kubernetes resources as a unified application, without having to write any Go code.
To demonstrate the basics of setting up and running an link:https://docs.ansible.com/ansible/latest/index.html[Ansible]-based Operator using tools and libraries provided by the Operator SDK, Operator developers can build an example Ansible-based Operator for Memcached, a distributed key-value store, and deploy it to a cluster.

View File

@@ -18,10 +18,20 @@ Operator SDK:: The `operator-sdk` CLI tool and `controller-runtime` library API
Operator Lifecycle Manager (OLM):: Installation, upgrade, and role-based access control (RBAC) of Operators on a cluster
ifndef::openshift-dedicated,openshift-rosa[]
[NOTE]
====
This tutorial goes into greater detail than xref:../../../operators/operator_sdk/ansible/osdk-ansible-quickstart.adoc#osdk-ansible-quickstart[Getting started with Operator SDK for Ansible-based Operators].
====
endif::openshift-dedicated,openshift-rosa[]
// The "Getting started" quickstarts require cluster-admin and are therefore only available in OCP.
ifdef::openshift-dedicated,openshift-rosa[]
[NOTE]
====
This tutorial goes into greater detail than link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-ansible-quickstart[Getting started with Operator SDK for Ansible-based Operators] in the OpenShift Container Platform documentation.
====
endif::openshift-dedicated,openshift-rosa[]
include::modules/osdk-common-prereqs.adoc[leveloffset=+1]
@@ -37,9 +47,21 @@ include::modules/osdk-ansible-create-api.adoc[leveloffset=+1]
include::modules/osdk-ansible-modify-manager.adoc[leveloffset=+1]
include::modules/osdk-run-proxy.adoc[leveloffset=+1]
include::modules/osdk-run-operator.adoc[leveloffset=+1]
ifdef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-run-locally_osdk-ansible-tutorial[Running locally outside the cluster] (OpenShift Container Platform documentation)
* link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-run-deployment_osdk-ansible-tutorial[Running as a deployment on the cluster] (OpenShift Container Platform documentation)
endif::openshift-dedicated,openshift-rosa[]
// In OSD/ROSA, the only applicable option for running the Operator is to bundle and deploy with OLM.
ifndef::openshift-dedicated,openshift-rosa[]
include::modules/osdk-run-locally.adoc[leveloffset=+2]
include::modules/osdk-run-deployment.adoc[leveloffset=+2]
endif::openshift-dedicated,openshift-rosa[]
[id="osdk-bundle-deploy-olm_{context}"]
=== Bundling an Operator and deploying with Operator Lifecycle Manager
@@ -54,4 +76,9 @@ include::modules/osdk-create-cr.adoc[leveloffset=+1]
== Additional resources
* See xref:../../../operators/operator_sdk/ansible/osdk-ansible-project-layout.adoc#osdk-ansible-project-layout[Project layout for Ansible-based Operators] to learn about the directory structures created by the Operator SDK.
ifndef::openshift-dedicated,openshift-rosa[]
* If a xref:../../../networking/enable-cluster-wide-proxy.adoc#enable-cluster-wide-proxy[cluster-wide egress proxy is configured], cluster administrators can xref:../../../operators/admin/olm-configuring-proxy-support.adoc#olm-configuring-proxy-support[override the proxy settings or inject a custom CA certificate] for specific Operators running on Operator Lifecycle Manager (OLM).
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
* If a xref:../../../networking/configuring-cluster-wide-proxy.adoc#configuring-a-cluster-wide-proxy[cluster-wide egress proxy is configured], administrators with the `dedicated-admin` role can xref:../../../operators/admin/olm-configuring-proxy-support.adoc#olm-configuring-proxy-support[override the proxy settings or inject a custom CA certificate] for specific Operators running on Operator Lifecycle Manager (OLM).
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -6,6 +6,8 @@ include::_attributes/common-attributes.adoc[]
toc::[]
// This assembly is currently excluded from the OSD and ROSA docs, because it requires cluster-admin permissions.
To demonstrate the basics of setting up and running a Go-based Operator using tools and libraries provided by the Operator SDK, Operator developers can build an example Go-based Operator for Memcached, a distributed key-value store, and deploy it to a cluster.
include::modules/osdk-common-prereqs.adoc[leveloffset=+1]

View File

@@ -14,10 +14,20 @@ Operator SDK:: The `operator-sdk` CLI tool and `controller-runtime` library API
Operator Lifecycle Manager (OLM):: Installation, upgrade, and role-based access control (RBAC) of Operators on a cluster
ifndef::openshift-dedicated,openshift-rosa[]
[NOTE]
====
This tutorial goes into greater detail than xref:../../../operators/operator_sdk/golang/osdk-golang-quickstart.adoc#osdk-golang-quickstart[Getting started with Operator SDK for Go-based Operators].
====
endif::openshift-dedicated,openshift-rosa[]
// The "Getting started" quickstarts require cluster-admin and are therefore only available in OCP.
ifdef::openshift-dedicated,openshift-rosa[]
[NOTE]
====
This tutorial goes into greater detail than link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-golang-quickstart[Getting started with Operator SDK for Go-based Operators] in the OpenShift Container Platform documentation.
====
endif::openshift-dedicated,openshift-rosa[]
include::modules/osdk-common-prereqs.adoc[leveloffset=+1]
@@ -46,9 +56,20 @@ include::modules/osdk-golang-controller-reconcile-loop.adoc[leveloffset=+2]
include::modules/osdk-golang-controller-rbac-markers.adoc[leveloffset=+2]
include::modules/osdk-run-proxy.adoc[leveloffset=+1]
include::modules/osdk-run-operator.adoc[leveloffset=+1]
ifdef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-run-locally_osdk-golang-tutorial[Running locally outside the cluster] (OpenShift Container Platform documentation)
* link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-run-deployment_osdk-golang-tutorial[Running as a deployment on the cluster] (OpenShift Container Platform documentation)
endif::openshift-dedicated,openshift-rosa[]
// In OSD/ROSA, the only applicable option for running the Operator is to bundle and deploy with OLM.
ifndef::openshift-dedicated,openshift-rosa[]
include::modules/osdk-run-locally.adoc[leveloffset=+2]
include::modules/osdk-run-deployment.adoc[leveloffset=+2]
endif::openshift-dedicated,openshift-rosa[]
[id="osdk-bundle-deploy-olm_{context}"]
=== Bundling an Operator and deploying with Operator Lifecycle Manager
@@ -63,4 +84,9 @@ include::modules/osdk-create-cr.adoc[leveloffset=+1]
== Additional resources
* See xref:../../../operators/operator_sdk/golang/osdk-golang-project-layout.adoc#osdk-golang-project-layout[Project layout for Go-based Operators] to learn about the directory structures created by the Operator SDK.
ifndef::openshift-dedicated,openshift-rosa[]
* If a xref:../../../networking/enable-cluster-wide-proxy.adoc#enable-cluster-wide-proxy[cluster-wide egress proxy is configured], cluster administrators can xref:../../../operators/admin/olm-configuring-proxy-support.adoc#olm-configuring-proxy-support[override the proxy settings or inject a custom CA certificate] for specific Operators running on Operator Lifecycle Manager (OLM).
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
* If a xref:../../../networking/configuring-cluster-wide-proxy.adoc#configuring-a-cluster-wide-proxy[cluster-wide egress proxy is configured], administrators with the `dedicated-admin` role can xref:../../../operators/admin/olm-configuring-proxy-support.adoc#olm-configuring-proxy-support[override the proxy settings or inject a custom CA certificate] for specific Operators running on Operator Lifecycle Manager (OLM).
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -6,6 +6,8 @@ include::_attributes/common-attributes.adoc[]
toc::[]
// This assembly is currently excluded from the OSD and ROSA docs, because it requires cluster-admin permissions.
The Operator SDK includes options for generating an Operator project that leverages existing link:https://helm.sh/docs/[Helm] charts to deploy Kubernetes resources as a unified application, without having to write any Go code.
To demonstrate the basics of setting up and running an link:https://helm.sh/docs/[Helm]-based Operator using tools and libraries provided by the Operator SDK, Operator developers can build an example Helm-based Operator for Nginx and deploy it to a cluster.

View File

@@ -18,10 +18,20 @@ Operator SDK:: The `operator-sdk` CLI tool and `controller-runtime` library API
Operator Lifecycle Manager (OLM):: Installation, upgrade, and role-based access control (RBAC) of Operators on a cluster
ifndef::openshift-dedicated,openshift-rosa[]
[NOTE]
====
This tutorial goes into greater detail than xref:../../../operators/operator_sdk/helm/osdk-helm-quickstart.adoc#osdk-helm-quickstart[Getting started with Operator SDK for Helm-based Operators].
====
endif::openshift-dedicated,openshift-rosa[]
// The "Getting started" quickstarts require cluster-admin and are therefore only available in OCP.
ifdef::openshift-dedicated,openshift-rosa[]
[NOTE]
====
This tutorial goes into greater detail than link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-helm-quickstart[Getting started with Operator SDK for Helm-based Operators] in the OpenShift Container Platform documentation.
====
endif::openshift-dedicated,openshift-rosa[]
include::modules/osdk-common-prereqs.adoc[leveloffset=+1]
@@ -39,9 +49,22 @@ include::modules/osdk-helm-sample-chart.adoc[leveloffset=+2]
include::modules/osdk-helm-modify-cr.adoc[leveloffset=+2]
include::modules/osdk-run-proxy.adoc[leveloffset=+1]
include::modules/osdk-run-operator.adoc[leveloffset=+1]
ifdef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-run-locally_osdk-helm-tutorial[Running locally outside the cluster] (OpenShift Container Platform documentation)
* link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-run-deployment_osdk-helm-tutorial[Running as a deployment on the cluster] (OpenShift Container Platform documentation)
endif::openshift-dedicated,openshift-rosa[]
// In OSD/ROSA, the only applicable option for running the Operator is to bundle and deploy with OLM.
ifndef::openshift-dedicated,openshift-rosa[]
include::modules/osdk-run-locally.adoc[leveloffset=+2]
include::modules/osdk-run-deployment.adoc[leveloffset=+2]
endif::openshift-dedicated,openshift-rosa[]
[id="osdk-bundle-deploy-olm_{context}"]
=== Bundling an Operator and deploying with Operator Lifecycle Manager
@@ -56,4 +79,9 @@ include::modules/osdk-create-cr.adoc[leveloffset=+1]
== Additional resources
* See xref:../../../operators/operator_sdk/helm/osdk-helm-project-layout.adoc#osdk-helm-project-layout[Project layout for Helm-based Operators] to learn about the directory structures created by the Operator SDK.
ifndef::openshift-dedicated,openshift-rosa[]
* If a xref:../../../networking/enable-cluster-wide-proxy.adoc#enable-cluster-wide-proxy[cluster-wide egress proxy is configured], cluster administrators can xref:../../../operators/admin/olm-configuring-proxy-support.adoc#olm-configuring-proxy-support[override the proxy settings or inject a custom CA certificate] for specific Operators running on Operator Lifecycle Manager (OLM).
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
* If a xref:../../../networking/configuring-cluster-wide-proxy.adoc#configuring-a-cluster-wide-proxy[cluster-wide egress proxy is configured], administrators with the `dedicated-admin` role can xref:../../../operators/admin/olm-configuring-proxy-support.adoc#olm-configuring-proxy-support[override the proxy settings or inject a custom CA certificate] for specific Operators running on Operator Lifecycle Manager (OLM).
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -6,6 +6,8 @@ include::_attributes/common-attributes.adoc[]
:FeatureName: Java-based Operator SDK
include::snippets/technology-preview.adoc[]
// This assembly is not included in the OSD and ROSA docs, because it is Tech Preview. However, once Java-based Operator SDK is GA, this assembly will still need to be excluded from OSD and ROSA if it continues to require cluster-admin permissions.
toc::[]
To demonstrate the basics of setting up and running a Java-based Operator using tools and libraries provided by the Operator SDK, Operator developers can build an example Java-based Operator for Memcached, a distributed key-value store, and deploy it to a cluster.

View File

@@ -6,6 +6,8 @@ include::_attributes/common-attributes.adoc[]
:FeatureName: Java-based Operator SDK
include::snippets/technology-preview.adoc[]
// This assembly is not currrently included in the OSD and ROSA distros, because it is Tech Preview. However, some conditionalization has been added for OSD and ROSA so that the content will be applicable to those distros once this feature is GA and included in the OSD and ROSA docs.
toc::[]
Operator developers can take advantage of Java programming language support in the Operator SDK to build an example Java-based Operator for Memcached, a distributed key-value store, and manage its lifecycle.
@@ -16,10 +18,20 @@ Operator SDK:: The `operator-sdk` CLI tool and `java-operator-sdk` library API
Operator Lifecycle Manager (OLM):: Installation, upgrade, and role-based access control (RBAC) of Operators on a cluster
ifndef::openshift-dedicated,openshift-rosa[]
[NOTE]
====
This tutorial goes into greater detail than xref:../../../operators/operator_sdk/java/osdk-java-quickstart.adoc#osdk-java-quickstart[Getting started with Operator SDK for Java-based Operators].
====
endif::openshift-dedicated,openshift-rosa[]
// The "Getting started" quickstarts require cluster-admin and are therefore only available in OCP.
ifdef::openshift-dedicated,openshift-rosa[]
[NOTE]
====
This tutorial goes into greater detail than link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-java-quickstart[Getting started with Operator SDK for Java-based Operators] in the OpenShift Container Platform documentation.
====
endif::openshift-dedicated,openshift-rosa[]
include::modules/osdk-common-prereqs.adoc[leveloffset=+1]
@@ -45,8 +57,19 @@ include::modules/osdk-java-controller-labels-memcached.adoc[leveloffset=+2]
include::modules/osdk-java-controller-memcached-deployment.adoc[leveloffset=+2]
include::modules/osdk-run-operator.adoc[leveloffset=+1]
ifdef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-run-locally_osdk-java-tutorial[Running locally outside the cluster] (OpenShift Container Platform documentation)
* link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-run-deployment_osdk-java-tutorial[Running as a deployment on the cluster] (OpenShift Container Platform documentation)
endif::openshift-dedicated,openshift-rosa[]
// In OSD/ROSA, the only applicable option for running the Operator is to bundle and deploy with OLM.
ifndef::openshift-dedicated,openshift-rosa[]
include::modules/osdk-run-locally.adoc[leveloffset=+2]
include::modules/osdk-run-deployment.adoc[leveloffset=+2]
endif::openshift-dedicated,openshift-rosa[]
[id="osdk-bundle-deploy-olm_{context}"]
=== Bundling an Operator and deploying with Operator Lifecycle Manager

View File

@@ -24,7 +24,13 @@ The Operator SDK is a framework that uses the link:https://github.com/kubernetes
- Extensions to cover common Operator use cases
- Metrics set up automatically in any generated Go-based Operator for use on clusters where the Prometheus Operator is deployed
Operator authors with cluster administrator access to a Kubernetes-based cluster (such as {product-title}) can use the Operator SDK CLI to develop their own Operators based on Go, Ansible, or Helm. link:https://kubebuilder.io/[Kubebuilder] is embedded into the Operator SDK as the scaffolding solution for Go-based Operators, which means existing Kubebuilder projects can be used as is with the Operator SDK and continue to work.
ifndef::openshift-dedicated,openshift-rosa[]
Operator authors with cluster administrator access to a Kubernetes-based cluster (such as {product-title})
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
Operator authors with dedicated-admin access to {product-title}
endif::openshift-dedicated,openshift-rosa[]
can use the Operator SDK CLI to develop their own Operators based on Go, Ansible, Java, or Helm. link:https://kubebuilder.io/[Kubebuilder] is embedded into the Operator SDK as the scaffolding solution for Go-based Operators, which means existing Kubebuilder projects can be used as is with the Operator SDK and continue to work.
[NOTE]
====

View File

@@ -39,7 +39,10 @@ include::modules/osdk-cli-ref-run-bundle.adoc[leveloffset=+2]
* See xref:../../operators/understanding/olm/olm-understanding-operatorgroups.adoc#olm-operatorgroups-membership_olm-understanding-operatorgroups[Operator group membership] for details on possible install modes.
* xref:../../operators/operator_sdk/osdk-complying-with-psa.adoc#osdk-complying-with-psa[Complying with pod security admission]
// This xref points to a topic that is not currently included in the OSD/ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../authentication/understanding-and-managing-pod-security-admission.adoc#understanding-and-managing-pod-security-admission[Understanding and managing pod security admission]
endif::openshift-dedicated,openshift-rosa[]
include::modules/osdk-cli-ref-run-bundle-upgrade.adoc[leveloffset=+2]
@@ -47,7 +50,10 @@ include::modules/osdk-cli-ref-run-bundle-upgrade.adoc[leveloffset=+2]
.Additional resources
* xref:../../operators/operator_sdk/osdk-complying-with-psa.adoc#osdk-complying-with-psa[Complying with pod security admission]
// This xref points to a topic that is not currently included in the OSD and ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../authentication/understanding-and-managing-pod-security-admission.adoc#understanding-and-managing-pod-security-admission[Understanding and managing pod security admission]
endif::openshift-dedicated,openshift-rosa[]
include::modules/osdk-cli-ref-scorecard.adoc[leveloffset=+1]
@@ -56,4 +62,7 @@ include::modules/osdk-cli-ref-scorecard.adoc[leveloffset=+1]
* See xref:../../operators/operator_sdk/osdk-scorecard.adoc#osdk-scorecard[Validating Operators using the scorecard tool] for details about running the scorecard tool.
* xref:../../operators/operator_sdk/osdk-complying-with-psa.adoc#osdk-complying-with-psa[Complying with pod security admission]
// This xref points to a topic that is not currently included in the OSD and ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../authentication/understanding-and-managing-pod-security-admission.adoc#understanding-and-managing-pod-security-admission[Understanding and managing pod security admission]
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -14,7 +14,10 @@ If your Operator project does not require escalated permissions to run, you can
* The allowed pod security admission level for the Operator's namespace
* The allowed security context constraints (SCC) for the workload's service account
// This xref points to a topic that is not currently included in the OSD/ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
For more information, see xref:../../authentication/understanding-and-managing-pod-security-admission.adoc#understanding-and-managing-pod-security-admission[Understanding and managing pod security admission].
endif::openshift-dedicated,openshift-rosa[]
// About pod security admission
include::modules/security-context-constraints-psa-about.adoc[leveloffset=+1]
@@ -33,8 +36,11 @@ include::modules/osdk-ensuring-operator-workloads-run-restricted-psa.adoc[levelo
include::modules/osdk-managing-psa-for-operators-with-escalated-permissions.adoc[leveloffset=+1]
// This xref points to a topic that is not included in the OSD/ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
[id="osdk-complying-with-psa-additional-resources"]
[role="_additional-resources"]
== Additional resources
* xref:../../authentication/understanding-and-managing-pod-security-admission.adoc#understanding-and-managing-pod-security-admission[Understanding and managing pod security admission]
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -41,7 +41,9 @@ include::modules/osdk-csv-manual-annotations.adoc[leveloffset=+2]
* xref:../../operators/operator_sdk/osdk-generating-csvs.adoc#osdk-suggested-namespace-default-node_osdk-generating-csvs[Setting a suggested namespace with default node selector]
* xref:../../operators/operator_sdk/osdk-generating-csvs.adoc#olm-enabling-operator-for-restricted-network_osdk-generating-csvs[Enabling your Operator for restricted network environments] (disconnected mode)
* xref:../../operators/operator_sdk/osdk-generating-csvs.adoc#osdk-hiding-internal-objects_osdk-generating-csvs[Hiding internal objects]
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../installing/installing-fips.adoc#installing-fips[Support for FIPS crytography]
endif::openshift-dedicated,openshift-rosa[]
include::modules/olm-enabling-operator-restricted-network.adoc[leveloffset=+1]
include::modules/olm-enabling-operator-for-multi-arch.adoc[leveloffset=+1]
@@ -67,7 +69,10 @@ include::modules/olm-defining-csv-webhooks.adoc[leveloffset=+1]
[role="_additional-resources"]
.Additional resources
// This xref points to a topic that is not currently included in the OSD and ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../architecture/admission-plug-ins.adoc#admission-webhook-types_admission-plug-ins[Types of webhook admission plugins]
endif::openshift-dedicated,openshift-rosa[]
* Kubernetes documentation:
** link:https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#validatingadmissionwebhook[Validating admission webhooks]
** link:https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#mutatingadmissionwebhook[Mutating admission webhooks]

View File

@@ -6,7 +6,13 @@ include::_attributes/common-attributes.adoc[]
toc::[]
An {product-title} cluster can be configured in high-availability (HA) mode, which uses multiple nodes, or in non-HA mode, which uses a single node. A single-node cluster, also known as {sno}, is likely to have more conservative resource constraints. Therefore, it is important that Operators installed on a single-node cluster can adjust accordingly and still run well.
// OSD/ROSA don't support single-node clusters, but these Operator authors still need to know how to handle this configuration for their Operators to work correctly in OCP.
ifdef::openshift-dedicated,openshift-rosa[]
To ensure that your Operator runs well on both high-availability (HA) and non-HA modes in OpenShift Container Platform clusters, you can use the Operator SDK to detect the cluster's infrastructure topology and set the resource requirements to fit the cluster's topology.
endif::openshift-dedicated,openshift-rosa[]
// Not using {product-title} here, because HA mode and non-HA mode are specific to OCP and should be spelled out this way in other distros.
An OpenShift Container Platform cluster can be configured in high-availability (HA) mode, which uses multiple nodes, or in non-HA mode, which uses a single node. A single-node cluster, also known as {sno}, is likely to have more conservative resource constraints. Therefore, it is important that Operators installed on a single-node cluster can adjust accordingly and still run well.
By accessing the cluster high-availability mode API provided in {product-title}, Operator authors can use the Operator SDK to enable their Operator to detect a cluster's infrastructure topology, either HA or non-HA mode. Custom Operator logic can be developed that uses the detected cluster topology to automatically switch the resource requirements, both for the Operator and for any Operands or workloads it manages, to a profile that best fits the topology.

View File

@@ -8,7 +8,13 @@ toc::[]
The Operator SDK provides a command-line interface (CLI) tool that Operator developers can use to build, test, and deploy an Operator. You can install the Operator SDK CLI on your workstation so that you are prepared to start authoring your own Operators.
Operator authors with cluster administrator access to a Kubernetes-based cluster, such as {product-title}, can use the Operator SDK CLI to develop their own Operators based on Go, Ansible, java, or Helm. link:https://kubebuilder.io/[Kubebuilder] is embedded into the Operator SDK as the scaffolding solution for Go-based Operators, which means existing Kubebuilder projects can be used as is with the Operator SDK and continue to work.
ifndef::openshift-dedicated,openshift-rosa[]
Operator authors with cluster administrator access to a Kubernetes-based cluster, such as {product-title},
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
Operator authors with dedicated-admin access to {product-title}
endif::openshift-dedicated,openshift-rosa[]
can use the Operator SDK CLI to develop their own Operators based on Go, Ansible, Java, or Helm. link:https://kubebuilder.io/[Kubebuilder] is embedded into the Operator SDK as the scaffolding solution for Go-based Operators, which means existing Kubebuilder projects can be used as is with the Operator SDK and continue to work.
[NOTE]
====

View File

@@ -6,9 +6,30 @@ include::_attributes/common-attributes.adoc[]
toc::[]
// Dedicated-admins in OSD and ROSA don't have the permissions to complete the procedures in this assembly. Also, the procedures use the default Prometheus Operator in the openshift-monitoring project, which OSD/ROSA customers should not use.
ifndef::openshift-dedicated,openshift-rosa[]
This guide describes the built-in monitoring support provided by the Operator SDK using the Prometheus Operator and details usage for authors of Go-based and Ansible-based Operators.
include::modules/osdk-monitoring-prometheus-operator-support.adoc[leveloffset=+1]
include::modules/osdk-monitoring-custom-metrics.adoc[leveloffset=+1]
include::modules/osdk-ansible-metrics.adoc[leveloffset=+1]
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
// Since OSD/ROSA dedicated-admins can't do the procedures in this assembly, point to the OCP docs.
The Operator SDK provides built-in monitoring support using the Prometheus Operator, which you can use to expose custom metrics for your Operator.
[WARNING]
====
By default, {product-title} provides a Prometheus Operator in the `openshift-user-workload-monitoring` project. You should use this Prometheus instance to monitor user workloads in {product-title}.
Do not use the Prometheus Operator in the `openshift-monitoring` project. Red Hat Site Reliability Engineers (SRE) use this Prometheus instance to monitor core cluster components.
====
[role="_additional-resources"]
.Additional resources
* link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-monitoring-custom-metrics_osdk-monitoring-prometheus[Exposing custom metrics for Go-based Operators] (OpenShift Container Platform documentation)
* link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html-single/operators/index#osdk-ansible-metrics_osdk-monitoring-prometheus[Exposing custom metrics for Ansible-based Operators] (OpenShift Container Platform documentation)
* xref:../../monitoring/monitoring-overview.adoc#understanding-the-monitoring-stack_monitoring-overview[Understanding the monitoring stack] in {product-title}
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -26,8 +26,10 @@ include::modules/olm-multitenancy-solution.adoc[leveloffset=+1]
[role="_additional-resources"]
.Additional resources
* xref:../../operators/admin/olm-adding-operators-to-cluster.adoc#olm-preparing-operators-multitenant_olm-adding-operators-to-a-cluster[Preparing for multiple instances of an Operator for multitenant clusters]
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../operators/admin/olm-creating-policy.adoc#olm-creating-policy[Allowing non-cluster administrators to install Operators]
* xref:../../operators/admin/olm-managing-custom-catalogs.adoc#olm-restricted-networks-operatorhub_olm-managing-custom-catalogs[Disabling the default OperatorHub catalog sources]
endif::openshift-dedicated,openshift-rosa[]
[id="olm-colocation_{context}"]
== Operator colocation and Operator groups

View File

@@ -39,7 +39,13 @@ As of {product-title} 4.11, the default Red Hat-provided Operator catalog releas
The `opm` subcommands, flags, and functionality related to the SQLite database format are also deprecated and will be removed in a future release. The features are still supported and must be used for catalogs that use the deprecated SQLite database format.
Many of the `opm` subcommands and flags for working with the SQLite database format, such as `opm index prune`, do not work with the file-based catalog format. For more information about working with file-based catalogs, see xref:../../operators/admin/olm-managing-custom-catalogs.adoc#olm-managing-custom-catalogs-fb[Managing custom catalogs] and xref:../../installing/disconnected_install/installing-mirroring-disconnected.adoc#installing-mirroring-disconnected[Mirroring images for a disconnected installation using the oc-mirror plugin].
Many of the `opm` subcommands and flags for working with the SQLite database format, such as `opm index prune`, do not work with the file-based catalog format.
ifndef::openshift-dedicated,openshift-rosa[]
For more information about working with file-based catalogs, see xref:../../operators/admin/olm-managing-custom-catalogs.adoc#olm-managing-custom-catalogs-fb[Managing custom catalogs] and xref:../../installing/disconnected_install/installing-mirroring-disconnected.adoc#installing-mirroring-disconnected[Mirroring images for a disconnected installation using the oc-mirror plugin].
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
For more information about working with file-based catalogs, see xref:../../operators/admin/olm-managing-custom-catalogs.adoc#olm-managing-custom-catalogs-fb[Managing custom catalogs].
endif::openshift-dedicated,openshift-rosa[]
====
include::modules/olm-fb-catalogs-structure.adoc[leveloffset=+2]
@@ -57,6 +63,8 @@ For reference documentation about the `opm` CLI commands related to managing fil
include::modules/olm-fb-catalogs-automation.adoc[leveloffset=+2]
// Tech Preview features should not be included in ROSA/OSD.
ifndef::openshift-dedicated,openshift-rosa[]
include::modules/olm-rukpak-about.adoc[leveloffset=+1]
[role="_additional-resources"]
.Additional resources
@@ -74,5 +82,6 @@ include::modules/olm-rukpak-registry-bundle.adoc[leveloffset=+3]
* xref:../../operators/understanding/olm-packaging-format.adoc#olm-bundle-format_olm-packaging-format[Legacy OLM bundle format]
include::modules/olm-rukpak-bd.adoc[leveloffset=+2]
include::modules/olm-rukpak-provisioner.adoc[leveloffset=+2]
include::modules/olm-rukpak-provisioner.adoc[leveloffset=+2]
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -14,8 +14,15 @@ As of {product-title} 4.11, the default Red Hat-provided Operator catalog releas
The `opm` subcommands, flags, and functionality related to the SQLite database format are also deprecated and will be removed in a future release. The features are still supported and must be used for catalogs that use the deprecated SQLite database format.
Many of the `opm` subcommands and flags for working with the SQLite database format, such as `opm index prune`, do not work with the file-based catalog format. For more information about working with file-based catalogs, see xref:../../operators/admin/olm-managing-custom-catalogs.adoc#olm-managing-custom-catalogs[Managing custom catalogs],
Many of the `opm` subcommands and flags for working with the SQLite database format, such as `opm index prune`, do not work with the file-based catalog format.
ifndef::openshift-dedicated,openshift-rosa[]
For more information about working with file-based catalogs, see xref:../../operators/admin/olm-managing-custom-catalogs.adoc#olm-managing-custom-catalogs[Managing custom catalogs],
xref:../../operators/understanding/olm-packaging-format.adoc#olm-file-based-catalogs_olm-packaging-format[Operator Framework packaging format], and xref:../../installing/disconnected_install/installing-mirroring-disconnected.adoc#installing-mirroring-disconnected[Mirroring images for a disconnected installation using the oc-mirror plugin].
endif::openshift-dedicated,openshift-rosa[]
ifdef::openshift-dedicated,openshift-rosa[]
For more information about working with file-based catalogs, see xref:../../operators/admin/olm-managing-custom-catalogs.adoc#olm-managing-custom-catalogs[Managing custom catalogs], and
xref:../../operators/understanding/olm-packaging-format.adoc#olm-file-based-catalogs_olm-packaging-format[Operator Framework packaging format].
endif::openshift-dedicated,openshift-rosa[]
====
include::modules/olm-about-catalogs.adoc[leveloffset=+1]
@@ -25,6 +32,8 @@ include::modules/olm-about-catalogs.adoc[leveloffset=+1]
* xref:../../operators/admin/olm-managing-custom-catalogs.adoc#olm-managing-custom-catalogs[Managing custom catalogs]
* xref:../../operators/understanding/olm-packaging-format.adoc#olm-file-based-catalogs_olm-packaging-format[Packaging format]
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../operators/admin/olm-restricted-networks.adoc#olm-restricted-networks[Using Operator Lifecycle Manager on restricted networks]
endif::openshift-dedicated,openshift-rosa[]
include::modules/olm-rh-catalogs.adoc[leveloffset=+1]

View File

@@ -17,5 +17,8 @@ include::modules/olm-supported-operatorconditions.adoc[leveloffset=+1]
* xref:../../../operators/admin/olm-managing-operatorconditions.adoc#olm-operatorconditions[Managing Operator conditions]
* xref:../../../operators/operator_sdk/osdk-generating-csvs.adoc#osdk-operatorconditions_osdk-generating-csvs[Enabling Operator conditions]
// The following xrefs point to topics that are not currently included in the OSD/ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../../nodes/pods/nodes-pods-configuring.adoc#nodes-pods-configuring-pod-distruption-about_nodes-pods-configuring[Using pod disruption budgets to specify the number of pods that must be up]
* xref:../../../applications/deployments/route-based-deployment-strategies.adoc#deployments-graceful-termination_route-based-deployment-strategies[Graceful termination]
endif::openshift-dedicated,openshift-rosa[]

View File

@@ -20,32 +20,41 @@ include::modules/olm-catalogsource.adoc[leveloffset=+2]
* xref:../../../operators/admin/olm-managing-custom-catalogs.adoc#olm-creating-catalog-from-index_olm-managing-custom-catalogs[Adding a catalog source to a cluster]
* xref:../../../operators/understanding/olm/olm-understanding-dependency-resolution.adoc#olm-dependency-catalog-priority_olm-understanding-dependency-resolution[Catalog priority]
* xref:../../../operators/admin/olm-status.adoc#olm-cs-status-cli_olm-status[Viewing Operator catalog source status by using the CLI]
// This xref points to a topic that is not currently included in the OSD/ROSA docs.
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../../authentication/understanding-and-managing-pod-security-admission.adoc#understanding-and-managing-pod-security-admission[Understanding and managing pod security admission]
endif::openshift-dedicated,openshift-rosa[]
* xref:../../../operators/admin/olm-cs-podsched.adoc#olm-cs-podsched[Catalog source pod scheduling]
include::modules/olm-catalogsource-image-template.adoc[leveloffset=+3]
include::modules/olm-cs-health.adoc[leveloffset=+3]
ifndef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* xref:../../../operators/admin/olm-managing-custom-catalogs.adoc#olm-removing-catalogs_olm-managing-custom-catalogs[Removing custom catalogs]
* xref:../../../operators/admin/olm-managing-custom-catalogs.adoc#olm-restricted-networks-operatorhub_olm-managing-custom-catalogs[Disabling the default OperatorHub catalog sources]
endif::openshift-dedicated,openshift-rosa[]
include::modules/olm-subscription.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../../operators/understanding/olm/olm-colocation.adoc#olm-colocation[Multitenancy and Operator colocation]
endif::openshift-dedicated,openshift-rosa[]
* xref:../../../operators/admin/olm-status.adoc#olm-status-viewing-cli_olm-status[Viewing Operator subscription status by using the CLI]
include::modules/olm-installplan.adoc[leveloffset=+2]
ifndef::openshift-dedicated,openshift-rosa[]
[role="_additional-resources"]
.Additional resources
* xref:../../../operators/understanding/olm/olm-colocation.adoc#olm-colocation[Multitenancy and Operator colocation]
* xref:../../../operators/admin/olm-creating-policy.adoc#olm-creating-policy[Allowing non-cluster administrators to install Operators]
endif::openshift-dedicated,openshift-rosa[]
include::modules/olm-operatorgroups-about.adoc[leveloffset=+2]
.Additional resources

View File

@@ -20,9 +20,12 @@ include::modules/olm-operatorgroups-intersections.adoc[leveloffset=+1]
include::modules/olm-operatorgroups-limitations.adoc[leveloffset=+1]
[role="_additional-resources"]
.Additional resources
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../../operators/understanding/olm/olm-colocation.adoc#olm-colocation[Operator Lifecycle Manager (OLM) -> Multitenancy and Operator colocation]
endif::openshift-dedicated,openshift-rosa[]
* xref:../../../operators/understanding/olm-multitenancy.adoc#olm-multitenancy[Operators in multitenant clusters]
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../../operators/admin/olm-creating-policy.adoc#olm-creating-policy[Allowing non-cluster administrators to install Operators]
endif::openshift-dedicated,openshift-rosa[]
include::modules/olm-operatorgroups-troubleshooting.adoc[leveloffset=+1]

View File

@@ -14,7 +14,9 @@ See xref:../../../operators/operator_sdk/osdk-generating-csvs.adoc#olm-defining-
[role="_additional-resources"]
== Additional resources
ifndef::openshift-dedicated,openshift-rosa[]
* xref:../../../architecture/admission-plug-ins.adoc#admission-webhook-types_admission-plug-ins[Types of webhook admission plugins]
endif::openshift-dedicated,openshift-rosa[]
* Kubernetes documentation:
** link:https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#validatingadmissionwebhook[Validating admission webhooks]
** link:https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#mutatingadmissionwebhook[Mutating admission webhooks]