Installation Instructions
Deploying and configuring a Payment Hub EE
Short Version
Copy
helm repo add g2p-sandbox-1-5 https://fynarfin.io/images/ph-ee-g2psandbox-1.5.0/
helm install my-ph-ee-g2psandbox g2p-sandbox-1-5/ph-ee-g2psandbox --version 1.5.0
ElasticSearch and kibana Secrets are created by Post_Installation_job within the helm chart
BPMN will be uploaded within the same Kubernetes job
Copy
helm test g2p-sandbox --namespace paymenthub || echo test
Installation overview
The Payment Hub EE is deployed using Helm charts (the Kubernetes package manager, see https://helm.sh/ ), so for a successful deployment one needs a basic understanding of how Helm charts work in general.
The payment hub ships with 2 Github repositories related to installation: the first one is https://github.com/openMF/ph-ee-env-template - this repo contains the Environment Template, which can be utilized as the base of a new environment setup. and the second is https://github.com/openMF/ph-ee-env-labs - this repo holds a couple of sample environments with different configuration values in the values file. This repo mainly overwrites the values if required to implement specific configuration values. eg: ingress enable/disable, host values, image etc. and this chart has a dependency on a ph-ee-engine chart from the base chart( https://github.com/openMF/ph-ee-env-template )
https://github.com/openMF/ph-ee-env-labs repo has secrets for Kibana and Elasticsearch which will create a secret from make file using a command make secrets
Installed components
The images are pulled from publicly readable DockerHub repositories for different microservices - (https://hub.docker.com/repositories/openmf )
Depending on the actual configuration, the payment hub's Helm chart installs the following software components:
PH-EE Channel Connector
PH-EE-Bulk Processor
PH-EE-Identity Account Mapper
PH-EE-Vouchers
PH-EE Operations App (incorporating the PH-EE Identity Provider too)
PH-EE Operations MySQL database
PH-EE Operations Web
PH-EE-Message Gateway
PH-EE-Notifications
PH-EE-Importer RDBMS
PH-EE Elasticsearch
PH-EE ES importer
PH-EE Kibana
PH-EE-Zeebe Ops
Zeebe microservice orchestration engine
Zeebe brokers
Gateway service
Elasticsearch
Kibana
Zeebe Operate monitoring UI
PH-EE-Mock Payment Schema
PH-EE AMS Mifos Connector
PH-EE Mojaloop Connector
PH-EE-GSMA Connector
PH-EE-PH Connector
Certainly all these components have various Kubernetes objects (ReplicationSets, Services, Ingresses, etc). The Helm chart wraps all this complexity into a single package and allows a single-command deployment.
First deployment
Deploying the Helm chart
For the first deployment attempt, we suggest taking one of the sample Lab Environments for a test.
Deploying any of them is as simple as cloning the Labs repository, changing the directory to eg. https://github.com/openMF/ph-ee-env-template/tree/v1.11.0/helm/g2p-sandbox and executing the command
helm install <release-name> -n <namespace>.
, where release name is freely chosen, eg.ph-ee-g2p-sandbox
, in this case.[Note: If you do not specify the Namespace, the helm install will execute in default Namespace]
Note: The tag in the URL is pointing to v1.11.0 of ph-ee-engine base chart. Make sure that you are installing the latest released version(version control image) image for the chart and not the latest unreleased version of the chart.
Upgrading an installation with changed or updated configuration parameters is possible with executing the command
helm upgrade -f <Chart>
<release-name> <Values_file>-n <namespace>
.Sample command for helm deployment:
helm upgrade -f helm/g2p-sandbox/values.yaml g2p-sandbox helm/g2p-sandbox --install --create-namespace --namespace paymenthub
To delete/remove the Release from Namespace execute the command
helm uninstall <release-name> -n namespace