Skip to content

RHIDP-6574: Document resource required (Helm-based) for air-gapped environment #1283

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 1 commit 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
15 changes: 15 additions & 0 deletions assemblies/assembly-install-rhdh-orchestrator-helm.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
:_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 Orchestrator using Helm

:context: install-rhdh-orchestrator-helm

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

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

:_mod-docs-content-type: PROCEDURE
[id="con-airgapped-requirements-orchestrator_{context}"]
= Resource requirements for air-gapped environments

You can deploy the Orchestrator flavor of {product} in air-gapped environments by ensuring that all container images, and Helm charts required by {product} and SonataFlow are available internally.

For workflow orchestration in air-gapped environments, the following resources are recommended:

[cols="2,2", options="header"]
|===
| Resource component
| Recommended resources

| RHDH Orchestrator plugin
| 2 vCPUs, 2–4 GiB memory

| SonataFlow runtime
| 1 vCPU, 1–2 GiB memory

| Knative Serving and Eventing
| 1–2 vCPUs, 1.5 GiB memory

| PostgreSQL or External DB
| 1 vCPU, 1 GiB memory

| Persistent storage
| 5 GiB (minimum), adjust based on workflow logs and artifacts
|===
Comment on lines +13 to +31
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just curious, where are these recommended values coming from? I guess these should not be only for air-gapped environments, but for any env requiring workflow orchestration, no?


To prepare for an air-gapped deployment, complete the following steps:

. **Mirror container images**

Mirror all required {product-very-short}, SonataFlow, Knative, and orchestrator plugin images to an internal container registry. Ensure that the image versions match the Helm chart values.

. **Mirror Helm charts**

Pre-download the Helm charts for `redhat-developer-hub`, `orchestrator-infra`, and any dependent charts (for example, `bitnami` and `backstage`). Host them in an internal chart repository or file server.

. **CRD and operator installation**

Download the required CRDs and YAML manifests for SonataFlow and Knative operators and apply them manually.

. **Configure network policies**

Validate inter-pod communication and ensure internal DNS resolution to the mirrored image registry.
Comment on lines +35 to +49
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't the concrete steps/commands to do this be documented? Like, which version of the plugins, Helm chart to mirror exactly? We should also consider the following scenarios: partially disconnected vs fully disconnected environments. See https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.6/html-single/installing_red_hat_developer_hub_in_an_air-gapped_environment/index#assembly-install-rhdh-airgapped-environment-ocp-helm_title-install-rhdh-air-grapped


. **Use `imagePullSecrets`**

Update your `values.yaml` file with credentials for the internal registry if it is private:

[source,yaml]
----
global:
imagePullSecrets:
- name: internal-registry-secret
----
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