Skip to content
Closed
17 changes: 17 additions & 0 deletions assemblies/assembly-install-rhdh-orchestrator-helm.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
:_mod-docs-content-type: ASSEMBLY

ifndef::context[]
[id="install-rhdh-orchestrator-helm"]
endif::[]
ifdef::context[]
[id="install-rhdh-orchestrator-helm_{context}"]
endif::[]
= Installing {product} with the Orchestrator plugin using Helm

:context: install-rhdh-orchestrator-helm

You can install {product} with Orchestrator by using the {product} Helm chart. Orchestrator brings serverless workflows into {product-custom-resource-type}, targets application migration to the cloud, onboarding of developers, and user-made workflows of {product-custom-resource-type} actions or external systems.

include::modules/orchestrator/proc-install-rhdh-with-orchestrator-helm-cli.adoc[leveloffset=+1]

include::modules/orchestrator/proc-install-rhdh-with-orchestrator-helm-webui.adoc[leveloffset=+1]
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
// Module included in the following assemblies
// assembly-orchestrator-helm-modules.adoc

:_mod-docs-content-type: PROCEDURE
[id="proc-install-rhdh-with-orchestrator-helm-cli_{context}"]
= Installing {product} ({product-very-short}) on {ocp-short} with the Orchestrator using the Helm CLI

You can install {product} ({product-very-short}) on {ocp-short} with the Orchestrator by using the Helm CLI. The installation automatically enables the required dynamic plugins and integrates workflow infrastructure.

.Prerequisites

* You are logged in as an administrator and have access to the {product} Helm chart repository.
* You can install the necessary infrastructures resources, such as sonataflow, alongside {product-very-short} in the same namespace.
+
This is a one-off requirement and must be completed before enabling the Orchestrator plugin.

.Procedure

. As an administrator, install relevant cluster-wide resources.
+
[source,yaml]
----
helm repo add openshift-helm-charts https://charts.openshift.io/
helm install <release_name> openshift-helm-charts/redhat-developer-hub-orchestrator-infra
----
+
[IMPORTANT]
====
You must be a cluster administrator to install the `redhat-developer-hub-orchestrator-infra` Helm chart because it deploys additional cluster-scoped OpenShift Serverless and OpenShift Serverless Logic Operators. As an administrator, you need to manually approve the install plans for OpenShift Serverless and Serverless Logic Operators.
====

. Install the Backstage chart with the orchestrator enabled as shown in the following example:
+
[source,terminal,subs="attributes+"]
----
helm install <release_name> openshift-helm-charts/redhat-developer-hub --version {product-chart-version} \
--set orchestrator.enabled=true
----

. (Optional) Enable *Notifications* and *Signals* plugins by adding them to the `global.dynamic.plugins` list in your `values.yaml` file as shown in the following example:
+
[source,yaml]
----
global:
dynamic:
plugins:
- disabled: false
package: "./dynamic-plugins/dist/backstage-plugin-notifications"
- disabled: false
package: "./dynamic-plugins/dist/backstage-plugin-signals"
- disabled: false
package: "./dynamic-plugins/dist/backstage-plugin-notifications-backend-dynamic"
- disabled: false
package: "./dynamic-plugins/dist/backstage-plugin-signals-backend-dynamic"
----

. (Optional) You can disable the Serverless Logic and Serverless Operators individually or together by setting their values to `false`, as shown in the following example:
+
[source,terminal,subs="attributes+"]
----
helm install <release_name> openshift-helm-charts/redhat-developer-hub \
--version {product-chart-version} \
--set orchestrator.enabled=true \
--set orchestrator.serverlessOperator=false \
--set orchestrator.serverlessLogicOperator=false
----

. (Optional) If you are using an external database, add the following configuration under `orchestrator.sonataflowPlatform` in your `values.yaml` file:
+
[source,yaml]
----
orchestrator:
sonataflowPlatform:
externalDBsecretRef: "<cred-secret>"
externalDBName: "<database_name>" # The name of the user-configured existing database (Not the database that the orchestrator and sonataflow resources use).
externalDBHost: "<database_host>"
externalDBPort: "<database_port>"
----
+
[NOTE]
====
This step only configures the Orchestrators use of an external database. To configure {product} to use an external PostgreSQL instance, follow the steps in link:{configuring-book-url}#proc-configuring-postgresql-instance-using-helm_configuring-external-postgresql-databases[Configuring a PostgreSQL instance using Helm].
====

.Verification

. Verify that the Orchestrator plugin is visible in the {product} UI.

. Create and run sample workflows to confirm the orchestration is functioning correctly.
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
[id="proc-install-rhdh-with-orchestrator-helm-webui.adoc_{context}"]
= Install {product} ({product-very-short}) using {ocp-short} web console

You can install {product} ({product-very-short}) with the Orchestrator by using the ({ocp-short}) web console. This method is useful if you prefer a graphical interface or want to deploy cluster-wide resources without using the Helm CLI.

.Prerequisites

* You are logged in to the {ocp-short} web console as a cluster administrator.
* You have access to the {product} Helm chart repository.
* Your cluster has internet access or the Helm charts are mirrored in a disconnected environment.

.Procedure

. In the {ocp-short} web console, go to menu:Helm[Helm Charts].

. Click btn:[Repository] and confirm that the {product} Helm chart repository is available.

. Search for the Orchestrator infrastructure for {product} and click btn:[Install].
+
[IMPORTANT]
====
You must be a cluster administrator to install the Orchestrator Infrastructure for {product} Helm chart because it deploys cluster-scoped resources. As an administrator, you need to manually approve the install plans for OpenShift Serverless and Serverless Logic Operators.
====
+
As a regular user, search for the {product} chart and install it by setting the value of `orchestrator.enabled` to `true`. Otherwise, the Orchestrator will not be deployed.

. Wait until they are successfully deployed.

. Monitor the deployment status by navigating to menu:Workloads[Pods] or menu:Helm[Releases].

.Verification

After deployment completes:

* The orchestrator-related pods are running in the selected namespace.
* Cluster-wide resources are present.
* You can start connecting the orchestrator to your {product} UI.
1 change: 1 addition & 0 deletions titles/orchestrator/artifacts
1 change: 1 addition & 0 deletions titles/orchestrator/assemblies
13 changes: 13 additions & 0 deletions titles/orchestrator/docinfo.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<title>{title}</title>
<productname>{product}</productname>
<productnumber>{product-version}</productnumber>
<subtitle>{subtitle}
</subtitle>
<abstract>
<para>{abstract}</para>
</abstract>
<authorgroup>
<orgname>{company-name} Customer Content Services</orgname>
</authorgroup>
<xi:include href="Common_Content/Legal_Notice.xml"
xmlns:xi="http://www.w3.org/2001/XInclude" />
1 change: 1 addition & 0 deletions titles/orchestrator/images
16 changes: 16 additions & 0 deletions titles/orchestrator/master.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
include::artifacts/attributes.adoc[]
:context: orchestrator-install
:imagesdir: images
:title: Installing {product} with the Orchestrator plugin
:subtitle: Install, configure, and manage {product} with the Orchestrator plugin using Helm or the {product} Operator
:abstract: As a cluster administrator, you can install {product} ({product-very-short}) with the Orchestrator plugin.

= {title}

You can install {product} ({product-very-short}) using one of the following methods:

* The {product} Operator
* The {product} Helm chart

// Helm chart method
include::assemblies/assembly-install-rhdh-orchestrator-helm.adoc[leveloffset=+1]
1 change: 1 addition & 0 deletions titles/orchestrator/modules