The document describes the process of updating Webitel server version 3.8 to version 3.9.

Webitel 3.9 keeps a record of conversations in a new format. Unfortunately, this will not allow transferring schedules already configured to Kibana automatically. All reports will need to be re-created. Consider this before upgrading.

Backup

Before you proceed to the upgrade, we recommend that you back up the current configurationи:

/opt/orchestration/bin/bootstrap.sh backup

Update process

Delete all docker containers and update permissions:

sudo -s
docker rm -f $(docker ps -aq)

Update basic Linux packages:

apt update && apt -y upgrade && apt -y autoremove
curl -sSL https://get.docker.com/ | sh
curl -L "https://github.com/docker/compose/releases/download/1.20.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

In the / opt / orchestration / env / environment file, change the version of the webitel to  3.9.0

export WEBITEL_VERSION="3.9.0"

Refresh Webitel:

cd /opt/orchestration
git checkout master
git pull
git checkout v3.9.0
./bin/bootstrap.sh pull

Migrate SQL database to new format:

./bin/bootstrap.sh 3.8.x-3.9.0

Running the updated server:

./bin/bootstrap.sh up -d

Clear browser cache and webitel updated!

Statistics transfer

Delete old data:

docker exec -it mongo mongo webitel --eval "db.agentStatusEngine.drop()"
docker exec -it mongo mongo webitel --eval "db.collectionPublic.drop()"
docker exec -it mongo mongo webitel --eval "db.collectionDefault.drop()"
docker exec -it mongo mongo webitel --eval "db.collectionExtension.drop()"
docker exec -it mongo mongo webitel --eval "db.collectionDomainVar.drop()"
docker exec -it mongo mongo webitel --eval "db.collectionAgentStatus.drop()"

We turn to converting Webitel statistics from the old format to the new one.

Please note that the speed of transferring old statistics to the new format depends on the amount of data and server capacity.

Run the process:

cd /opt/orchestration
./bin/bootstrap.sh cdr-upgrade

After the statistics have been transferred and we made sure that everything works, we can safely delete the old data:

docker rmi $(docker images)
rm -rf /opt/webitel/elasticsearch5
docker exec -it mongo mongo webitel --eval "db.cdr.drop()"

The process is complete.

  • No labels