Deployment
PBMS Deployment
The instructions here pertain to the deployment of all PBMS and associated components on the Kubernetes cluster using Helm charts. All the components are installed in the same namespace. The deployment may be achieved by the following methods:
Prerequisites
Before you deploy, make sure the following are in place:
Kubernetes cluster is up and running
Nginx server is configured (skip this for OpenG2P-in-a-box)
Namespace is created (via Rancher under a Project)
Project Owner access on the OpenG2P namespace
Istio gateway is set up in the namespace
Installation using Rancher UI
Log in to Rancher admin console.
Select your cluster.
Under Apps -> Repositories click on Create to add a repository.
Provide Name as
openg2pand target HTTPS Index URL as https://openg2p.github.io/openg2p-helm/rancher and click Create.
To display prerelease versions of OpenG2P apps, click on your user avatar in the upper right corner of the Rancher dashboard. Then click on
Include Prerelease Versionsunder Preferences under Helm Charts.
Select the namespace in which you would like to install PBMS, from the namespace filter on the top-right.
Navigate to Apps->Charts page on Rancher. You should see
OpenG2P PBMSHelm charts listed.
Proceed to Install
OpenG2P PBMSchart select the latest version to be installed, and click Install.On the next screen, choose a name for installation, like pbms. Select the checkbox
Customise Helm optionsbefore install, and click Next.Go through each app's configuration page, and configure the following:
Configure a hostname for each app in the following way.
<appname>.<base-hostname>, where base hostname is the wildcard hostname chosen during Istio namespace setup. Example:pbms.dev.openg2p.orgetc.<appname>is arbitrary - default names have been provided.Keycloak Base Url is your organization-wide Keycloak URL. (Ex: keycloak.<your domain>.org)
OIDC Client details are asked. Create Keycloak Client, refer to Keycloak Client Creation guide.
In the Registry Settings section:
Registry DB: Provide the PostgreSQL database name for Registry
Registry DB User: Enter the DB username
Registry DB Secret: Specify the Kubernetes secret name containing the DB password
Registry DB Secret Key: Enter the key name within the secret containing the user password
To change the docker image from the default image, click on
Edit YAMLtable and update the following section in Helm. Note: This step is required only if you have separate docker image to be deployed or else you can go with default one skip this step.
To pull docker from a private repository on Docker Hub, follow guide here. Note: This step is required only if have separate private docker image to be deployed or else you can go with default one skip this step.
Click Next to reach Helm Options page. Disable
waitflag. Click on Install.Wait for all the pods to get into Running state. This may take several minutes.

Installation using the command line
Install the following utilities on your machine:
kubectl,istioctl,helm,jq,curl,wget,git,bash,envsubst.
To Be Done
Post Installation
Keycloak
Assigning roles to users
Create Keycloak client roles for the following components and assign them to users:
Assigning roles to clients
For PBMS to be able to access Keymanager APIs, create a realm role in Keycloak with the name "KEYMANAGER_ADMIN" and assign this as a service account role to the Social Registry Keycloak client.
Odoo
Follow with Odoo post-install guide to activate Odoo modules.
Last updated
Was this helpful?

