Upgrading the Portal Image and Software
Note: To upgrade CTERA portal, CTERA recommends using the latest portal image for your environment. Some of the new software features and resolved issues require installing the latest portal image.
Folder groups with a block size greater than 4MB are not supported in CTERA Portal 6.0. If you have an existing portal with folder groups greater than 4MB, the upgrade will fail. Before starting the upgrade, move files from a folder group with a block size greater than 4MB to a different folder group with a block size less than 4MB. The folder group size is configured in the settings for the portal.
To upgrade CTERA Portal:
Note: CTERA recommends using a dedicated server for the Ansible server, which must have an SSH connection open to all the portal servers. If this option is not available, use the portal database server to host the Ansible server.
2 Unzip ansiblePackage.tar.gz and navigate to the AnsiblePackage directory.
3 Run the following command: rpm --import RPM-GPG-KEY-EPEL-7
4 Run the following command: yum install *.rpm
5 Run the following command: pip install --ignore-installed six-1.12.0-py2.py3-none-any.whl
6 Get the latest portal image from CTERA and copy the image to /usr/local/lib/ctera/upgrade in the Ansible server. The image is provided in one of the following ways:
portal-installer-linux-<version>.tar.bz2.gpg and
RPM-GPG-PubKey.asc portal-installer-linux-<version>.tar.bz2 where <version> is the version of the portal image.
7 Unzip AnsibleScripts.tar.gz to /etc/ansible.
Note: AnsibleScripts.tar.gz contains the files playbook.yml and config.ini and the roles directory.
8 Edit config.ini as follows:
Parameter | Notes |
---|
privatkey=<path to privatekey> | If the connection to the server is via private key, enter the path to the key. |
username=<rootUser> | If the connection to the server is not via private key, enter the root user and password |
password=<password> |
DBserverIP=<DB server IP> | Enter the database IP address, used to retrieve all the portal server IPs. |
portalinstallerlinux=<Image_version> | Enter the CTERA Portal Image version. Note: If left empty, the portal image is not upgraded. When upgrading both the portal image and the portal software, you must upgrade the portal image before upgrading the portal software. |
CTERAPortal=<Portal_version> | Enter the CTERA Portal software version. |
9 If the Ansible server is a dedicated server, complete editing config.ini as follows:
Parameter | Notes |
---|
upgradeDB=yes | All the servers are upgraded at once (except the replication server which has a separate configuration). |
upgradeTomcats=yes |
upgradeReplica=<yes/no> | If set to yes, the replication server is upgraded. If set to no, the replication server is not upgraded. |
10 If the Ansible server is on the portal database server, complete editing config.ini as follows:
Parameter | Notes |
---|
upgradeDB=yes | Only the database server is upgraded. |
upgradeTomcats=no | All the server except for the database server are not upgraded. |
upgradeReplica=no |
11 Run the following command: ansible-playbook playbook.yml
If the Ansible server is a dedicated server:
All the portal servers are upgraded except for the replication server if
upgradeReplica was set to
no.
If the kernel was upgraded the server is rebooted.
If the Ansible server is in the portal database server:
The portal database server is upgraded.
If the kernel was upgraded the server is rebooted.
The images are updated before the software is updated.
The upgrade logs for all the servers are written to /etc/ansible/logs in the Ansible server.
Rerunning the Upgrade in Different Scenarios
Rerunning the upgrade multiple times only upgrades servers that were previously not upgraded. Any server that was upgraded is ignored.
If the Ansible server is a dedicated server and upgradeReplica was set to no:
Change the
config.ini file as follows and rerun
ansible-playbook playbook.ymlParameter | Notes |
---|
upgradeDB=no | The portal servers except for the replication server are skipped during the upgrade process. |
upgradeTomcats=no |
upgradeReplica=yes | The replication server is upgraded. |
If the kernel was upgraded the server is rebooted.
If the Ansible server is in the portal database server:
Change the
config.ini file as follows and rerun
ansible-playbook playbook.ymlParameter | Notes |
---|
upgradeDB=no | The portal database server is skipped during the upgrade process. |
upgradeTomcats=yes | All the portal servers are upgraded |
upgradeReplica=<yes/no> | If set to yes, the replication server is upgraded. If set to no, the replication server is not upgraded. |
If the kernel was upgraded the server is rebooted.
If the Ansible server is in the portal database server and upgradeReplica was set to no:
change the
config.ini file as follows and rerun
ansible-playbook playbook.ymlParameter | Notes |
---|
upgradeDB=no | The portal servers except for the replication server are skipped during the upgrade process. |
upgradeTomcats=no |
upgradeReplica=yes | The replication server is upgraded. |
If the kernel was upgraded the server is rebooted.