v3.9.1 v3.9 v3.8.4 v3.8.3 v3.8.2 v3.8.1 v3.8 v3.7.2 v3.7.1 v3.7 v3.6
Auto Light Dark
Auto Light Dark
v3.9.1 v3.9 v3.8.4 v3.8.3 v3.8.2 v3.8.1 v3.8 v3.7.2 v3.7.1 v3.7 v3.6
Breadcrumbs

Upgrade VeridiumID from 3.7.x / 3.8.x to v3.9.1


🔧 Pre-Upgrade Preparation

  1. Backup & Snapshot

  • Take VM snapshots or backups of all nodes before starting.

  • Identify node roles:

    • WEBAPP node: is the node where webservices are running

    • PERSISTENCE node: is the node where Cassandra is running.

  1. Based on the OS version, please download the necessary packages.

cat /etc/redhat-release


Packages

Package URL

MD5

SHA1

Description

veridiumid-update-packages-rhel8-13.1.29.zip

7c6bb442640690fe6e69e6a2c46f0375

db02cdf747440fe67cacbb1fcc2835ba6455851b

VeridiumID Update packages archive containing all RPMs, for loc13.0.71al update procedure RHEL8

veridiumid-update-packages-rhel9-13.1.29.zip

b3ee8ca3939da0e3900e832046eb430a

043c9f777863fb12d8283f12d12dd1069391f7be

VeridiumID Update packages archive containing all RPMs, for local update procedure RHEL9

Upgrade Methods

You can use either use:


A. Local Packages

  1. Download and extract the package

    export https_proxy=PROXY_IP:PROXY_PORT
    ## RHEL8, Rocky8
    export https_proxy=PROXY_IP:PROXY_PORT
    wget --user NEXUS_USER --password NEXUS_PASSWORD \
    https://veridium-repo.veridium-dev.com/repository/VeridiumUtils/Veridium-3.9-update/veridiumid-update-packages-rhel8-13.1.29.zip
    TMP_DEST="/home/veridiumid/update391"
    unzip veridiumid-update-packages-rhel8-13.1.29.zip -d ${TMP_DEST}
    
    
    ## RHEL9, Rocky9
    export https_proxy=PROXY_IP:PROXY_PORT
    wget --user NEXUS_USER --password NEXUS_PASSWORD \
    https://veridium-repo.veridium-dev.com/repository/VeridiumUtils/Veridium-3.9-update/veridiumid-update-packages-rhel9-13.1.29.zip
    TMP_DEST="/home/veridiumid/update391"
    unzip veridiumid-update-packages-rhel9-13.1.29.zip -d ${TMP_DEST}
    
    
  2. Run update commands (on WEBAPP first, then PERSISTENCE nodes):

    sudo yum localinstall -y --disablerepo="*" ${TMP_DEST}/packages/veridiumid_update_procedure-13.1.29-20260918.x86_64.rpm
    sudo python3 /etc/veridiumid/update-procedure/current/updateVeridium.py --version 13.1.29 --rpm-path ${TMP_DEST}/packages/
    sudo bash /etc/veridiumid/scripts/check_services.sh
    
    

B. YUM Repository

  1. Ensure the repository has the package:

    sudo yum list available veridiumid_update_procedure-13.1.29-20260918
    
  2. Run update (one node at a time):

    sudo yum clean metadata
    sudo yum install -y veridiumid_update_procedure-13.1.29
    sudo python3 /etc/veridiumid/update-procedure/current/updateVeridium.py --version 13.1.29 --use-repo
    sudo bash /etc/veridiumid/scripts/check_services.sh
    

 


Post-Upgrade Steps

1. Data Migration to ELK

Run once on a Persistence node, only if updating from versions older then 3.8.1:

sudo bash /opt/veridiumid/migration/bin/migrate_to_elk.sh

2. Cassandra Upgrade (if 4.0.9 or v4.1.4) → 5.0.2

Check version on a Persistence node:

/opt/veridiumid/cassandra/bin/nodetool describecluster | grep -A1 "Database versions"
## if the version is 4.0.9 or 4.1.4, than update should be executed; the proper version is 5.0.2

Then upgrade all Persistences node (one node at a time):

If update is done with local packages:

##check status - all nodes should be up - the status "UN" should be for everynode
/opt/veridiumid/cassandra/bin/nodetool describecluster
/opt/veridiumid/cassandra/bin/nodetool status

TMP_DEST="/home/veridiumid/update391"
sudo bash /etc/veridiumid/update-procedure/current/resources/scripts/372/update_cassandra.sh ${TMP_DEST}/packages/
##check status - all nodes should be up again, in the cluster - the status "UN" should be for everynode
sudo /opt/veridiumid/cassandra/bin/nodetool status
sudo /opt/veridiumid/cassandra/bin/nodetool describecluster

If update is done with YUM repository:

##check status - all nodes should be up - the status "UN" should be for everynode
/opt/veridiumid/cassandra/bin/nodetool describecluster
/opt/veridiumid/cassandra/bin/nodetool status
## run on everynode
/opt/veridiumid/cassandra/bin/nodetool describecluster

sudo bash /etc/veridiumid/update-procedure/current/resources/scripts/372/update_cassandra.sh
##check status - all nodes should be up again, in the cluster - the status "UN" should be for everynode
sudo /opt/veridiumid/cassandra/bin/nodetool status
sudo /opt/veridiumid/cassandra/bin/nodetool describecluster


3. Create one Zookeeper Cluster and enable Read Only mode (Optional)

In Single DC implementation on Persistence nodes, only if updating from versions 3.7.X :

sudo bash /etc/veridiumid/update-procedure/current/resources/scripts/372/update_zookeeper_configuration.sh

 

In case of CDCR, if not already done, run the following procedure, to create one big cluster, with nodes from both datacenters. Previous command should not be executed in case of CDCR.

Also, in order to check if is already created cdcr, please run check_services command. If in zookepeer area are all zookeeper nodes, from both datacenters, it means that this procedure was already applied.

Before starting this configuration, make sure that you have connectivity on ports 2888 and 3888 between ALL persistence nodes.

To test the connectivity run the following commands:

on DC1:

nc -zv IPNODEDC2 2888

nc -zv IPNODEDC2 3888

 

It is critical important to run this command only if the zookeeper cluster is not already created. Also parameters -c and -e are very important, to skip cassandra and elasticsearch cluster creation.

## In second datacenter stop all webapp services and zookeeper services
ver_stop_webapp
service ver_zookeeper stop
## If you are unsure of the secondary datacenter name, run the following command on any node in the Secondary Datacenter:
## sudo grep DATACENTER_TAG /etc/default/veridiumid/ver_migration | awk -F'=' '{print $2}'
## run this command on primary datacenter on one node in webapp. This will add in zookeeper the proper configuration data
bash /etc/veridiumid/scripts/veridiumid_cdcr.sh -i -w IPWEB1,IPWEB2 -s IPPER1,IPPER2,IPPER3 -n DATACENTER_TO_BE_ADDED
## WHERE DATACENTER_TO_BE_ADDED is the secondary datacenter and IPWEB1,IPWEB2 and IPPER1,IPPER2,IPPER3 are the IPs from the secondary datacenter
## this comand will generate a line on the screen to which you need to add -c and -e parameters
## run this command on all persistence nodes in both datacenters starting with the secondary one - 
## the script will create a large cluster containing the Zookeeper nodes in both datacenters and remove data from second DC
bash /etc/veridiumid/scripts/veridiumid_cdcr.sh -a -n DATACENTER_TO_BE_ADDED -z "ZOOKEEPER_PROPERTIES_BASE64" -c -e
## run this command on all webapp nodes in second datacenter
bash /etc/veridiumid/scripts/veridiumid_cdcr.sh -a -n DATACENTER_TO_BE_ADDED -z "ZOOKEEPER_PROPERTIES_BASE64" -c -e

4. ELK Stack Upgrade to 8.17.3 (Required)

Upgrade Elasticsearch, Kibana, and Filebeat (first persistence, then webapp), in case that it was not already updated.

Check version on Persistence nodes:

## check if version is now 8.17.3; if not, run the update procedure; if it is version 8.17.3, do nothing 
sudo /opt/veridiumid/elasticsearch/bin/elasticsearch --version

If update is done using local packages

Run on all nodes, first persistence then webapp nodes:

## run below command on all nodes, first on persistance and then on webapp, one by one.
TMP_DEST="/home/veridiumid/update391"
sudo bash /etc/veridiumid/update-procedure/current/resources/scripts/380/update_elk_stack.sh ${TMP_DEST}/packages/
eops -l
## it is ok if the cluster is in red status

After all persistance nodes are updated to version 8.17.3, run the following command on all nodes (persistence + webapp) starting with persistence nodes

sudo bash /etc/veridiumid/update-procedure/current/resources/scripts/380/update_elk_stack.sh post
##check elasticsearch cluster status that is in green status.
check_services

Run only on one node, on webapp:

##run on one node: 
/opt/veridiumid/migration/bin/elk_ops.sh --update-settings

If update is done using YUM repository

Run on all nodes, first persistence then webapp nodes:

sudo bash /etc/veridiumid/update-procedure/current/resources/scripts/380/update_elk_stack.sh
## here the elasticsearch cluster might be red

After all persistance nodes are updated to version 8.17.3, run the following command on all nodes (persistence + webapp) starting with persistence nodes

sudo bash /etc/veridiumid/update-procedure/current/resources/scripts/380/update_elk_stack.sh post
##check elasticsearch cluster status that is in green status.

Run only on one node, on webapp:

##run on one node: 
/opt/veridiumid/migration/bin/elk_ops.sh --update-settings


🌐 Useful Repositories


RHEL8 MD5 of each package:


RHEL9 MD5 of each package:


Last updated: