Please ensure the following points before starting the upgrade process:
No snapshot OR restore to be running.
Global job scheduler should be disabled.
The mentioned gemfury repository should be accessible from TVault VM.
Add gemfury repo on each dmapi, horizon containers & compute node(s) to get updated packages.
Create a file /etc/apt/sources.list.d/fury.list and add below line in it.
Use the below commands to get a list of updated packages available on the configured repositories.
Login to dmapi container from the controller node using the below command.
Take a backup of the following file on each dmapi container(s).
Add the gemfury repo and upgrade the dmapi package using the below command. Select the appropriate package depending on the python version used.
Restore the backed-up config files
Now restart and check the service tvault-datamover-api on controller.
For the Horizon plugin upgrade, we need to upgrade below two packages.
python3-tvault-horizon-plugin python3-workloadmgrclient
Login to the horizon container from the controller node using the below command.
Add the gemfury repo and upgrade the tvault-horizon-plugin & workloadmgrclient packages using the below command. Select the appropriate package depending on the python version used.
Restart the apache2 service and verify the workloadmgrclient version using the below commands.
Take a backup of following file on each compute node(s) for nfs storage backend.
Upgrade the tvault-contego package using below command.Select the appropriate package depending on python version used.
Restore the backed-up config files
Now restart and check the service tvault-contego on compute node(s).
Please make sure all configuration files are unchanged.
Take a backup of following file on each compute node(s) for s3 storage backend.
Upgrade the tvault-contego package using below command. Select the appropriate package depending on the python version used.
Note*:- If you get prompt while installing, choose the default selection.
Restore the backed-up config files
Now restart and check the service tvault-contego on compute node(s).
Please make sure all configuration files are unchanged.
Container trilio_datamover_api needs to be redeployed. Follow below steps on all controller nodes :
Backup Existing conf files/folders
Stop and Remove existing container trilio_datamover_api
Pull trilio_datamover_api container image:
Run datamover api container.
Verify deployment
Login to horizon container (on controller node)
Add gemfury repo on horizon to get updated packages.
Create a file /etc/apt/sources.list.d/fury.list and add below line in it.
Use below commands to get list of updated packages available on repo's.
For Horizon plugin upgrade, following packages need to be upgraded.
python3-tvault-horizon-plugin python3-workloadmgrclient
Run following commands to upgrade the tvault-horizon-plugin & workloadmgrclient packages. Select the appropriate package depending on python version used.
Restart docker container (from controller node) and verify the workloadmgrclient version (inside horizon container).
Container trilio_datamover needs to be redeployed. Follow below steps on all Compute nodes :
Backup Existing conf files/folders
Stop & remove existing trilio_datamover container
Pull Trilio Datamover container image using the following command:
Run datamover container.
Verify Deployment of trilio_datamover
Please ensure following points before starting the upgrade process:
No snapshot OR restore to be running.
Global job scheduler should be disabled.
The mentioned gemfury repository should be accessible from TVault VM.
Add trilio repo on each dmapi, horizon containers & compute node(s) to get updated packages.
Modify the file /etc/yum.repos.d/trilio.repo and add below line in it.
Use below commands to get list of updated packages available on repo's.
Login to dmapi container from controller node using below command.
Take a backup of following file on each dmapi container(s).
Add the trilio repo and upgrade the dmapi package using below command.Select the appropriate package depending on python version used.
You can check installed package using below command.
Upgrade the dmapi package using below command.
Restore the backed-up config files
Now restart and check the service tvault-datamover-api on the controller.
We need to upgrade below two packages to upgrade horizon plugin.
tvault-horizon-plugin workloadmgrclient
Login to horizon container from controller node using below command.
Add the trilio repo and upgrade the tvault-horizon-plugin & workloadmgrclient packages using below command.Select the appropriate package depending on python version used.
Depending on the output of above command upgrade appropriate packages.
Restart the httpd service and verify the workloadmgrclient version using below commands.
Take a backup of following file on each compute node(s) for nfs storage backend.
Add the trilio repo and upgrade the tvault-contego package using below command.Select the appropriate package depending on python version used.
Depending on the output of above command upgrade appropriate packages.
Restore the backed-up config files
Now restart the service tvault-contego. Verify the status of the service and check the mount point.
Take a backup of following file on each compute node(s) for s3 storage backend.
Upgrade the tvault-contego and s3fuse-plugin packages using below command. Select the appropriate package depending on the python version used.
Note*:- If you get prompt while installing, choose the default selection.
Restore the backed-up config files
Now restart and check the service tvault-contego on compute node(s).
Container trilio_datamover_api needs to be redeployed. Follow below steps on all controller nodes :
Backup Existing conf files/folders
Stop and Remove existing container trilio_datamover_api
Pull trilio_datamover_api container image
Run datamover api container.
Verify deployment
Container trilio_datamover needs to be redeployed. Follow below steps on all Compute nodes :
Backup Existing conf files/folders
Stop & remove existing trilio_datamover container
Pull Trilio Datamover container image using the following command:
Run datamover container.
Verify Deployment of trilio_datamover
Login to horizon container
Add trilio repo on each controller(s) to get updated packages.
Create a file /etc/yum.repos.d/trilio.repo and add below line in it.
Use below commands to get list of updated packages available on repo's.
For Horizon plugin upgrade, following packages need to be upgraded.
tvault-horizon-plugin workloadmgrclient
Select the appropriate package depending on python version used.
Depending on the output of above command upgrade appropriate packages
Restart docker container (from controller node) and verify the workloadmgrclient version (inside horizon container).
Please refer https://triliodata.atlassian.net/wiki/spaces/TRIL/pages/2055864321/Upgrade+of+Trilio+components+on+RHOSP
Starting Trilio for Openstack 4.0 does Trilio for Openstack allow in-place upgrades.
The following versions can be upgraded to each other:
Old | New |
---|---|
The upgrade process contains upgrading the Trilio appliance and the Openstack components and is dependent on the underlying operating system.
The Upgrade of Trilio for Canonical Openstack is managed through the charms.
Note: Run all the commands with 'stack' user.
Clone updated repo\
If your backup target is Ceph S3 with self signed certs If your backup target is ceph S3 with SSL and SSL certificates are self signed or authorized by private CA, then user needs to provide CA chain certificate to validate the SSL requests. For that, user needs to rename his ca chain cert file to 's3-cert.pem' and copy it into directory - 'triliovault-cfg-scripts/redhat-director-scripts/redhat-director-scripts/puppet/trilio/files'
Upload triliovault puppet module
Copy old trilio env file to new repository
Trilio container urls for RHOSP13:
Trilio container urls for RHOSP16:
There are three registry methods available in RedHat Openstack Platform.
Remote Registry 2. Local Registry 3. Satellite Server
Identify which method you are using. Below we have explained all three methods to pull and configure trilioVault's container images for overcloud deployment.
If you are using 'Remote Registry' method follow this section. You don't need to pull anything. You just need to populate following container urls in trilio env yaml.
If it’s RHOSP13, populate 'trilio_env.yaml' file with triliovault container urls. Changes looks like following.\
If it’s RHOSP16, populate 'trilio_env_osp16.yaml' file with triliovault container urls. Changes looks like following.\
If you are using 'local registry' on undercloud, follow this section.
Note: Run following script from undercloud node with 'stack' user
If it’s RHOSP13, run following script. Script, pulls the triliovault containers and updates the triliovault environment file with urls.
If it’s RHOSP13, user needs to set horizon image url to triliovault horizon image url in overcloud_images.yaml. Changes looks like following.
If it’s RHOS16, run following script. Script, pulls the triliovault containers and updates the triliovault environment file with urls.\
## Above script pushes trilio container images to undercloud registry and sets correct trilio images urls in trilio_env_osp16.yaml. Verify the changes using following command.
If you are using 'Satellite Server' for container registry, follow this section.
Following are the pull urls for Trilio containers. You need to pull these containers on Redhat Satellite that you already have.
Trilio container urls for RHOSP13:
Trilio container urls for RHOSP16:
Pull above containers as per your RHOSP release and push to redhat satellite server. For this, you can follow process same as other openstack containers.
After this, if it’s RHOSP13, populate 'trilio_env.yaml' file with the urls. Changes looks like following.
If it’s RHOSP13, user needs to set horizon image url to triliovault horizon image url in overcloud_images.yaml. Changes looks like following.
If it’s RHOSP16, populate 'trilio_env_osp16.yaml' file with the triliovault container urls. Changes looks like following.
Run your overcloud deploy command again. It will update the triliovault containers on overcloud.
Command looks like following. \
Verify triliovault datamover api container got updated on nova-api nodes
2. Verify triliovault datamover container got updated on nova-compute nodes
3. Verify triliovault horizon got updated on horizon nodes
Please ensure to complete the upgrade of all the TVault components on Openstack controller & compute nodes before starting the rolling upgrade of TVM.
The mentioned gemfury repository should be accessible from TVault VM.
Please ensure the following points before starting the upgrade process:
No snapshot OR restore to be running.
Global job-scheduler should be disabled.
Take a backup of the conf files on all TVM nodes.
Activate the virtual environment on all TVM nodes.
Export new TVault version PYPI url:
Run the following command on all TVM nodes to upgrade s3fuse and its dependent packages.
Run the following command on all TVM nodes to upgrade tvault-configurator and its dependent packages.
Run the upgrade command on all TVM nodes to upgrade workloadmgr and its dependent packages (workloadmgrclient, contegoclient, etc)
Update wlm-cron service entries
If Reconfigure is NOT planned, please perform following steps on all TVM nodes, else skip.
Update the following two parameters in wlm-cron.service systemd file (/etc/systemd/system/wlm-cron.service) :
And once done, use the following command to reload the service file:
Maria DB changes
If Reconfigure is planned
Remove Galera clustered-flag from all TVM nodes & proceed with reconfigure
If Reconfigure is NOT planned
Increase the max SQL connections limit by doing the following steps:
Edit /etc/my.cnf.d/server.cnf file on each TVM node
Add the parameter max_connections=5000 under [mysqld] section
Stop and Start MariaDB service on each node one by one
Restore the backed-up config files
Restart following services on all node(s) using respective commands
Enable Global Job Scheduler
Restart pcs resources only on the primary node
Verify the status of the services
Note: tvault-object-store will run only if TVault configured with S3 backend storage
Additional check for wlm-cron on primary node
Check the mount point using “df -h” command
Trilio containers are pushed to 'RedHat Container Registry'. Registry URL is ''. Following are the triliovault container pull urls.
4.0 GA (4.0.92)
4.0 SP1 (4.0.115)