Skip to content

RHIDP-6572: [Docs] Document installation process (Helm-based) for orchestrator in RHDH #1264

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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 on OpenShift using Helm

:context: install-rhdh-orchestrator-helm

You can install {product} with Orchestrator on {ocp-short} by using Helm, review resource requirements for Orchestrator, and plan for resource considerations in air-gapped environments.

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

include::modules/installation/proc-install-orchestrator-helm-webui.adoc[leveloffset=+1]
118 changes: 118 additions & 0 deletions modules/installation/proc-install-orchestrator-helm-cli.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
// Module included in the following assemblies
// assembly-orchestrator-helm-modules.adoc

:_mod-docs-content-type: PROCEDURE
[id="proc-install-orchestrator-helm-cli_{context}"]
= Install the Orchestrator flavor using the Helm CLI

You can install the Orchestrator flavor of {product} ({product-very-short}) on OpenShift using the Helm CLI. This method provides flexibility for custom configurations and automation. The Orchestrator flavor enables serverless workflows and orchestration capabilities.


[IMPORTANT]
====
You must be a cluster administrator to install the Orchestrator Helm chart because it deploys cluster-scoped resources. The {product} Helm chart may be installed by a user with namespace-level access.
====

.Prerequisites

* You are logged in to the OpenShift cluster using the `oc` CLI.
* You have installed Helm and configured locally.
* You have access to the official Red Hat container registry (`registry.redhat.io`).
* You have created a `values.yaml` file for the deployment.
* You have access to the {product} Helm chart repository.

.Procedure

. Add the official OpenShift Helm charts repository:
+
[source,bash]
----
helm repo add openshift-helm-charts https://charts.openshift.io/
helm repo update
----

. Install the orchestrator infrastructure Helm chart:
+
[source,bash]
----
helm install <release_name> openshift-helm-charts/redhat-developer-hub-orchestrator-infra
----

. Manually approve the install plans for OpenShift Serverless and Serverless Logic Operators. Wait until they are successfully deployed.

. Install the Backstage chart with the orchestrator enabled:
+
[source,bash]
----
helm install <release_name> openshift-helm-charts/redhat-developer-hub --version 1.7.0 \
--set orchestrator.enabled=true
----

. (Optional) Disable the installation of the Serverless Logic and Serverless Operators if they are managed externally:
+
[source,bash]
----
helm install <release_name> redhat-developer/backstage \
--set orchestrator.serverlessOperator=false \
--set orchestrator.serverlessLogicOperator=false
----

. (Optional) Enable *Notifications* and *Signals* plugins by adding them under `global.dynamic.plugins` in your `values.yaml` file:
+
[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) If 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>"
externalDBHost: "<database_host>"
externalDBPort: "<database_port>"
----

[NOTE]
====
This only configures the Orchestrator's use of an external database. To configure {product} to use an external PostgreSQL instance, follow the steps in:
link:https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.6/html/configuring_red_hat_developer_hub/configuring-external-postgresql-databases#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 orchestration is functioning correctly.

. Check the logs of the Orchestrator pod to verify workflow execution and plugin readiness.
Use the following commands to check the Orchestrator pod logs:
+
[source,bash]
----
# List pods in the namespace
oc get pods -n <namespace>

# Replace <orchestrator-pod-name> with the actual pod name
oc logs -n <namespace> <orchestrator-pod-name>
----

. (Optional) Stream logs in real-time:
+
[source,bash]
----
oc logs -n <namespace> -f <orchestrator-pod-name>
----
40 changes: 40 additions & 0 deletions modules/installation/proc-install-orchestrator-helm-webui.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
[id="proc-install-orchestrator-helm-webui_{context}"]
= Install the Orchestrator flavor using the OpenShift web console

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

[IMPORTANT]
====
You must be a cluster administrator to install the Orchestrator Helm chart because it deploys cluster-scoped resources.
====

.Prerequisites

* You are logged in to the OpenShift Container Platform 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 OpenShift web console, go to menu:Helm[Helm Charts].

. Click btn:[Repository] and confirm that the {product} Helm chart repository is available. If not, add it manually.

. Search for the Orchestrator Helm chart and click btn:[Install].

. In the install form:
* Choose or create a target namespace.
* Accept or modify the default values as needed.
* Review and confirm the cluster-scoped resources that the chart will install.

. Click btn:[Install] to deploy the chart.

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

.Verification

After deployment completes:

* The orchestrator-related pods should be running in the selected namespace.
* Cluster-wide resources such as CustomResourceDefinitions (CRDs) should be present.
* You can begin 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
11 changes: 11 additions & 0 deletions titles/orchestrator/master.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
include::artifacts/attributes.adoc[]
:context: orchestrator-helm
:imagesdir: images
:title: Orchestrator flavor installation using Helm
:subtitle: Install, configure, and manage the Orchestrator flavor in {product} using Helm
:abstract: As a {product} ({product-very-short}) administrator, you can install and configure the Orchestrator flavor using Helm, ensuring your environment is prepared for workflow orchestration with {product}.

= {title}

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