Deployment
Social Registry Deployment
The instructions here pertain to the deployment of all Social Registry 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 available:
Base infrastructure along with domain name and certificates for Rancher and Keycloak
Domain names and certificates specific to Social Registry.
Nginx server configuration
A conf file is created under
sites-enabled
on Nginx containing the above SSL certs. See sample conf file.
Namespace is created (On Rancher a namespace is created under a Project).
Project Owner permission on the namespace of OpenG2P cluster.
Gateways are setup for the domain as given here Istio namespace setup.
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 "openg2p" and target HTTPS Index URL as https://openg2p.github.io/openg2p-helm/rancher and click Create.
Select the namespace in which you would like to install Social Registry, from the namespace filter on the top-right.
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 Versions" under Preferences under Helm Charts.
Navigate to Apps->Charts page on Rancher. You should see "OpenG2P Social Registry" Helm charts listed.
Click on "Part 1" Helm chart, select the version to be installed, and click Install.
On the next screen, choose a name for installation, like
social-registry
. Select the checkbox Customise Helm options before 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:socialregistry.dev.openg2p.org
andodk-sr.dev.openg2p.org
, etc.<appname>
is arbitrary - default names have been provided.Keycloak Base Url is your organization-wide Keycloak URL. (Refer to Keycloak installation).
Create a Keycloak client,
OIDC Client details are asked. Refer to Keycloak Client Creation guide.
To change the docker image from the default image, click on Edit YAML table and update the following section in Helm:
To pull docker from a private repository on Docker Hub, follow guide here.
Click Next to reach Helm Options page. Disable
wait
flag. Click on Install.Navigate back to Apps->Charts page on Rancher. Choose "Part 2" Helm chart. Select the same version as for "Part 1", and click Install.
On the next screen, give the same installation name as for "Part 1" but with suffix
-p2
, likesocial-registry-p2
. Select the same namespace as "Part 1". Select the checkbox Customise Helm options before install, and click Next.Repeat steps 9 & 10.
Wait for all 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
.
TBD
Post Installation
Keycloak
Assigning roles to users
Create Keycloak client roles for the following components and assign them to users:
Component | Role name |
---|---|
OpenSearch Dashboards for logging |
|
OpenSearch Dashboards for Reporting |
|
Kafka UI for Reporting |
|
Apache Superset |
|
Minio Console |
|
Assigning roles to clients
For Social Registry 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