This article provides guidance on migrating from previous versions to the latest 6.3 version.
Prerequisites for Migration
Before initiating the migration process, ensure that the following prerequisites are met:
Supporting Application Configurations
-
Upgrade Infrastructure (Optional)
Ensure that the applications and the operating system support the upgraded amount of RAM and have sufficient space on the new SSD for optimal performance.
-
Upgrade Database Version
Upgrade the database to the below-mentioned versions for software performance and security. The previous versions of MySQL are no longer supported.
- Upgrade MySQL Version to 8.0.36 or higher. For more information, refer to
- Upgrade MariaDB Version to 10.6.16+ or 10.11.6+.
-
Pre Upgradation
-
Take Database Backup
Ensure a comprehensive backup of the Database (MySQL or MariaDB) is taken. Refer to the following document for backup instructions. For more information, OvalEdgeDB Backup Process
-
Table Row Count Validation
Validate the row count of all database entities to confirm the success of the migration process. Detailed instructions are available in the provided document. DB Migration Checklist
-
-
Externalizing oasis.properties
Externalizing oasis.properties on Windows involves configuring Tomcat as a service to enable external accessibility. For more information, refer to the document below: Externalizing Oasis Properties for Tomcat in Windows.
Externalizing oasis.properties on Linux: On Linux, the externalization of oasis.properties requires a strategic approach to key settings.
-
Externalizing log4j.properties
Externalizing of log4j.properties is mandatory to overcome the logs writing into Catalina. For some of the customers, the space accumulates in the Tomcat folder. Refer to the document for detailed steps on Externalizing log4j.properties
-
Upgrade or Install ElasticSearch
Upgrade ElasticSearch to 8.0.x for improved search capabilities within the OvalEdge. Refer to the document for more information.
-
Upgrade Java Version (optional)
It is recommended that Java be upgraded to version 8U_xxx for optimal performance and compatibility. For more information, refer to Upgrading JRE and JDK on Windows.
-
Upgrade Tomcat Service Version
It is recommended that Tomcat be upgraded to version 9.0.x. For more information, refer to Upgrading Tomcat from 9.0.x to 9.0.83 with Step-by-Step Instructions.
Application Backups
Before commencing the migration, execute the following backup and validation procedures:
-
Take Application War, and Jars Backup
Take a backup of War files from Apache Tomcat > Webapps and Jars (csp libs). This step is critical to safeguard against any potential disruptions during the migration process.
-
Take a Backup of the Shared NFS Folder
Take a backup of the files present in the shared NFS repository.
-
Tomcat Server Backup & Preparation
Take a backup of the Tomcat server. Clearing these folders helps create a clean environment for the upcoming migration, minimizing the risk of conflicts. In the Tomcat server, empty the following folders:
-
Webapps folder
-
Temp folders (excluding Jar files). Please ensure that jar files are not removed by accident.
-
Logs folders
-
-
System Settings Backup
Take the backup of the system settings table from the ovaledge database in XLSX format to ensure the configured default settings are available to reflect in the new version.
Migration Process
For VM, the migration process involves downloading release artifacts links provided in the email. The procedure involves sequential tasks, such as downloading the war from the given link, configuring oasis.properties, and running the Tomcat service to reflect the latest changes. Furthermore, executing advanced jobs is necessary to observe the latest changes specific to certain functionalities.
War Replacement
- Download the war files from the provided email link.
- Once downloaded, go to the Tomcat directory, find the "Webapps'' folder, and copy the downloaded latest war file.
- This ensures the integration of the latest functionalities, improvements, and gap resolutions addressed in Release6.3 so that the OvalEdge application can function properly.
Connectors & Lineage/Jars Upgrade
- Download the Jar files using the link provided in the email.
- Replace the existing csplib / jars within the External Jars Directory > third_party_jars.
- Ensure that the csp library for standard connectors is updated.
- Ensure that the “oe-lineage jar” is updated.
- Update the csp library for big data connectors (client specific)
Setting oasis.properties in Tomcat
Within the VM, users can customize the oasis.properties in the External Property Directory file to meet their specific requirements, including database connectivity, security, authentication (SSO), Elasticsearch, management of external dependencies, and configuration storage in key vaults.
oasis.properties to Migrate from 6.0 to 6.3
Please make the changes below if oasis.properties is set up to read from an external location or if properties are configured in environment variables for Docker environments.
The “Keys” listed below are removed in Release6.1
- saml-metadata-type=url
- entity-base-islb=false
- entity-base-protocol=https
- entity-base-host=localhost
- entity-base-port=443
- entity-base-contextpath=/ovaledge
- entity-base-port-in-url=false
- spring.security.oauth2.tenantId=tenantId
There are few modifications to the existing values of keys
Key |
Previous Value |
New Value |
Note: The parameters below should be updated if moving from MySql to Mariadb. |
||
driverClassName |
com.mysql.cj.jdbc.Driver |
org.mariadb.jdbc.Driver (for MariaDB) |
url |
jdbc:mysql://localhost:3306/ovaledgedb?useUnicode=true&character_set_server=utf8mb4&useSSL=false |
jdbc:mariadb://localhost:3306/ovaledgedb?useUnicode=true&character_set_server=utf8mb4&useSSL=false |
read.url |
jdbc:mysql://localhost:3306/ovaledgedb?useUnicode=true&character_set_server=utf8mb4&useSSL=false |
jdbc:mariadb://localhost:3306/ovaledgedb?useUnicode=true&character_set_server=utf8mb4&useSSL=false |
Note: The parameters below need to be verified and updated in the oasis.properties with the new values, whether MySQL or Mariadb. |
||
db.max.connections |
40 |
30 |
read.db.max.connections |
60 |
40 |
spring.session.db.max.connections |
40 |
60 |
There are a few modifications to the existing keys, as mentioned in the following table
Existing Keys |
Renamed As |
azure.secretname.jdbcstring=jdbcstringurl |
secret.key.jdbcstring=jdbcstringurl |
azure.secretname.username=username |
secret.key.username=username |
azure.secretname.password=password |
secret.key.password=password |
azure.secretname.read.jdbcstring=readjdbcstringurl |
secret.key.read.jdbcstring=readjdbcstringurl |
azure.secretname.encryptdecryptkey=encryptdecryptkey |
secret.key.encryptdecryptkey=encryptdecryptkey |
azure.secretname.eshost=eshost |
secret.key.eshost=eshost |
azure.secetname.esport=esport |
secret.key.esport=esport |
azure.secretname.esprotocol=esprotocol |
secret.key.esprotocol=esprotocol |
azure.secretname.esusername=esusername |
secret.key.esusername=esusername |
azure.secretname.espassword=espassword |
secret.key.espassword=espassword |
The “Keys” listed below are newly introduced in Release 6.1.
New Key |
Value |
aws-secrets |
<true/false> |
aws-secretregion |
<aws region where the secret name exists> |
aws-secretname |
<secret name from which the parameters are read> |
hikari.connectionTimeout.in.seconds |
50 |
hikari.idleTimeout.in.minutes |
2 |
hikari.validationTimeout.in.seconds |
50 |
hikari.leakDetectionThreshold.in.seconds |
30 |
hikari.cachePrepStmts |
true |
hikari.prepStmtCacheSize |
250 |
hikari.prepStmtCacheSqlLimit |
2048 |
hikari.useServerPrepStmts |
true |
hikari.useLocalSessionState |
true |
hikari.rewriteBatchedStatements |
true |
hikari.cacheResultSetMetadata |
true |
hikari.cacheServerConfiguration |
true |
hikari.elideSetAutoCommits |
true |
Note: Refer to the AWS Secrets Manager Configurations article to learn more about the newly added keys.
oasis.properties to Migrate from 6.2 to 6.3
Please note that the following configurations are included in the Master DB Instance and the Read Replica Instance Sections.
Master DB Instance Section |
# Mysql 8.0.x Driver and Url for Azure Entra ID authentication #driverClassName=com.mysql.cj.jdbc.Driver #url=jdbc:mysql://localhost:3306/ovaledgedb?useUnicode=true&character_set_server=utf8mb4&useSSL=false&allowPublicKeyRetrieval=true&authenticationPlugins=com.azure.identity.extensions.jdbc.mysql.AzureMysqlAuthenticationPlugin # MariaDB 10.x.x Driver and Url for Azure Entra ID authentication #driverClassName=org.mariadb.jdbc.Driver #url=jdbc:mariadb://localhost:3306/ovaledgedb?useUnicode=true&character_set_server=utf8mb4&useSSL=false&authenticationPlugins=com.azure.identity.extensions.jdbc.mysql.AzureMysqlAuthenticationPlugin |
Read Replica Instance Section |
# MySQL 8.0.x Url for Azure Entra ID authentication #read.url=jdbc:mysql://localhost:3306/ovaledgedb?useUnicode=true&character_set_server=utf8mb4&useSSL=false&allowPublicKeyRetrieval=true&authenticationPlugins=com.azure.identity.extensions.jdbc.mysql.AzureMysqlAuthenticationPlugin # MariaDB 10.x.x Url for Azure Entra ID authentication #read.url=jdbc:mariadb://localhost:3306/ovaledgedb?useUnicode=true&character_set_server=utf8mb4&useSSL=false&allowPublicKeyRetrieval=true&authenticationPlugins=com.azure.identity.extensions.jdbc.mysql.AzureMysqlAuthenticationPlugin |
Tomcat Service Restart
Restart the Tomcat services to apply and update the changes and initiate the migration successfully.
Post Migration Checks
Tables & Row Count Validation
Conduct a thorough verification of data row counts in the post-migration environment.
Ensure that the actual counts match the pre-upgradation counts to identify and rectify any discrepancies. This will serve as a key indicator of a successful migration.
Verify Application
Verify that the latest enhancements and features are successfully deployed in the application post-migration.
Run the Migration Advance Jobs
This involves running the Migration Advance Jobs, which are essential processes for ensuring the proper functioning of OvalEdge in its upgraded state. Detailed instructions are in Appendix A of the migration documentation.
Verify System Settings
The migration process does not mandate adjustments to any system settings. However, it's important to note that for Release6.3, new system settings have been introduced, some have been deprecated, and others have undergone modifications. For more information, please refer to the appendices below.
Verify Data Row Counts
Conduct a thorough verification of data row counts in the post-migration environment.
Ensure that the actual counts match the pre-migration counts to identify and rectify any discrepancies. This is a key indicator of a successful migration.
Appendix A: Migration Advanced Jobs
While migrating to Release6.3, the following advanced jobs must be run
Run the same advanced job that was run for Release6.2 migration and additionally run the below listed advanced job to migrate to Release6.3.
A1: 6.3 Migration Advanced Job Checklist
Advanced Job Name |
Module Name |
Description |
INSERT_NOTIFICATION_PREFERENCE |
User Notification Preferences Manager |
This job enables the addition of new modules and submodules in the notification preference table of the My Profile section for all users. |
METADATA_CURATION_SCORES_TO_DENORMALIZED_TABLES |
Meta Data Curation Scores |
This migration job helps to calculate the metadata curation score for existing objects in version 6.2 and saves the metadata curation score values in denormalized tables(ext) associated with the objects. |
UPDATE_CODE_SORTORDER |
Helpful Resources |
This job helps to migrate helpful resources from 6.2 to 6.3. It lets users move the previously added helpful resources using the drag-and-drop option in the updated version. Note: This job sorts the order of existing helpful resources for customers migrating from 6.1/6.2 to 6.3. A fresh installation does not require this job. |
RestoreBusinessGlossaryObjectsSourceInfo |
Business Glossary |
This job helps to migrate source information for associated objects in the business glossary for previously added objects. Note:
|
QUESTIONWALL_MIGRATION |
QuestionWall Migration |
This job helps to migrate the questions and answers (replies) previously found in Question Wall > Inbox to Question Wall > General Wall. |
LOAD_DATA |
Data Stories Migration |
This Advanced Job is designed to transfer Data Stories from one environment to another. It lets users download Data Stories from the source environment and upload them to the target environment using the same job. Attributes: Attr1: Specify ""Upload"" or ""Download"" based on the action. For Downloads, use Attr1 = ""Download""; for Uploads, use Attr1 = ""Upload"". Attr2 - Enter File Server Connection Id (optional). Attr3 - Enter the file path. Attr4 - Enter Story Zone Names or IDs with comma-separated values (optional) Attr5 - Enter Story Names or IDs with Comma-separated values (optional). |
POWERBI_MIGRATION |
Reports |
This job helps move the existing report columns and their curated information to their related report columns, dataset columns, and page columns, which in turn move to report columns. Note: This job must run if the client has a PowerBI connection created in versions before 6.3. |
FILL_CRON_AND_ASSOCIATION_DESC |
Schedule |
This job helps to include the filter icon options for the Schedule > Cron type column in the administration and improves the search functionality in the Data Catalog > Codes > Associations > Associate objects column. |
PROJECT_STATUS_SYNC |
Projects |
This advanced job syncs old and new project statuses and stats in the updated version, which is required for migrating the current application to version 6.0. Attributes: No attributes needed. |
Appendix B: New System Settings Added in Release6.3
The latest release introduces new configurations that provide users with even greater control over the application's behavior. The newly added configurations are shown below.
Key |
Description |
assetmanager.virusscan.enabled |
Configure to enable virus scan for the uploaded files. Parameters: The default value is False. If set to True, virus scan on files is enabled. If set to False, virus scan on files is disabled. |
assetmanager.storage.service |
Configure to upload a file from the Governance Apps and store it in the mentioned storage service. Parameters: The default value is Empty. Enter the storage service name. |
assetmanager.storage.connId |
Configure to enter the connection ID of the storage service. Parameters: The default value is Empty. Enter the connection ID. |
assetmanager.storage.service.bucketname |
Configure to enter the bucket name of the storage service. Parameters: The default value is Empty. Enter the storage service bucket name. |
oe.crawl.excludeTables |
Configure to hide the tables. Parameters: The default value is Empty. Enter the table names separated by a comma. |
smtp.oauth2.tenantid |
Enter Tenant ID for OAuth Token Validation and SMTP Server Authentication. Parameters: By default, this setting is Empty. Enter a tenant ID in the field provided to validate an OAuth token and set up SMTP Server Authentication. |
smtp.oauth2.clientid |
Enter Client ID for OAuth Token Validation and SMTP Server Authentication. Parameter: By default, this setting is Empty. Enter a Client ID in the field provided to validate an OAuth token and set up SMTP Server Authentication. |
smtp.oauth2.clientsecret |
Enter Client Secret for OAuth Token Validation and SMTP Server Authentication. Parameter: By default, this setting is Empty. Enter a Client Secret in the field provided to validate an OAuth token and set up SMTP Server Authentication. |
smtp.oauth2.cloud.name |
Enter Cloud Name for OAuth Token Validation and SMTP Server Authentication. Parameter: By default, this setting is Empty. Enter a Cloud Name in the field provided to validate an OAuth token and set up SMTP Server Authentication. |
Copyright © 2024, OvalEdge LLC, Peachtree Corners, GA USA