Question
How do I migrate an HVR hub to a new server?
Environment
Local Data Processing
Answer
This article provides the procedural steps for an HVR Administrator to migrate their current HVR Hub to a new server. It assumes that moving the Hub will not impact any agent installation or connection to any location.
Applies to
The steps in this document apply to migrating an HVR Hub from or to Windows or Linux/UNIX platforms. These procedures are for migrations, they are not intended for HVR upgrades. Instructions for upgrading an HVR instance in place can be found in the online documentation pages.
- This article applies to version v5.5.0
- This article does not move information stored in the HVR Statistics tables
- This article does not address generating or using new SSL certificate information
- This article does not address any AgentPlugIn Actions that references a custom file path or any other environment variable that may reference a custom file path
Scenario
At some point, your HVR Administrator might need to upgrade the server where the HVR Hub is installed. This might be due conditions such as the old hardware is no longer supported, they want to move to a server with an upgraded or different operating system or faster storage drives, or they wish to move the server for a variety of other reasons. It this case, the administrator has been given a task to stop the replications services on the Hub so they can move (aka migrate) all the replication objects — locations, channel definitions, jobs, schedules, and maintenance tasks to the new server. Consider this to be a "lift and shift" type of operational task. The result is HVR replication services are now running on a new HVR Hub server without losing any transactional data during the migration with minimal downtime.
Prerequisites
-
Make sure you read the compatibility section of the HVR Release Notes to ensure that HVR is compatible with the new server you selected to be the HVR Hub.
-
Make sure you download the HVR installation distribution from the HVR product download site for your specific operating system in advance of performing any steps to reduce the outage time during the migration. HVR Download site: +https://www.hvr-software.com/account/+
-
Make sure you have already installed the database that will serve as the new HVR repository and created a schema/database/user that has the same name as the previous HVR repository prior to performing the migration steps.
Note: this document does not cover steps that involve renaming your repository schema/user during the migration. Changing the owner of the HVR Catalogs impacts path statements in the router folders that requires additional steps not covered in this document.
-
If installing the Hub on a Windows Server, make sure you have installed Perl. (ref:
– Perl download site: http://strawberryperl.com
-
Review the HVR Requirements page for the specific new operating system for the new Hub.
– For Windows: https://www.hvr-software.com/docs/Requirements_for_Windows
– For UNIX/Linux: https://www.hvr-software.com/docs/Installing_HVR_on_Unix_or_Linux
-
If you are moving your Hub to Azure, make sure you read the section on installing HVR on Azure
– Ref: https://www.hvr-software.com/docs/Installing_HVR_on_Azure
Overview
- Prepare the new HVR Hub
- Shutdown old HVR Hub
- Migrating stateful information from the old HVR Hub server to the new HVR Hub server
- Deploy and start the new HVR Hub
Steps
The following are detailed steps to migrate your Hub to a new server with minimal downtime.
Prepare the new HVR Hub
-
Install HVR on the new Hub server
– Ref: https://www.hvr-software.com/docs/Installing_and_Upgrading_HVR
-
Copy the HVR License key from the old server to the new server
-
License keys are files located in the <hvr_home>/lib directory with a *.lic file extension.
-
Some license keys were generated with a unique HVR Hub fingerprint matching your older server. If a license key contains a fingerprint, they will not be usable on the new server. To determine if your license includes a fingerprint, view the contents of the file to see if your key includes a line with # Hub fingerprint. If your key is bound to a unique server fingerprint, please contact technical support to request a new license key.
-
Here is an example of a key that includes a fingerprint.
-
-
While the default filename is hvr.lic, many sites have multiple license keys, so make sure you copy all files with a *.lic file extension as and transfer them to the new server to the <hvr_home>/lib directory.
-
Start the HVR Remote Listener on the new server;
-
Register the Hub
-
Launch the HVR User Interface
-
Navigate to Register Hub using the menu: File > Register Hub
-
Enter the details that are specific to connect to your HVR Hub server, which includes:
-
HVR Remote Listener server node, port, and login information
-
Repository Class
-
Database Connection
-
-
-
Migrate your HVR Location definitions from the old HVR Hub to new HVR Hub
-
Export your Location Definitions by right-clicking on your old Hub, and select Export Catalogs…
– In the Catalog group box, uncheck all items except for Locations.
– Use the Browse button to choose a folder and name the file to store the output.
– Click OK
– Import your Location Definitions by right-clicking on your new Hub, and select Import Catalogs…
– Select the XML file which you saved the exported Location definitions
– Click Open
-
Test Connection for all Locations in the new HVR Hub
– Right-click on each location to view the Properties
– If any location was previously defined on the old HVR Hub as a local connection, it will likely need to be updated to include the remote connection properties
– Test Connection and adjust location properties where needed
– Repeat this step for all connections until all connection tests are successful.
-
Migrate the remaining Catalog definitions from the old HVR Hub to new HVR Hub
– Export your Location Definitions by right-clicking on your old Hub, and select Export Catalogs…
– In the Catalog group box, uncheck Locations and check Channel Definitions Group Membership, and Configuration Actions for All Channels
– Use the Browse button to choose a folder and name the file to store the output.
– Click OK
– Import your HVR Catalog Definitions by right-clicking on your newHub, and select Import Catalogs…
– Select the XML file which you saved the exported catalog definitions
– Click Open to complete the import
– Verify that your entire HVR Catalog has been imported to the new HVR Hub server
Shutdown Old Hub
Note: There are two methods to consider when shutting down the old HVR Hub server in order to move all of the stateful information stored in the <hvr_config> directories.
Method 1:The first method is to stop the entire scheduler which subsequently will stop all replication jobs under the scheduler.
Method 2: The second method is to first stop all capture jobs and wait until all Integrate jobs drain the queued HVR transaction files before stopping the Integrate jobs.
The advantage of the first method is all jobs completed in one step, so you minimize the time to move the files to the new HVR Hub server. The advantage of the second method is that you don't have to zip up as many unprocessed HVR Transaction files which at times can be hundreds of files.
-
Stop the entire scheduler which stops all jobs defined in the Hub Scheduler
OR
Stop all Capture jobs first, wait for all integrate jobs to drain all pending changes, then stop all Integrate jobs, and then stop the entire scheduler
-
Close all HVR User Interfaces connected to the old HVR Hub server
Migrating stateful information from Old HVR Hub to new HVR Hub server
-
Zip up the entire <HVR_CONFIG> directory and subdirectories from the old HVR Hub Server
-
Transfer to zip file from the old HVR Hub server to the new HVR Hub server
-
Unzip the entire <HVR_CONFIG> to your parent /hvr directory on the new HVR Hub server
Deploy and start new HVR Hub
-
Launch the HVR User Interface and connect to the new HVR Hub repository
-
For all channels, you must run HVR Initialize to deploy local runtime objects including Scripts and Jobs
– Right-click on the channel definition, and select HVR Initialize
– Check Create or Replace Objects
– In the Object Types box, check Scripts and Jobs while leaving all other object unchecked
– Click Initialize
– Repeat this step for all channels
-
Start the Scheduler
– On Linux/UNIX, you may need to define the scheduler service as a daemon process and update scripts to start at reboot
– On Windows, you may need to Create the Service and Start the service
-
Start all Jobs System
– Right-click on the Scheduler and select All Jobs in System > Start
– Using the Monitor all jobs to verify
-
Save and run all Maintenance tasks
– Right-click on the Scheduler and select Maintenance Tasks
– Save and schedule or run each Maintenance tasks as needed
– Repeat for all Maintenance tasks