Skip to end of metadata
Go to start of metadata

Документ описывает процесс обновления сервера Webitel версии 3.8 до версии 3.9.

Webitel 3.9 хранит записи разговоров в новом формате. К сожалению, это не позволит перенести графики уже настроенные в Kibana автоматически. Все отчеты необходимо будет создать повторно. Учтите это, прежде чем приступить к обновлению.

Резервное копирование

Прежде чем преступить к обновлению, рекомендуем выполнить резервное копирование текущей конфигурации:

/opt/orchestration/bin/bootstrap.sh backup

Процесс обновления

Удалить все docker контейнеры и обновить права доступа:

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

Обновить базовые пакеты Linux:

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

В файле /opt/orchestration/env/environment измените версию webitel на 3.9.0

export WEBITEL_VERSION="3.9.0"

Обновить Webitel:

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

Миграция SQL базы данных в новый формат:

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

Запуск обновленный сервер:

./bin/bootstrap.sh up -d

Очищаем кеш браузера и webitel обновлен!

Перенос статистики

Удаляем старые данные:

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()"

Переходим к конвертации статистики Webitel из старого формата в новый.

Обратите внимание, что скорость переноса старой статистики в новый формат зависит от количества данных и мощности сервера.

Запускаем процесс:

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

После того, как статистика перенесена и мы убедились, что все работает, смело удаляем старые данные:

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

Процесс завершен.

  • No labels