Microservices
Updated On 24 March 2024 | Min(s) read

K8 images

The K8 Helm packs would be available as a separate bundle in the package provided by distribution. However, this section can be referred to understand and generate the K8 Helm images.
Following are the steps to deploy K8 images in Mongo DB and PostgreSQL.

Mongo DB

In this deployment approach, the holdings-helm-pack-mongo-<release_number>.zip is used to load the docker images and then deploy the service in Kubernetes cluster.

Prerequisite

Following are the two prerequisites before starting the Mongo scripts.

  1. Mongo database scripts are executed and the database is up and running.
  2. Active Kafka instances that need to be configured for transact, event processor and generic ingestion (communicating with Account Aggregation) respectively.

Install a standalone DB Name DB server manually.

Alternatively, follow these steps to execute the database startup scripts (available in K8 on-premise package) to install and start the database server automatically.

  1. Navigate to the folder where the database startup scripts can be found (Holdings-Docker\k8\on-premise\db).
  2. Execute the following database scripts.
    • For Windows: start-mongodb-scripts.bat
    • For Linux: start-mongodb-scripts.sh
  3. Execute kubectl get all -n <namespace> to see all the resources for the particular database.

Deployment

Follow the below steps to start the service:

  1. Navigate to the extracted holdings-helm-pack-mongo-<release_number>.zip.
  2. Execute the file create_namespace.sh in Linux shell.
  3. Navigate to the images folder where the service, ingester and database images are available and load the images on the docker using the command docker load --input <image-name>.
  4. Navigate to the folder where service startup scripts are available and open the file start-holdings-mongo.bat / start-holdings-mongo.sh.
  5. Configure DB and Kafka connection parameters as per the setup done as part of prerequisite step.
  6. Execute the respective startup script as required.
    • For Windows: start-holdings-mongo.bat
    • For Linux: start-holdings-mongo.sh
  7. Execute kubectl get all -n holdings to see all the resources for the particular Holdings Microservice.

Test the APIs after the successful deployment.

URL of API's follows the below structure,
Base Path: http://<DOMAIN_NAME>/<context-root>/api/<version>/
For Example: http://localhost:8304/ms-holdings-api/api/v1.0.0/
The resource path of the endpoint can be found in the swagger document.
A sample endpoint of a holdings can be http://localhost:8302/ms-holdings-api/api/v1.0.0/holdings/accounts/transactions

Undeployment

Execute the following files to stop the service.

  • For Windows: stop-holdings-mongo.bat
  • For Linux: stop-holdings-mongo.sh

PostgreSQL

In this deployment approach, the holdings-helm-pack-postgres-<release_number>.zip is used to load the docker images and then deploy the service in Kubernetes cluster.

Prerequisite

Following are the two prerequisites before starting the PostgreSQL scripts.

  1. PostgreSQL database scripts are executed and the database is up and running.
  2. Active Kafka instances that need to be configured for transact, event processor and generic ingestion (communicating with Account Aggregation) respectively.

Install a standalone PostgreSQL DB server manually.

Alternatively, follow these steps to execute the database startup scripts (available in K8 on-premise package) to install and start the database server automatically.

  1. Navigate to the folder where the database startup scripts can be found (Holdings-Docker\k8\on-premise\db).
  2. Execute the following database scripts.
    • For Windows: start-postgresqldb-scripts.bat
    • For Linux: start-postgresqldb-scripts.sh
  3. Execute kubectl get all -n <namespace> to see all the resources for the particular database.

Deployment

Follow the below steps to start the service:

  1. Navigate to the extracted holdings-helm-pack-postgres-<release_number>.zip.
  2. Execute the file create_namespace.sh in Linux shell.
  3. Navigate to the images folder where the service, ingester and database images are available and load the images on the docker using the command docker load --input <image-name>.
  4. Navigate to the folder where service startup scripts are available and open the file start-holdings-postgresql.bat / start-holdings-postgresql.sh.
  5. Configure DB and Kafka connection parameters as per the setup done as part of prerequisite step.
  6. Execute the respective startup script as required.
    • For Windows: start-holdings-postgresql.bat
    • For Linux: start-holdings-postgresql.sh
  7. Execute kubectl get all -n holdings to see all the resources for the particular Holdings Microservice.

Test the APIs after the successful deployment.

URL of API's follows the below structure,
Base Path: http://<DOMAIN_NAME>/<context-root>/api/<version>/
For Example: http://localhost:8304/ms-holdings-api/api/v1.0.0/
The resource path of the endpoint can be found in the swagger document.
A sample endpoint of a holdings can be http://localhost:8302/ms-holdings-api/api/v1.0.0/holdings/accounts/transactions

Undeployment

Execute the following files to stop the service.

  • For Windows: stop-holdings-postgresql.bat
  • For Linux: stop-holdings-postgresql.sh

In this topic

Copyright © 2020- Temenos Headquarters SA

Published on :
Tuesday, September 2, 2025 1:05:44 PM IST