Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление

Рассматривается вариант обновления контроллера SoftWLC версии 1.5 на Ubuntu Server 14.04.

Предупреждение

Перед обновлением необходимо обязательно сделать резервную копию виртуальной машины на случай необходимости восстановления.

Обновление контроллера производится в следующем порядке v.1.5 → v.1.7 →v.1.8 → v.1.9 → v.1.11→ mongo_update → v.1.12 → v.1.13 → v.1.14

Если во время обновления что-то пойдет не так, а сервис нужно будет быстро восстановить, то запускаете клон рабочей ВМ.

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

Подготовка к обновлению


Перед обновлением сделайте дамп БД и желательно сделать snapshot  системы для возможного отката в случае неудачного обновления:

Установите пакет pv перед сохранением БД и запуском скрипта.

На вход скрипта требуется подать login/password от БД.

Блок кода
themeRDark
vagrant@trusty:~$ sudo apt install pv
vagrant@trusty:~$ sudo ./backup_mysql.sh root root

backup_mysql.sh

Бэкап базы данных работоспособен только для вашей текущей версии SoftWLC.  Условно говоря, backup от  SoftWLC версии 1 не подойдет к SoftWLC версии 2.

Во время обновления в консоли Вам будут предложены варианты действий с конфигурационными файлами и базами данных. 

Обновление SoftWLC 1.5 → SoftWLC 1.7


Обновление производится с помощью скрипта:

Блок кода
themeRDark
vagrant@trusty:~$ sudo chmod +x softwlc_1.7_upgrade.sh
vagrant@trusty:~$ sudo ./softwlc_1.7_upgrade.sh

softwlc_1.7_upgrade.sh

После обновления проверьте работоспособность сервисов и снова сделайте дамп БД/snapshot.

Обновление SoftWLC 1.7 → SoftWLC 1.8


Обновление производится с помощью скрипта:

Блок кода
themeRDark
vagrant@trusty:~$ sudo chmod +x softwlc_1.8_upgrade.sh
vagrant@trusty:~$ sudo ./softwlc_1.8_upgrade.sh

softwlc_1.8_upgrade.sh

После обновления проверяем работу сервисов. Делаем новый snapshot и дамп БД. В случае неработоспособности сервисов делаем  откат на предыдущий snapshot системы.

Обновление SoftWLC 1.8 → SoftWLC 1.9


Положите конфигурационный файл softwlc_1.9_nginx.conf в корневую директорию и запустите скрипт обновления.

Блок кода
themeRDark
vagrant@trusty:~$ sudo chmod +x softwlc_1.9_upgrade.sh
vagrant@trusty:~$ sudo ./softwlc_1.9_upgrade.sh

softwlc_1.9_nginx.conf

softwlc_1.9_upgrade.sh

После обновления проверяем работу сервисов. Делаем новый snapshot и дамп БД. В случае неработоспособности сервисов делаем  откат на предыдущий snapshot системы.

Обновление SoftWLC 1.9 → SoftWLC 1.11


Обновление производится с помощью скрипта:

Блок кода
themeRDark
vagrant@trusty:~$ sudo chmod +x eltex-softwlc-helper-mos_1.11.sh
vagrant@trusty:~$ sudo ./eltex-softwlc-helper-mos_1.11.sh

eltex-softwlc-helper-mos_1.11.sh

После обновления проверяем работу сервисов. Делаем новый snapshot и дамп БД. В случае неработоспособности сервисов делаем  откат на предыдущий snapshot системы.

Обновление БД Mongo


Если версия mongodb ниже 2.6 то требуется обновить пакет скриптом mongo_update.sh .

Проверка версии:

Блок кода
themeRDark
vagrant@trusty:~$ mongo --version

Отдельное обновление БД Mongo связано с тем, что последующие версии SoftWLC требуют новую версию Mongo.

Перед обновлением Вам следует подготовить и сконвертировать конфигурационный файл Mongo

Распакуйте архив mongo_converter.tar на сервере следующей командой:

Блок кода
themeRDark
vagrant@trusty:~$ tar -xvf mongo_converter.tar.gz

Запустите на сервере скрипт, указав местоположение старого конфигурационного файла Mongo. Для запуска скрипта понадобится python3.

Блок кода
themeRDark
vagrant@trusty:~$ python3 mongo-converter/mongo-converter/converter/converter_core.py /etc/mongodb.conf

Будет создан конвертированный конфигурационный файл mongod.conf для версии Mongo 4.

mongo_converter.tar.gz

mongo_update.sh

Приступаем к обновлению Mongo:

Запустите с опциями --backup --remove --install --restore-config - сохранит настройки, сделает резервное копирование баз, удалит любую существующую инсталяцию MongoDB, установит версию 4.0 из официального репозитория и установит настройки mongod.conf либо из папки где лежит сам скрипт, либо из резервной копии

Блок кода
themeRDark
vagrant@trusty:~$ sudo ./mongo_update.sh --backup --remove --install --restore-config

БД и конфиг-файл сохранится в дирректорию /tmp/mongo/

Если была настроена репликация данных, то настройте ее на данном этапе.

Запустите с опцией --restore для восстановления баз:

Блок кода
themeRDark
vagrant@trusty:~$ sudo ./mongo_update.sh --restore
Platform: x86_64
Ubuntu distrib code name: trusty
Restoring data...
2019-09-20T11:39:39.734+0700 preparing collections to restore from
2019-09-20T11:39:39.737+0700 reading metadata for wifi-customer-cab.eventlog from /tmp/mongo/dump/wifi-customer-cab/eventlog.metadata.json
2019-09-20T11:39:39.739+0700 reading metadata for pcrf.macs from /tmp/mongo/dump/pcrf/macs.metadata.json
...

Проверьте, что все восстановилось корректно;

Запустите с опцией --clean для очистки временных файлов и старых баз.

Блок кода
themeRDark
vagrant@trusty:~$ sudo ./mongo_update.sh --clean

Обновление SoftWLC 1.11 → SoftWLC 1.12


Обновление производится с помощью скрипта:

Блок кода
themeRDark
vagrant@trusty:~$ sudo chmod +x eltex-softwlc-helper-mos_1.12.sh
vagrant@trusty:~$ sudo ./eltex-softwlc-helper-mos_1.12.sh

eltex-softwlc-helper-mos_1.12.sh

Проверяем работу сервисов. Делаем новый snapshot и дамп БД. В случае неработоспособности сервисов делаем  откат на предыдущий snapshot системы.

Скрипт можете использовать прикрепленный к мануалу или же напрямую скачать с архива ELTEX:

Блок кода
themeRDark
vagrant@trusty:~$ wget http://archive.eltex.org/wireless/help/softwlc-1.12/eltex-softwlc-helper-mos_1.12.sh

Backup БД производится командами:

Блок кода
themeRDark
vagrant@trusty:~$ sudo ./backup_mysql.sh root root
vagrant@trusty:~$ sudo ./mongo_update.sh --backup

backup_mysql.sh

Обновление SoftWLC 1.12 (Ubuntu 14.04)→ SoftWLC 1.13


Если у Вас стоит версия контроллера 1.12 и Ubuntu Server 14.04, то Вам потребуется подготовить второй сервер и установить на него Ubuntu Server 16.04.

После установки на новый сервер Ubuntu Server 16.04 Вам потребуется установить SoftWLC версии 1.12:

Блок кода
themeRDark
vagrant@trusty:~$ wget http://archive.eltex.org/wireless/help/softwlc-1.12/eltex-softwlc-helper-mos_1.12.sh
vagrant@trusty:~$ sudo chmod +x eltex-softwlc-helper-mos_1.12.sh

eltex-softwlc-helper-mos_1.12.sh

Скрипт можете использовать прикрепленный к мануалу или же напрямую скачать с архива ELTEX:

Блок кода
themeRDark
vagrant@trusty:~$ wget http://archive.eltex.org/wireless/help/softwlc-1.12/eltex-softwlc-helper-mos_1.12.sh


Предупреждение

После установки SoftWLC 1.12 перенесите лицензии со старого сервера на новый сервер.

Лицензии и сертификаты в проекте SoftWLC

Восстановление БД и обновление


Восстанавливаем последний backup Mysql и Mongo из пункта 12.

Перед восстановлением переместите содержимое директории /tmp/mongo/, дампы Mysql со старого сервера Ubuntu 14.04 на новый сервер с Ubuntu 16.04.

Конфигурационный файл mongod.conf положите в домашний каталог откуда будете запускать скрипт mongo_update.sh

Блок кода
themeRDark
sudo ./mongo_update.sh  --restore-config
sudo ./mongo_update.sh  --restore
sudo ./restore_mysql.sh root root

restore_mysql.sh

mongo_update.sh

После восстановления БД проверяем работу сервисов. Делаем новый snapshot и дамп БД.

Обновления производим с помощью скрипта.

Блок кода
themeRDark
vagrant@trusty:~$ sudo chmod +x eltex-softwlc-helper-mos_1.13.sh
vagrant@trusty:~$ sudo ./eltex-softwlc-helper-mos_1.13.sh

eltex-softwlc-helper-mos_1.13.sh

Скрипт можете использовать прикрепленный к мануалу или же напрямую скачать с архива ELTEX:

Блок кода
themeRDark
vagrant@trusty:~$ wget http://archive.eltex.org/wireless/help/softwlc-1.13/eltex-softwlc-helper-mos_1.13.sh

Проверяем работу сервисов. Делаем новый snapshot и дамп БД. В случае неработоспособности сервисов делаем  откат на предыдущий snapshot системы.

Обновление SoftWLC 1.13 → SoftWLC 1.14


Обновления производим с помощью скриптов SoftWLC 1.13 и SoftWLC 1.14

Блок кода
themeRDark
vagrant@trusty:~$ sudo chmod +x eltex-softwlc-helper-mos_1.14.sh
vagrant@trusty:~$ sudo ./eltex-softwlc-helper-mos_1.14.sh

eltex-softwlc-helper-mos_1.14.sh

Скрипт можете использовать прикрепленный к мануалу или же напрямую скачать с архива ELTEX:

Блок кода
themeRDark
vagrant@trusty:~$ wget http://archive.eltex.org/wireless/help/softwlc-1.14/eltex-softwlc-helper-mos_1.14.sh

Проверяем работу сервисов. Делаем новый snapshot и дамп БД. В случае неработоспособности сервисов делаем  откат на предыдущий snapshot системы.

Архив со скриптами


SoftWLC upgrade.tar.gz