Upgrade Notes 23.05-23.07

backup

Виконайте резервне копіювання бази даних перед початком оновлення!

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

  1. Повна зупинка всіх сервісів Webitel.
  2. Оновлення Debian Linux та оновлення додатків Webitel до версії v23.07.
  3. Міграція бази даних з Webitel v23.05 на v23.07.
  4. Перезапуск всіх сервісів після оновлення до Webitel v23.07.

Повна зупинка всіх сервісів 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.07. Вам необхідно запитати доступ до репозиторіїв 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.07-releases" >> /etc/apt/sources.list.d/webitel.list

apt update && apt upgrade

Міграція бази даних з Webitel v23.05 на v23.07:

su postgres
cd ~
psql webitel -qxc "ALTER EXTENSION timescaledb UPDATE;" 
wget https://git.webitel.com/projects/WEP/repos/postgres/raw/migration/23.05-23.07.sql
psql webitel -f 23.05-23.07.sql
rm 23.05-23.07.sql
exit

Оновіть або зведіть конфігураційний файл Nginx (якщо він був змінений вручну):

curl https://git.webitel.com/projects/WEP/repos/nginx/raw/default \
 -o /etc/nginx/sites-available/default.orig
vimdiff /etc/nginx/sites-enabled/default /etc/nginx/sites-available/default.orig
nginx -t

Перезапуск всіх сервісів після оновлення до Webitel v23.07:

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 \
  freeswitch ngcp-rtpengine-daemon opensips grafana-server nginx