Deployment and Management Guide for Cisco IoT FND on OVA with Postgres and InfluxDB

PDF

Deployment and Management Guide for Cisco IoT FND on OVA with Postgres and InfluxDB

Upgrade the database and docker server image

Want to summarize with AI?

Log in

Use this procedure to upgrade the database and docker server image for Cisco IoT FND, ensuring compatibility and security by running upgrade scripts and integrating the database with Cisco IoT FND.


To ensure compatibility and security, upgrade the database and docker server image for Cisco IoT FND.

To upgrade the database and the docker server image, run the rpm scripts and auto-integrate the DB with Cisco IoT FND scripts.

Before you begin

Cisco IoT FND OVA upgrade does not upgrade the RHEL OS version. The RHEL version may vary depending on the Cisco IoT FND release. After upgrading the OVA, upgrade the OS as soon as possible. Cisco IoT FND is a secure application, but the OS security and patches must be regularly updated based on Cisco guidance.

Use this procedure to upgrade Cisco IoT FND Release 4.9.x, 4.10.x, 4.11.x, and 4.12.x to Release 5.0.x or higher.

Procedure

  1. Obtain the Cisco IoT FND upgrade scripts from Cisco.

  2. Check the RHEL OS version before upgrading Cisco IoT FND OVA to Cisco IoT FND Release 5.0 or higher.

    Example:

    [root@fnd451testupgrade ~]# hostnamectl
                Static hostname: fnd451testupgrade
                Icon name: computer-vm
                Chassis: vm
                Machine ID: 58eb8d728d834d28ad426eca3c9b9c4e
                Boot ID: 40511dab9f4b4beaa8de82fb105423c9
                Virtualization: vmware
                Operating System: Red Hat Enterprise Linux
                CPE OS Name: cpe:/o:redhat:enterprise_linux:7.5:GA:server
                Kernel: Linux 3.10.0-862.el7.x86_64
                Architecture: x86-64
                [root@fnd451testupgrade ~]#r
  3. Extract the cgms rpms files to the Cisco IoT FND server.

    Example:

    If you are upgrading the DB and the docker server image for Cisco IoT FND release 5.0 or higher:

    1. Download the upgrade script from Cisco.

      Example:

      CISCO-IOTFND-VPI-K9-UPGRADE-SCRIPTS-<release>-<build number>.zip
    2. Extract the file to get the rpm:

      Example:

      upgrade-ova-<release>-<build number>.rpm
    3. Transfer the extracted rpm file to the Cisco IoT FND server.

  4. Navigate to the directory where the rpm file is located.

    Example:

    cd /opt or any directory where the upgrade-ova-<release>-<build number>.rpm file is copied.

  5. Run the upgrade script:

    Example:

    rpm -Uvh upgrade-ova-<release>-<build number>.rpm

    The sample logs:

    Sample log : For upgrade to Release 5.0.0 or 5.1.0, you may see output such as:
    root@iot-fnd:/opt[root@iot-fnd opt]# rpm -Uvh upgrade-ova-5-0-2-8.rpm
                Preparing...
                (1%)##############(100%)                                                                                                                  
                Updating / installing... 
                1:upgrade-ova-5-0-2-8
                (1%)##############(100%)
                Started installer in background. Please check ~/rpm.log in few minutes for details.
                root@iot-fnd:/optYou have new mail in /var/spool/mail/root
                [root@iot-fnd opt]# 
                Mon May  9 01:59:29 PDT 2022 Background installer started
                Mon May  9 01:59:29 PDT 2022 Please wait until the 'RPM installation completed' message is logged
                Mon May  9 01:59:29 PDT 2022 Upgrading cgms-postgres-5.0.2-8.x86_64.rpm
                Preparing...                          ########################################
                Updating / installing...
                cgms-postgres-5.0.2-8                 ########################################
                Cleaning up / removing...
                cgms-postgres-5.0-101               ########################################
                Mon May  9 01:59:47 PDT 2022 Upgrading cgms-influx-4.7.2-8.x86_64.rpm
                Preparing...                          ########################################
                Updating / installing...
                cgms-influx-5.0.2-8                   ########################################
                Cleaning up / removing...
                cgms-influx-5.0-101                 ########################################
                Mon May  9 02:00:04 PDT 2022 Upgrading monit-5.25.3-1.el7.x86_64.rpm
                warning: monit-5.25.3-1.el7.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 222b0e83: NOKEY
                Preparing...                          ########################################
                package monit-5.25.3-1.el7.x86_64 is already installed
                Mon May  9 02:00:18 PDT 2022 Stopping services
                Mon May  9 02:00:58 PDT 2022 Upgrading Postgresql to 12.5
                Preparing...                          ########################################
                Updating / installing...
                postgresql12-libs-12.5-1PGDG.rhel7    ########################################
                postgresql12-12.5-1PGDG.rhel7         ########################################
                postgresql12-server-12.5-1PGDG.rhel7  ########################################
                postgresql12-contrib-12.5-1PGDG.rhel7 ########################################
                Cleaning up / removing...
                postgresql12-contrib-12.4-1PGDG.rhel7 ########################################
                postgresql12-server-12.4-1PGDG.rhel7  ########################################
                postgresql12-12.4-1PGDG.rhel7         ########################################
                postgresql12-libs-12.4-1PGDG.rhel7    ########################################
                Mon May  9 02:01:27 PDT 2022 Restarting Postgresql
                Mon May  9 02:01:40 PDT 2022 Stopping InfluxDB and Kapacitor
                Mon May  9 02:01:50 PDT 2022 Upgrading influxdb-1.8.3.x86_64.rpm
                Preparing...                          ########################################
                Updating / installing...
                influxdb-1.8.3-1                      warning: /etc/influxdb/influxdb.conf created as /etc/influxdb/influxdb.conf.rpmnew
                ########################################
                Cleaning up / removing...
                influxdb-1.5.3-1                      ########################################
                Mon May  9 02:02:02 PDT 2022 Upgrading kapacitor-1.5.7-1.x86_64.rpm
                Preparing...                          ########################################
                Updating / installing...
                kapacitor-1.5.7-1                     warning: /etc/kapacitor/kapacitor.conf created as /etc/kapacitor/kapacitor.conf.rpmnew
                ########################################
                Cleaning up / removing...
                kapacitor-1.5.0-1                     ########################################
                Mon May  9 02:02:06 PDT 2022 Restarting InfluxDB and Kapacitor
                Mon May  9 02:02:20 PDT 2022 Stopping Docker
                Mon May  9 02:02:26 PDT 2022 Upgrading Docker to 19.03.15
                warning: container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
                Preparing...   
                (1%)##############(100%)                                                     
                Updating / installing... 
                1:container-selinux-2:2.119.2-1.911  
                (1%)##############(100%)                   
                Cleaning up / removing...
                2:container-selinux-2:2.42-1.gitad8    
                (1%)##############(100%)   
                Preparing...       
                (1%)##############(100%)                                                                                                             
                Updating / installing... 
                1:docker-ce-cli-1:19.03.15-3.el7
                (1%)##############(100%)                               
                2:containerd.io-1.4.4-3.1.el7
                (1%)##############(100%)                        
                3:docker-ce-3:19.03.15-3.el7  
                (1%)##############(100%)    
                /usr/bin/dockerd has not been configured as an alternative for dockerd
                Cleaning up / removing...
                4:docker-ce-3:18.09.6-3.el7   
                (1%)##############(100%)     
                5:containerd.io-1.2.5-3.1.el7 
                (1%)##############(100%)       
                6:docker-ce-cli-1:18.09.6-3.el7         
                (1%)##############(100%)   
                Mon May  9 02:04:11 PDT 2022 Restarting Docker
                Mon May  9 02:04:29 PDT 2022 Restarting services
                Mon May  9 02:04:59 PDT 2022 RPM installation completed
    Sample log : For upgrade to Release 26.2.1, sample log entries may include:
    [root@iot-fnd opt]# rpm -Uvh --force upgrade-ova-26.2.1-120.rpm
    Verifying...                          ################################# [100%]
    Preparing...                          ################################# [100%]
    Updating / installing...
       1:upgrade-ova-26.2.1-120           ################################# [100%]
    Deleting /var/lib/docker/volumes/fogd_data/_data/dist/appmgr/extensions/fnd/dependencies...
    Deletion complete.
    
    Started installer in background. Please check ~/rpm.log in few minutes for details.
    IP address migration will run automatically after all installations complete.
    [root@iot-fnd opt]#
    Sat Sep 19 02:28:00 PM IST 2026 Background installer started
    Sat Sep 19 02:28:00 PM IST 2026 Please wait until the 'RPM installation completed' message is logged
    
    Sat Sep 19 02:28:00 PM IST 2026 Upgrading cgms-postgres-26.2.1-120.pg.x86_64.rpm
    Verifying...                          ########################################
    Preparing...                          ########################################
    Updating / installing...
    cgms-postgres-26.2.1-120.pg           ########################################
    Cleaning up / removing...
    cgms-postgres-5.1.0-155               ########################################
    
    Sat Sep 19 02:28:05 PM IST 2026 Upgrading cgms-influx-26.2.1-120.x86_64.rpm
    Verifying...                          ########################################
    Preparing...                          ########################################
    Updating / installing...
    cgms-influx-26.2.1-120                ########################################
    Cleaning up / removing...
    cgms-influx-5.1.0-155                 ########################################
    
    Sat Sep 19 02:28:09 PM IST 2026 monit-5.33.0-1.el9 already installed on RHEL 9
    Sat Sep 19 02:28:09 PM IST 2026 Already running Postgresql 16.7
    Sat Sep 19 02:28:09 PM IST 2026 Using PostgreSQL version 16 for configuration path.
    ALTER ROLE
    ALTER ROLE
    ALTER ROLE
    ALTER ROLE
    ALTER ROLE
    ALTER ROLE
    setting idle_in_transaction_session_timeout to 3h
    set idle_in_transaction_session_timeout to 3h
    
    Sat Sep 19 02:28:12 PM IST 2026 Already running influxdb 1.8.3
    
    Sat Sep 19 02:28:12 PM IST 2026 Already running docker-ce 24.0.5-1.el9
    Sat Sep 19 02:28:12 PM IST 2026 Checking for IP address migration
    Sat Sep 19 02:28:12 PM IST 2026 Running IP address migration script...
    Sat Sep 19 02:31:46 PM IST 2026 IP migration completed. Check /var/log/ip-migration.log for details
    Sat Sep 19 02:31:46 PM IST 2026 RPM installation completed

The upgrade of Cisco IoT FND on OVA is complete.

Note

When upgrading to Cisco IoT FND Release 26.2.1, Fog Director configurations may take up to 10 additional minutes to complete. This can increase the total upgrade time by up to 10 minutes.

What to do next

For the Cisco IoT FND host in this deployment, use the fnduser account for SSH access after upgrade. Direct SSH login as root is disabled by default. When root privileges are required after that, log in as fnduser and run sudo -i.