В данном релизе осуществлен переход на новую версию сервисов работы с чатами, а так же миграция баз данных на PostgreSQL версии 14.
Алгоритм обновления
- Полная остановка всех сервисов webitel
- Подключение нового репозитория Webitel v22.05
- Подготовка PostgreSQL 12 и установка новой версии PostgreSQL 14
- Миграция базы данных с версии PostgreSQL 12 на 14
- Удаление старой версии PostgreSQL 12 и запуск PostgreSQL 14
- Миграция базы данных с версии Webitel v22.03 на v22.05
- Удаление устаревших сервисов Webitel v22.03
- Установка и обновление сервисов Webitel v22.05
- Запуск всех обновленных сервисов Webitel v22.05
Полная остановка всех сервисов webitel
systemctl stop webitel-api webitel-app webitel-uac \ engine call_center storage chat_manager chatbot_manager flow_manager \ freeswitch ngcp-rtpengine-daemon opensips
Подключение нового репозитория Webitel v22.05
echo "deb http://deb.webitel.com/debian `lsb_release -sc` main" > /etc/apt/sources.list.d/webitel.list echo "deb http://deb.webitel.com/debian `lsb_release -sc` 22.05-releases" >> /etc/apt/sources.list.d/webitel.list apt update
Подготовка PostgreSQL 12 и установка новой версии PostgreSQL 14
apt purge timescaledb-postgresql-12 timescaledb-loader-postgresql-12 apt install timescaledb-2-loader-postgresql-12 timescaledb-2-postgresql-12 sudo -u postgres psql webitel -qxc "ALTER EXTENSION timescaledb UPDATE;" sudo -u postgres psql webitel -qxc "DROP EXTENSION "pgcrypto" CASCADE;" systemctl stop postgresql apt install postgresql-14 webitel-postgresql-14 timescaledb-2-postgresql-14 timescaledb-tune --quiet --yes systemctl stop postgresql
Миграция базы данных с версии PostgreSQL 12 на 14
su postgres cd /tmp /usr/lib/postgresql/14/bin/pg_upgrade \ --old-datadir "/etc/postgresql/12/main" \ --new-datadir "/etc/postgresql/14/main" \ --old-bindir "/usr/lib/postgresql/12/bin" \ --new-bindir "/usr/lib/postgresql/14/bin" exit
Вносим правки в файлы /etc/postgresql/14/main/postgresql.conf и /etc/postgresql/14/main/pg_hba.conf
Удаление старой версии PostgreSQL 12 и запуск PostgreSQL 14
apt purge webitel-postgresql-12 timescaledb-2-postgresql-12 timescaledb-2-loader-postgresql-12 postgresql-client-12 postgresql-12 rm -rf '/var/lib/postgresql/12' systemctl enable postgresql systemctl start postgresql sudo -u postgres psql webitel -qxc "ALTER USER opensips WITH PASSWORD 'webitel';"
Возможно нужно будет обновить пароли для других пользователей базы.
Миграция базы данных с версии Webitel v22.03 на v22.05
su postgres cd /tmp wget https://git.webitel.com/projects/WEP/repos/postgres/raw/migration/22.03-22.05.sql psql webitel -f 22.03-22.05.sql exit
Удаление устаревших сервисов Webitel v22.03
apt purge webitel-chat-manager systemctl disable chat_manager chatbot_manager rm /etc/systemd/system/chat_manager.service rm /etc/systemd/system/chatbot_manager.service
Установка и обновление сервисов Webitel v22.05
apt install webitel-messages opensips-http-modules opensips-postgres-module \ opensips-presence-modules opensips-rabbitmq-modules opensips-wss-module \ opensips-tls-module opensips-tlsmgm-module opensips-xmlrpc-module cp /opt/webitel/etc/systemd/system/messages-bot.service /etc/systemd/system/ cp /opt/webitel/etc/systemd/system/messages-srv.service /etc/systemd/system/ systemctl enable messages-bot messages-srv
Запуск всех обновленных сервисов Webitel v22.05
systemctl restart consul systemctl restart rabbitmq-server systemctl restart webitel-api webitel-app webitel-uac messages-bot messages-srv flow_manager engine call_center storage freeswitch ngcp-rtpengine-daemon nginx
Обновите либо сведите конфигурационный файл OpenSIPS (если он был изменен вручную):
curl https://git.webitel.com/projects/WEP/repos/opensips/raw/opensips.cfg \ -o /etc/opensips/opensips.cfg systemctl restart opensips