Pragma Edge

Pragma Edge

Did You Know?

FileGPS Disaster Recovery Recommendation Document

Introduction

This document outlines the disaster recovery process for FileGPS, covering the five main components of the system: 

  1. UI 
  2. Backend 
  3. Rest Consumer 
  4. FileGPS Client 
  5. Superset 

The purpose of this document is to ensure that all essential components required for disaster recovery are available on the DR server. By maintaining these components, administrators can quickly restore services in case of system failure. This document provides a checklist of required items for each component to be replicated on the DR server. 

Disaster Recovery Strategy and Considerations

The five essential components – FileGPS UI, Backend, Rest Consumer, FileGPS Client and Superset must be available in both the Primary region and the Disaster Recovery (DR) region. Each component relies on certain dependencies, such as the Database, SMTP, and SAML configurations. 

If the Primary region goes down for any reason, the data should be replicated in the DR region to ensure continuity. To maintain functionality, the database, SMTP, and SAML configurations must be correctly set up in the DR region. Before switching operations to the DR region, verify that these configurations are valid. Once the Primary region is restored, traffic should automatically revert to it. 

Considerations in DR Region

1. Database Configurations in DR Region

If any of the database configuration details differ between the Primary and DR regions, update the respective details in the DR region and ensure proper verification.  We need to validate the database credentials, including the database URL to ensure they are functional before configuring them in the Backend, UI, Superset, Rest Consumer, and FileGPS Client configuration. 
  1. Data Replication – Ensure that the database in the DR region is properly synchronized with the Primary region to avoid data loss. 
  2. Connection Strings – Verify that applications in the DR region are using the correct database connection strings. 
  3. User Access and Permissions – Ensure that database users, roles, and permissions are correctly set up in the DR region. 
  4. Backup and Restore Procedures – Regularly test backup and restore mechanisms to confirm database integrity. 
  5. Failover Mechanism – Check if automatic failover is configured or if manual intervention is required during a disaster. 
  6. Performance and Scaling – Validate that the DR database can handle expected workloads in case of a failover. 

2. SMTP Details in DR Region

If any of the SMTP configuration details differ between the Primary and DR regions, update the respective details in the DR region and verify them thoroughly. 

Additionally, validate the SMTP credentials in the Backend and UI configurations, including the SMTP host and port, before finalizing the setup to ensure proper delivery of FileGPS notifications. 

  1. SMTP Server Configuration – Ensure the DR region has the correct SMTP server details configured. 
  2. Authentication Credentials – Verify that the correct SMTP username, password, or authentication tokens are set up. 
  3. Firewall and Security Settings – Ensure that SMTP traffic is allowed through the necessary firewall rules in the DR region. 
  4. Testing Email Delivery – Perform test email deliveries from the DR region to confirm SMTP functionality. 
  5. Fallback SMTP Server – If applicable, ensure that a secondary SMTP server is configured for redundancy. 

3. SAML Configurations in DR Region

If any of the SAML configuration details differ between the Primary and DR regions, update the respective details in the DR region and verify them thoroughly. Additionally, ensure that the SAML configuration details in application.yml, including SSO URL, SLO URL, app-SLO, and IDP configurations such as metadata, IDP groups, and registration ID, are correctly validated. 

  1. Identity Provider (IdP) Configuration – Ensure the DR region is registered with the correct IdP and that metadata is up to date. 
  2. Service Provider (SP) Metadata – Verify that the DR region has the correct SP metadata configured for authentication. 
  3. Certificate Validation – Ensure that SAML certificates (public/private keys) are correctly set up and not expired. 
  4. Single Sign-On (SSO) Redirection – Test SSO login to confirm proper redirection and authentication in the DR region. 
  5. User Role Mapping – Validate that user roles and attributes are correctly mapped between the IdP and the DR system. 
  6. Session Expiry and Logout Handling – Confirm that session timeouts and logout mechanisms function as expected in the DR region. 

Additional Considerations for Load Balancer in DR Region

If a load balancer is in place, ensure the following checks in the DR region: 

  1. DNS and Routing – Verify that the load balancer is correctly routing traffic to the DR region when the Primary region is down. 
  2. Health Checks – Confirm that the load balancer is properly monitoring the health of services in both regions and redirecting traffic as needed. 
  3. SSL Certificates – Ensure SSL certificates are configured correctly for the DR region. 
  4. Firewall and Security Rules – Verify that firewall and security group rules allow necessary traffic in the DR region. 
  5. Application Configuration – Ensure that all components (UI, Rest Consumer, and Superset) in the DR region are registered with the load balancer. 

Disaster Recovery Checklist and Procedures

1. FileGPS UI

Essential Items for DR Server

  1. File System: <Installed_Directory>/UI/ 
  2. Database 
  3. SAML Configuration 
  4. SMTP Details 
  5. Superset 

Recovery steps for UI

Starting the UI 

  1. Login to the Server
    Access the server where the deployment is hosted. 
  2. Navigate to the UI Directory
    Run the following command: 
    Command: cd <Installed_Directory> /FileGPS_APP_Release/UI 
  3. Start the UI Application using shell script file
    Command: ./filegps_start_ui.sh 

Checking UI Status 

Use the following command to verify if the UI is running: 

  • Command: ps -ef | grep filegps-api-6.3.3.1 

Checking UI Logs 

  • Command: tail -f <Installed_Directory>/UI/file-gps-api.log 

Stopping the UI 

  • Command: pkill -f filegps-api-6.3.3.1 

(or) kill $(ps –ef | grep filegps-api-6.3.3.1 | awk ‘{print $2}’) 

2. FileGPS Backend

Essential Items for DR Server

  1. File System: <Installed_Directory>/Backend/ 
  2. Database 
  3. SMTP Details 

Recovery steps for Backend

Starting the Backend 

  1. Navigate to the Backend Directory
     Run the following command:
    Command: cd <Installed_Directory>/Backend/scripts/ 
  2. Start the backend jobs using shell script file
    Command: ./filegps_start_job.sh /path/to/Backend 

Checking Backend Status 

  • Command: ps -ef | grep filegps_backend_job_name 

Example: ps -ef | grep fnr_alert_job 

Checking Backend Logs 

  • Command: tail -f <Installed_Directory>/Backend/logs/filegps_backend_job_name.log 

Example: tail -f <Installed_Directory>/Backend/logs/fnr_alert.log 

Stopping the Backend 

  • Command: pkill –f filegps_backend_job_name 

(or) kill $(ps -ef | grep filegps_backend_job_name | awk ‘{print $2}’) 

Example: pkill –f fnr_alert_job

3. Rest Consumer

Essential Items for DR Server

  1. File System: <Installed_Directory>/Rest_Consumer/ 
  2. Database 

Recovery steps for Rest Consumer

Starting the Rest Consumer 

  1. Navigate to the Rest_Consumer Directory
    Run the following command: 
  • Command: cd <Installed_Directory>/Rest_Consumer/ 
  1. Start the backend jobs using shell script file
  • Command: ./rest_consumer.sh 

Checking Rest Consumer Status 

  • Command: ps -ef | grep rest_consumer 

Checking Rest Consumer Logs 

  • Command: tail -f <Installed_Directory>/Rest_Consumer/logs/rest_consumer.log 

Stopping the Rest Consumer 

  • Command: pkill –f rest_consumer 
(or) kill $(ps -ef | grep rest_consumer | awk ‘{print $2}’)   

4. FileGPS Client

Essential Items for DR Server

  1. File System: <Installed_Directory>/MQ/ 

If MQ is in the Primary region and only the application in the Primary region is down, the application in the DR region should be able to start and communicate with the MQ in the Primary region. This requires ensuring that the necessary firewall rules are configured to allow communication from the DR to the Primary region. 

Recovery steps for FileGPS Client

Starting the FileGPS Client 

  1. Navigate to the FileGPS Client Directory
   Run the following command: 
  • Command: cd <Installed_Directory>/MQ/ 
  1. Start the client using shell script file
  • Command: ./filegps_client.sh   

Checking FileGPS Client Status 

  • Command: ps -ef | grep filegps_client 

Checking FileGPS Client Logs 

  • Command: tail -f <Installed_Directory>/mq_conenctor.log 

Stopping the FileGPS Client 

  • Command: pkill –f filegps_client  
(or) kill $(ps -ef | grep filegps_client | awk ‘{print $2}’)    This document ensures that all critical components required for disaster recovery are identified and replicated on the DR server to minimize downtime and maintain business continuity.