RHEL Migration Guide for Cisco IoT FND Postgres and Influx Databases
RHEL migration
RHEL 7.5 is nearing end-of-life for full security updates. Migrating to RHEL 8.10 ensures continued patching, security hardening, and compliance with organizational policies. For more information see, RHEL End of Maintenance.
Benefits
- The future Cisco IoT FND releases typically require newer OS libraries and database drivers. Moving the databases to a newer OS reduces the risk of runtime issues during the upgrade.
- RHEL 8.10 provides newer package management, security features, and maintenance capabilities that simplify long-term administration and updates. For more information on RHEL 8.10 see, 8.0 Release Notes.
- The migration aligns with security, compliance, and modernization goals while positioning the environment for a stable, supported upgrade to future Cisco IoT FND releases.
Migrating RHEL
Here are the steps involved in migrating RHEL 7.5 base OS to RHEL 8.10 base OS:
Summary
Here are the components that you require to perform the migration:
- An existing VM (VM1) which was deployed along with OVA (Cisco IoT FND + Postgres + Influx) running RHEL 7.5 base OS, that was upgraded to Cisco IoT FND Release 5.0.
- A new VM (VM2) deployed along with OVA (Cisco IoT FND + Postgres + Influx). Ensure that the VM2 is running RHEL 8.10 as the base OS.
- Configure the VM2 to add 800GB to the /root logical volume (LV) and apply other database configurations as specified in the Achieving Scale Beyond 25,000 routers.
Here is the workflow to achieve a successful migration:
Workflow
- Perform a backup of the Postgres and Influx DB on VM1
- Deploy the VM2
- Copy the respective files from VM1 to VM2: cgms.properties, cgms.keystore, and userPropertyTypes.xml.Here is the path in which these files are found: /opt/fnd/data
- Follow the configuration steps and other database configurations specified inAchieving Scale Beyond 25,000 routers
- Restore the backup on VM2
- Configure the hostname in /etc/hosts if you have any
- Validate the VM2
Backup Postgres and Influx DB on VM1
Backup Postgres DB
This task guides you to backup the Postgres DB. Use these instructions to backup the Postgres DB:
Step 1 | Here are some prerequisites:
|
Step 2 | Stop the CGMS service: Example:
The Cisco IoT FND container is stopped. |
Step 3 | Run the backupdb.sh to move the Postgres DB to a particular location. Example:
|
Backup Influx DB
This task guides you to backup the Influx DB. Use these instructions to backup the Postgres DB:
Step 1 | Here are some prerequisities:
|
Step 2 | Stop the CGMS service: Example:
The Cisco IoT FND container is stopped. |
Step 3 | Run the backupdb.sh to move the Influx DB to a particular location. Example:
|
Deploy VM2
This task helps you deploy VM2.
Step 1 | Deploy a new VM of Cisco IoT FND Release 5.0 Postgres OVA running RHEL 8.10 OS base version using VMware vSphere. For more information see, Deploy a Virtual Machine from an OVF or OVA File in the VMware Host Client. |
Step 2 | Configure the VM2 to add 800GB to the /root logical volume (LV) and apply other database configurations as specified in the Achieving Scale Beyond 25,000 routers. |
Step 3 | Ensure that the VM compatibility and ESXi host settings are appropriate for the migration. |
Step 4 | Ensure that all the important backup configuration files, such as cgms.properties, cgms_keystore, and userPropertyTypes.xml in VM1 /opt/fnd/data/ are copied or moved to the VM2 in the same location. |
Restore backup on VM2
Restore Postgres DB backup on VM2
This task helps you restore Postgres DB backup on VM2. Follow these steps to restore Postgres DB backup on VM2:
Step 1 | Here are some of the prerequisites:
|
Step 2 | Stop the CGMS service: Example:
Cisco IoT FND container is stopped. |
Step 3 | Drop the Postgres DB if the DB is already present: Example:
|
Step 4 | Create a new DB: Example:
A new DB is created. |
Step 5 | Restore the Postgres DB. The VM1 Postgres backup file (backup-postgres-db) is copied and stored in the VM2 location: /home/scaleDB/backup-postgres-db Example:
|
Step 6 | Run the DB migrate script followed by initiating the CGMS service: Example:
|
Restore Influx DB Backup on VM2
This task helps you restore Influx DB backup on VM2. Follow these steps to restore Influx DB backup on VM2:
Step 1 | Here are some of the prerequisites:
|
Step 2 | Stop the CGMS service: Example:
Cisco IoT FND container is stopped. |
Step 3 | Drop the Influx DB if the DB is already present: Example:
|
Step 4 | (Optional) If you're installing Influx DB for the first time, create an admin user: Example:
An admin user is created. |
Step 5 | The VM1 Influx DB backup file (backup-influx-db) is copied and stored in the VM2 location: /home/scaleDB/backup-influxDBbackup Example:
|
Step 6 | Start the CGMS service: Example:
|
Validate VM2
This task helps you validate the VM2 that you just deployed.
Step 1 | Verify the service status and connectivity to PostgreSQL and InfluxDB. For more information see, PostgreSQL documentation and Influx DB documentation. |
Step 2 | Perform sanity tests such as device onboarding, firmware upgrade, and configuration push to validate the Cisco IoT FND environment. |
Troubleshoot
This task helps you troubleshoot a known issue of the device group list missing in the left tree on Cisco IoT FND post migration.
Step 1 | Ensure that the backup is restored on VM2. |
Step 2 | From the Cisco IoT FND menubar, choose . |
Step 3 | Click Add Devices. |
Step 4 | Upload a dummy .CSV file from your local device. |
Step 5 | Click Add. You'll see the device list appearing in the left pane. |