Upgrade Notes 23.07-23.09

backup

Выполните резервное копирование базы данных до начала обновления!

Алгоритм обновления

  1. Полная остановка всех сервисов webitel
  2. Обновление Debian Linux и обновление приложений Webitel до v23.09
  3. Установка новых приложений Webitel v23.09
  4. Миграция базы данных с версии Webitel v23.07 на v23.09
  5. Перезапуск всех сервисов после обновления до Webitel v23.09

Полная остановка всех сервисов webitel:

systemctl stop webitel-api webitel-app webitel-uac messages-bot messages-srv \
  engine call_center storage flow_manager rabbitmq-server consul \
  freeswitch ngcp-rtpengine-daemon opensips grafana-server nginx

Обновление Debian Linux и обновление приложений Webitel до v23.09. Вам необходимо запросить доступ к репозиториям с Webitel у вашего менеджера.

WBTU=webitel_repo_user
WBTP=webitel_repo_password

wget --http-user=$WBTU --http-password=$WBTP -O /usr/share/keyrings/webitel-repo.gpg http://deb.webitel.com/webitel-repo.gpg
echo "machine http://deb.webitel.com login $WBTU password $WBTP" > /etc/apt/auth.conf.d/webitel.conf
echo "deb [signed-by=/usr/share/keyrings/webitel-repo.gpg] http://deb.webitel.com/debian `lsb_release -sc` main" > /etc/apt/sources.list.d/webitel.list
echo "deb [signed-by=/usr/share/keyrings/webitel-repo.gpg] http://deb.webitel.com/debian `lsb_release -sc` 23.09-releases" >> /etc/apt/sources.list.d/webitel.list

apt update && apt upgrade

Установка новых приложений Webitel v23.09

apt install webitel-crm webitel-logger

cp /opt/webitel/etc/systemd/system/webitel-logger.service /etc/systemd/system/

systemctl enable webitel-logger

Миграция базы данных с версии Webitel v23.07 на v23.09

su postgres
cd ~
psql webitel -qxc "ALTER EXTENSION timescaledb UPDATE;"
psql -1 -f /usr/share/postgresql/15/webitel/migration/23.07-23.09.sql webitel
exit

Добавить новую секцию crm в конфигурационный файл nginx:

sed -i '/.*location \/flow-diagram.*/i location \/crm {\n\talias \/opt\/www\/crm;\n\ttry_files $uri $uri\/ \/index.html last;\n\texpires -1;\n}\n' /etc/nginx/sites-enabled/default

nginx -t

Перезапуск всех сервисов после обновления до Webitel v23.09

systemctl restart consul
systemctl restart postgresql
systemctl restart rabbitmq-server

systemctl restart webitel-app webitel-uac webitel-api engine \
  messages-srv flow_manager messages-bot call_center storage webitel-logger \
  freeswitch ngcp-rtpengine-daemon opensips grafana-server nginx