Registry Installation

The instructions here pertain to the deployment of Registry and associated components on the Kubernetes cluster using Registry Helm chart. All the components are installed in the same namespace.

Prerequisites

Before you deploy, make sure the following are in place:

  • Infrastruction setup is completed

  • Environment has been setup with common resources installed.

  • ✅ Domain name registry.<your environment>.<your domain name> (e.g. registry.qa.openg2p.org) is available along with SSL certificate for the domain (the wild certificate should have already been loaded during Infrastructure setup)

  • Project Owner access on the OpenG2P namespace

Installation using Rancher UI

  1. Log in to Rancher admin console.

  2. Select your cluster.

  3. Under Apps -> Repositories click on Create to add a repository.

  4. Provide Name as openg2p and target HTTPS Index URL as https://openg2p.github.io/openg2p-helm/rancher and click Create.

  5. 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.

  6. Select the namespace in which you would like to install Registry, from the namespace filter on the top-right.

  7. Navigate to Apps->Charts page on Rancher. You should see OpenG2P Registry Helm charts listed.

  8. Proceed to Install OpenG2P Registry chart select the latest version to be installed, and click Install.

  9. On the next screen, choose a name for installation, like registry. Select the checkbox Customise Helm options before install, and click Next.

  10. Go through each app's configuration page, and configure the following:

    1. 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, etc. <appname> is arbitrary - default names have been provided.

    2. For production deployments, if the PostgreSQL server is run directly (natively) on the VM. for PostgreSQL Hostname specifiy host.docker.internal which is proxy for localhost as from within Docker of Odoo localhost will not be recognized. If you are running PostgreSQL on a separate machine, specify the Host domain or IP.

    3. Keycloak Base Url is your organization-wide Keycloak URL. (Ex: keycloak.<your domain>.org)

    4. OIDC Client details are asked. Create Keycloak Client, refer to Keycloak Client Creation guide.

    5. To change the docker image from the default image, click on Edit YAML table 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.

      image:
          pullPolicy: Always
          repository: openg2p/openg2p-social-registry-odoo-package
          tag: 17.0-develop-social-registry
  11. To pull docker from a private repository on Docker Hub, follow guide here. Note: This step is required only if you have separate private docker image to be deployed or else you can go with default one skip this step.

  12. Click Next to reach Helm Options page. Disable wait flag. Click on Install.

  13. Wait for all the pods to get into Running state. This may take several minutes.

Post Installation

Odoo

  • Activate the Registry Odoo module after logging into Odoo (TBD).

Accessing the registry

On the browser connect to URL

https://<registry domain name>/web/login?db=registry_db

Examples:

TBD: The database in the above URL should not be required. This issue is to be fixed. See issue below:

Investigate why Odoo is taking us to DB selector page - something to do with config
G2P-3299In ProgressPuneet Joshi

Tear down

To completely cleanup Registry installation, note the following: Helm uninstall will not delete the database and secrets created. Secret for user does not get deleted (and rightly so). If you re-run the Helm while database still exists, it just brings up Odoo without any issues - it does not re-initalize the database.

To tear down completely:

  1. Helm uninstall via command line or Rancher (Apps -> Installed Apps --> Delete)

  2. Delete registry secret in the namespace

  3. Drop registry_db and user from Postgres

    1. Login into Postgres as admin (via port fowarding or directly from Rancher). Use the postgres-password key in openg2p-commons-postgresql secret to get the password

    2. drop database registry_db;

    3. drop role registry_db_user;

  4. Drop mosip-kernel database:

    1. drop database mosip-kernel

TBD: Step 4 will be moved to openg2p-commons, so this won't be required here.

Last updated

Was this helpful?