This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
en:migrage-tms [2022/02/14 15:34] Виталий Журавлев created |
en:migrage-tms [2025/03/05 14:41] (current) Виталий Журавлев |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | FIXME **This page is not fully translated, yet. Please help completing the translation.**\\ //(remove this paragraph once the translation is finished)// | ||
- | ====== Migration DB at TMS ====== | + | ====== Migration Tvip TMS between servers ====== |
- | |||
- | * [[migrationdb#sozdanie_rezervnoj_kopii_vashej_bazy_dannyj_postgresql|Creating dump your DataBase]] | ||
- | * [[migrationdb#kopirovanie_rezervnoj_kopii_bazy_dannyj_postgresql|Копирование резервной копии базы данных]] | ||
- | * [[migrationdb#sozdanie_bazy_dannyx|Создание базы данных]] | ||
- | * [[migrationdb#sozdanie_bazy_dannyx|Восстановление резервной копии базы данных]] | ||
- | * [[migrationdb#razvertyvanie_novogo_tms|Развертывание нового TMS]] | ||
- | * [[migrationdb#procedury_posle_migracii|Процедуры после миграции]] | ||
===== Creating dump your DataBase ===== | ===== Creating dump your DataBase ===== | ||
- | Create dump your PostgreSQL Database with "**pg_dump**" tool \\ | + | Create dump your PostgreSQL database with "**pg_dump**" tool \\ |
<code> | <code> | ||
- | pg_dump -U tvip-tms tvip-tms > /backup/tvip-tms.sql | + | pg_dump --no-owner --exclude-table-data=device_stat_channel -U tvip-tms tvip-tms > /backup/tvip-tms.sql |
</code> | </code> | ||
- | :!: При необходимости сделайте резервные копии дополнительных баз данных | + | :!: If you need make dumps of others databases |
<code> | <code> | ||
- | pg_dump -U tvip-tms tvip-tms-audit > /backup/tvip-tms-audit.sql | + | pg_dump --no-owner -U tvip-tms tvip-tms-audit > /backup/tvip-tms-audit.sql |
- | pg_dump -U tvip-tms tvip-tms-vod > /backup/tvip-tms-vod.sql | + | pg_dump --no-owner -U tvip-tms tvip-tms-vod > /backup/tvip-tms-vod.sql |
</code> | </code> | ||
- | ===== Копирование резервной копии Базы данный PostgreSQL ===== | + | ===== Copy dump of databases to new TMS server ===== |
- | Скопируйте резервную копию базы данных, сделанную на предыдущем шаге, на новый сервер с помощью утилиты "**scp**" | + | Copy dump of database to new TMS server with "**scp**" tool. |
<code> | <code> | ||
scp /backup/tvip-tms.sql username@host:/backup/ | scp /backup/tvip-tms.sql username@host:/backup/ | ||
Line 33: | Line 25: | ||
- | ===== Создание базы данных ===== | + | ===== Creating database ===== |
- | Перед установкой TVIP TMS установите базу данных и восстановите данные ее из резервной копии.\\ | + | Before install TVIP TMS, you should install PostgreSQL and restore dump of Database.\\ |
- | * Установка и проверка локали | + | * Setup and check of locale |
- | Выполните команду: | + | Run this cli command: |
<code> | <code> | ||
sudo dpkg-reconfigure locales | sudo dpkg-reconfigure locales | ||
</code> | </code> | ||
- | + | Make sure the locale is selected: "[*] en_US.UTF-8 UTF-8" and others locale what you need, and select them if you'd like it. | |
- | Убедитесь, что выбрана локаль: "[*] en_US.UTF-8 UTF-8" и остальные необходимые вам локали, при необходимости добавьте их. | + | * Install PostgreSQL Database: |
- | * Установка базы данных PostgreSQL | + | |
<code> | <code> | ||
sudo apt -y install postgresql | sudo apt -y install postgresql | ||
</code> | </code> | ||
- | * Создайте базу данных с именем tvip-tms и пользователя tvip-tms | + | * Create user tvip-tms and database tvip-tms with owner tvip-tms |
<code> | <code> | ||
- | sudo -u postgres psql | + | su -c "createuser tvip-tms && createdb -O tvip-tms tvip-tms" postgres |
- | createuser tvip-tms && createdb -O tvip-tms tvip-tms; | + | |
- | \q | + | |
</code> | </code> | ||
- | :!: При необходимости создайте дополнительные базы данных | + | :!: If you use other databases then create them: |
<code> | <code> | ||
- | sudo -u postgres psql | + | su -c "createdb -O tvip-tms tvip-tms-audit" postgres |
- | createdb -O tvip-tms tvip-tms-audit; | + | su -c "createdb -O tvip-tms tvip-tms-vod" postgres |
- | createdb -O tvip-tms tvip-tms-vod; | + | |
- | \q | + | |
</code> | </code> | ||
- | ===== Восстановление резервной копии базы данных ===== | + | ===== Restore the dump of database ===== |
- | * Восстановление резервной копии базы данных: | + | * Change auth method to postgres: |
+ | <code> | ||
+ | sed -i /etc/postgresql/*/main/pg_hba.conf -e "s|local all all peer|local all all trust|" | ||
+ | sed -i /etc/postgresql/*/main/pg_hba.conf -e "s|host all all 127.0.0.1/32 md5|host all all 127.0.0.1/32 trust|" | ||
+ | systemctl reload postgresql | ||
+ | </code> | ||
+ | * Restore the dump of database: | ||
<code> | <code> | ||
psql -U tvip-tms tvip-tms < /backup/tvip-tms.sql | psql -U tvip-tms tvip-tms < /backup/tvip-tms.sql | ||
</code> | </code> | ||
- | * Сбросьте значение для //auth key//: | + | * Reset authentication keys //auth key//: |
<code> | <code> | ||
psql -U tvip-tms tvip-tms | psql -U tvip-tms tvip-tms | ||
- | update device set authkey = ''; | + | update device set authkey = null; |
\q | \q | ||
</code> | </code> | ||
- | ===== Развертывание нового TMS ===== | ||
- | Убедитесь, что соблюдены минимальные системные требования \\ | + | ===== Creating and restoring a MongoDB backup ===== |
- | **Системные требования**: | + | |
+ | Create a backup copy of the MongoDB database, using the utility **mongodump** | ||
+ | |||
+ | <code> | ||
+ | mongodump --db images --gzip --archive > /mongoBackup/images.dump.gz | ||
+ | </code> | ||
+ | |||
+ | Install the MongoDB database on the new server: | ||
+ | |||
+ | <code> | ||
+ | # apt install mongodb-org | ||
+ | # systemctl start mongod.service | ||
+ | # systemctl enable mongod.service | ||
+ | </code> | ||
+ | |||
+ | Restore a MongoDB backup, using the utility **mongorestore** | ||
+ | |||
+ | <code> | ||
+ | mongorestore --gzip --archive=/mongoBackup/images.dump.gz | ||
+ | </code> | ||
+ | |||
+ | :!: If you want to keep statistics, save and restore a backup for the database **content** | ||
+ | |||
+ | <code> | ||
+ | mongodump --db content --gzip --archive > /mongoBackup/content.dump.gz | ||
+ | mongorestore --gzip --archive=/mongoBackup/content.dump.gz | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ===== Deploy new TMS ===== | ||
+ | |||
+ | Make sure, your server has minimal system requirements \\ | ||
+ | **system requirements**: | ||
* Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz | * Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz | ||
- | * Минимум 32 GB ОЗУ | + | * Minimum 32 GB of RAM |
- | * Минимум 500 GB (свободного места на диске) для минимум 4000 активных и подключенных устройств. | + | * Minimum 500 GB (free disk space) for minimum 4000 active and online devices. |
<WRAP center round important 60%> | <WRAP center round important 60%> | ||
- | **Установка рекомендуется на операционной системе Linux Ubuntu 18.04, 20.04** | + | **Installation is recommended on Ubuntu LTS 18.04, 20.04** |
</WRAP> | </WRAP> | ||
- | =====Установка:===== | + | =====Installation:===== |
<code> | <code> | ||
echo "deb http://deb.packages.tvip.ru/ xenial main" >> /etc/apt/sources.list.d/tms.list | echo "deb http://deb.packages.tvip.ru/ xenial main" >> /etc/apt/sources.list.d/tms.list | ||
Line 98: | Line 122: | ||
</code> | </code> | ||
- | ===== Процедуры после миграции ===== | + | ===== Post migration procedure ===== |
- | + | <WRAP center round important 60%> | |
- | * Включите "Allow quick biding" для Вашего провайдера \\ | + | Enable "Allow quick binding" option on provider settings. Quick binding option allow authorization device without ask login/password. |
- | * Измените ip адрес вашего сервера ТМС или перенаправите DNS на новый TMS сервер.\\ | + | </WRAP> |
+ | * Change ip of server or change DNS record to route clients to new TMS.\\ |