Using Red Hat OpenShift Developer Catalog
You can install Sterling B2B Integrator using Red Hat OpenShift Developer Catalog.
Yaml View
- Download the Certified Container image from IBM Entitled Registry. For details, see Downloading Certified Container images from IBM Entitled Registry.
- Push the Certified Container on to the Catalog UI using the following steps
- Configure the CLI tools for the cluster using the steps mentioned here - CLI Tools Guide.
- Log in to the cluster console as an administrator user using
cloudtcl
login command. - Push the Certified Container archive (
ibm-b2bi-prod-1.0.0.tgz
) downloaded from PA to the Catalog UI using the following command:cloudctl catalog load-chart --archive ibm-b2bi-prod-1.0.0.tgz [--repo HELM_REPO_NAME]
For more information on pushing the archives, see IBM Cloud Private CLI catalog commands (catalog).
- Open the Cluster console using a browser, navigate to the Catalog tab, search for the Certified Container (
ibm-b2bi-prod
). Open the Certified Container and perform the following steps to deploy Sterling B2B Integrator:- Ensure the prerequisites are all taken care as mentioned in the Overview tab.
- Select Configure and provide these details - Helm release name, Target namespace, and Target cluster.
- Add the following mandatory parameters:
- StorageClass Name
- Database Server Vendor
- Database Host
- Database Port
- Database User
- Database Name
- Database Secret
- Database Driver
- Email Address
- SMTP host details
- Update the following details in the All parameters section:
- System Passphrase
- Image tag
- Image Repository
- B2BI Image Pull Secret
- Accept the license agreement and click Install to deploy the Certified Container.
After the successful installation, the system creates a Release, which can be seen in Menu > Workloads > Helm Releases.
- Click the Release Name and all the Kubernetes resources, created as a part of the deployment like
statefulsets
,services
,pods
,configmaps
, andpvc
, is displayed on the UI. - You can verify the status of the
pods
. - You can monitor Kubernetes resources using basic
kubectl
commands such as:kubectl get pods kubectl get statefulset kubectl get services
- Click the Release Name and all the Kubernetes resources, created as a part of the deployment like
Form View
Helm 3.x introduced support for validation of values using schema files that follow JSON Schema. The IBM Sterling B2B Integrator now supports Form View deployment from the OCP Developer Catalog with the values.schema.json included in the helm charts. All settings are configurable via values.yaml should be configurable from the Form View for IBM Sterling B2B Integrator in the OCP Developer Catalog with few limitations.
For the settings which do not appear in Form View for IBM Sterling B2B Integrator, such fields can be directly added in Yaml View in the OCP Developer Catalog. Reference for such fields can be found in the published helm charts values.yaml for IBM Sterling B2B Integrator.
backendService:
type: NodePort
portRanges:
- name: adapters
nodePortRange: 30301-30400
portRange: 30301-30400
protocol: TCP
targetPortRange: 30301-30400
The below fields will not be displayed in Form View and should be added in the Yaml View for configuring IBM Sterling B2B Integrator.
Parameter | Description |
---|---|
global.networkPolicies.ingress.customPolicies |
Configure custom ingress network policies |
global.networkPolicies.egress.customPolicies |
Configure custom egress network policies |
resourcesInit.command |
Command to be executed in the resource init container |
extraPVCs |
Extra volume claims are shared across all deployments |
ingress.annotations |
Additional annotations for the ingress resource |
env.extraEnvs |
Provide extra global environment variables |
asi.env.extraEnvs |
Provide extra environment variables for ASI |
asi.frontendService.extraPorts |
Extra ports for service |
asi.frontendService.annotations |
Additional annotations for the ASI front-end service |
asi.backendService.portRanges |
Port ranges for service |
asi.backendService.annotations |
Additional annotations for the ASI backend service |
asi.ingress.internal.extraPaths |
Extra paths for ingress resource |
asi.ingress.external.extraPaths |
Extra paths for ingress resource |
asi.extraPVCs |
Extra volume claims |
asi.extraInitContainers |
Extra init containers |
asi.extraLabels |
Extra labels |
asi.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
asi.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
asi.podAffinity.requiredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAffinity.requiredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
asi.podAffinity.preferredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAffinity.preferredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
asi.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity" |
asi.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity" |
asi.topologySpreadConstraints |
Topology spread constraints to control how pods are spread across your cluster among failure-domains such as regions, zones, nodes, and other user-defined topology domains. |
asi.tolerations |
Tolerations to pods, and allow (but do not require) the pods to schedule onto nodes with matching taints. |
asi.extraSecrets |
Extra secrets. `mountAsVolume` if `true`, the secrets will be mounted as a volume on `/ibm/resources/<secret-name>` folder else they will be exposed as environment variables. |
asi.extraConfigMaps |
Extra configmaps. `mountAsVolume` if `true`, the configmap will be mounted as a volume on `/ibm/resources/<configmap-name>` folder else they will be exposed as environment variables. |
asi.hostAliases |
Host aliases to be added to pod /etc/hosts |
asi.performanceTuning.override |
Override Performance tuning parameters with a user specified value if required |
asi.networkPolicies.ingress.customPolicies |
Configure custom ingress network policies for ASI pods |
asi.networkPolicies.egress.customPolicies |
Configure custom egress network policies for ASI pods |
ac.env.extraEnvs |
Provide extra environment variables for AC |
ac.frontendService.extraPorts |
Extra ports for service |
ac.frontendService.annotations |
Additional annotations for the AC frontend Service |
ac.backendService.ports |
Ports for service |
ac.backendService.portRanges |
Port ranges for service |
ac.backendService.annotations |
Additional annotations for the AC backend Service |
ac.ingress.internal.extraPaths |
Extra paths for ingress resource |
ac.ingress.external.extraPaths |
Extra paths for ingress resource |
ac.extraPVCs |
Extra volume claims |
ac.extraInitContainers |
Extra init containers |
ac.extraLabels |
Extra labels |
ac.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
ac.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
ac.podAffinity.requiredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAffinity.requiredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
ac.podAffinity.preferredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAffinity.preferredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity" |
ac.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
ac.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
ac.topologySpreadConstraints |
Topology spread constraints to control how Pods are spread across your cluster among failure-domains such as regions, zones, nodes, and other user-defined topology domains. |
ac.tolerations |
Tolerations to pods, and allow (but do not require) the pods to schedule onto nodes with matching taints. |
ac.extraSecrets |
Extra secrets. `mountAsVolume` if `true`, the secrets will be mounted as a volume on `/ibm/resources/<secret-name>` folder else they will be exposed as environment variables. |
ac.extraConfigMaps |
Extra configmaps. `mountAsVolume` if `true`, the configmap will be mounted as a volume on `/ibm/resources/<configmap-name>` folder else they will be exposed as environment variables. |
ac.hostAliases |
Host aliases to be added to pod /etc/hosts |
ac.networkPolicies.ingress.customPolicies |
Configure custom ingress network policies for AC pods |
ac.networkPolicies.egress.customPolicies |
Configure custom egress network policies for AC pods |
api.env.extraEnvs |
Provide extra environment variables for API |
api.frontendService.extraPorts |
Extra ports for service |
api.frontendService.annotations |
Additional annotations for the API frontend Service |
api.extraPVCs |
Extra volume claims |
api.extraInitContainers |
Extra init containers |
api.extraLabels |
Extra labels |
api.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
api.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
api.podAffinity.requiredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAffinity.requiredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
api.podAffinity.preferredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAffinity.preferredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
api.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
api.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity and Tolerations". |
api.topologySpreadConstraints |
Topology spread constraints to control how Pods are spread across your cluster among failure-domains such as regions, zones, nodes, and other user-defined topology domains. |
api.tolerations |
Tolerations to pods, and allow (but do not require) the pods to schedule onto nodes with matching taints. |
api.extraSecrets |
Extra secrets. `mountAsVolume` if `true`, the secrets will be mounted as a volume on `/ibm/resources/<secret-name>` folder else they will be exposed as environment variables. |
api.extraConfigMaps |
Extra configmaps. `mountAsVolume` if `true`, the configmap will be mounted as a volume on `/ibm/resources/<configmap-name>` folder else they will be exposed as environment variables. |
api.hostAliases |
Host aliases to be added to pod /etc/hosts |
api.networkPolicies.ingress.customPolicies |
Configure custom ingress network policies for API pods |
api.networkPolicies.egress.customPolicies |
Configure custom egress network policies for API pods |
purge.env.extraEnvs |
Provide extra environment variables for the purge job |
purge.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |
purge.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution |
k8s PodSpec.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution. Refer section "Affinity". |