Hub Enterprise explained - Deployment to OpenShift
This article describes the Hub Enterprise components and a reference deployment to OpenShift
Description
OpenLegacy Hub (OL Hub) provides a simple, fast, and cost-effective
way to expose data from legacy systems as microservice-based APIs
and implement your business logic.
This article describes the architecture, components, and processes for
using OpenLegacy Hub Enterprise and microservices deployment on
OpenShift environment.
(As an example, off course they can be deployed on Kubernetes or other environments)
OpenLegacy Hub Enterprise Setup
![Components Diagram](https://files.readme.io/53a50b548a7a2c7d8fa47e3bfa543412385568b4dc2b5237368198684ad612b2-image.png)
Components Diagram
Components
Server
- OL Hub Enterprise
Purpose:- Develop Projects to expose transactions and screens from legacy systems as microservices-based APIs.
Requested resources: CPU 1000m, Mem: 1024M, Storage 4GB.
Image: OL Hub Enterprise image is supplied with OL Hub Enterprise installer bundle.
- Develop Projects to expose transactions and screens from legacy systems as microservices-based APIs.
- PostgreSQL
Purpose:- Storage for OpenLegacy Hub user metadata (connections, modules, assets, projects, and methods)
- Storage for Keycloak server data.
Requested resources: CPU 1000m, Mem: 1024M, Storage 1GB.
Supported versions: 13+
Image: PostgreSQL v13 image is supplied with OL Hub Enterprise installer bundle.
/
Notes:- The database can run inside or outside OS cluster.
- It is possible to use an already existing installation of PostgreSQL.
- Keycloak
Purpose:- Used by OpenLegacy Hub for Identity and Access Management.
- Can be used as a local DB or integrated with external identity providers such as Active Directory.
Requested resources: CPU 1000m, Mem: 1024M, Storage not required.
Image: Keycloak v22 image is supplied with OL Hub Enterprise installer bundle.
Supported versions: 16+
Notes:- Keycloak can run inside or outside the cluster. In the supplied helm-chart it runs inside the cluster.
- It is possible to use an already existing installation of Keycloak.
Developer
- OL Hub Web UI
Purpose: OpenLegacy Web UI application to develop Open Legacy Projects. - OL CLI
Purpose: OpenLegacy command-line interface to develop and deploy OL projects
DevOps
- OL CLI
Purpose: OpenLegacy command-line interface to develop and deploy OL projects. - OpenShift CLI
Purpose: OpenShift command-line interface to create applications and manage OpenShift Container
projects.
Initial Setup
- Run OL helm-chart installer script (supplied with OL Hub Enterprise installer bundle).
- From The OL- Hub UI
a. Define Group and Users (RBAC).
b. Define connection profiles to connect to the backend (e.g. Mainframe (dev/test/prod)). - Push OL docker images to the OpenShift container registry.
Processes
Development
- Modules - A module contains the resources and the configuration data needed to extract one or
multiple assets from a single backend data source. - Assets - Representation of one legacy business operation (e.g. CICS Transaction).
- Projects – A project contains one or more modules and a contract with methods to expose as
APIs. - Methods – definition of API (input/output), execution of assets, and fields mappings.
Deployment of project (microservice) to test/prod
- Create Tag (OL Hub / OL CLI) - Create a Tag (version) for the project.
- Export project (OL CLI) - Export project metadata (OPZ file) for the new version.
Note: this step is not required if you choose to load the project metadata directly by the
deployed container on loading. - Deploy (OpenShift CLI) – Deploy the relevant OL image (e.g. CICS, 3270) referring to
the project (OPZ file or project name with tag) and the relevant connection profile.
Requested resources: may defer between connectors, project definitions, and required TPS.
Here is an example from the lab:
COBOL-CICS container with 75 TPS of 1k message size requires:
CPU 800m, Mem: 500Mb.
![OpenLegacy Services Deployment in Test/Production](https://files.readme.io/b97954540bf1320d3fa5f1b8969d4375c38c2d720b7ddc28789592cca97f3cab-image.png)
OpenLegacy Services Deployment in Test/Production
- Each container runs independently and represents an OpenLegacy project exposed as a microservice.
- A microservice contains one or more APIs that execute CICS transactions using an OL Adapter over the
Mainframe TCP/IP Service. - Logs sent to Splunk by OpenShift cluster.
Updated 3 months ago