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

Ключ

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

...

Установка Wimark One

Установка Docker

Предупреждениеnote
Для установки Docker необходимы права суперпользователя/root

1.Войти под пользователем root следующей командой:

...

Раскрыть
titleУстановка через apt-репозиторий
  1. Обновить список для актуализации установочных пакетов:



Блок кода
sudo apt-get update




2. Установить набор пакетов, который необходим для доступа к репозиторию docker:


Блок кода
sudo apt-get install ca-certificates curl gnupg




3. Добавить GPG-key для работы с официальным репозиторием Docker:


Блок кода
sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \ sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg




4. Добавить официальный репозиторий Docker в локальный список (копировать эту команду необходимо полностью):


Блок кода
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \ https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null




5. Обновить список, установить пакеты и запустить Docker :


Блок кода
sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin \ docker-compose-plugin systemctl start docker





Информация
При необходимости установки каким-либо другим способом, либо на другую ОС, на сайте Install Docker Engine есть подробные инструкции для установки.

...

Загрузить дистрибутив Wimark One на сервер (при наличии доступа в интернет):

Блок кода
wget https://storage.wimark.com/api/public/dl/XZqjHaJe \
 -O /tmp/WiMark-one-1.11.0-2023-10-30-qtech-installer.run 
sudo chmod +x /tmp/WiMark-one-1.11.0-2023-10-30-qtech-installer.run


Для запуска установки необходимо выполнить bash:




Блок кода
sudo /tmp/WiMark-one-1.11.0-2023-10-30-qtech-installer.run



Примечание

/tmp/ - каталог в котором хранятся временные файлы. Файлы удаляются спустя определенное время и после перезагрузки сервера.

https://storage.wimark.com/api/public/dl/XZqjHaJe - пример ссылки на прошивку.

WiMark-one-1.11.0-2023-10-30-qtech-installer.run - пример имени файла, может отличаться в зависимости от сборки и версии ПО.





Информация
Файлы конфигурации расположены в папке /opt/wimark/наименование сборки.

Во время установки будет предложено заполнить FQDN (рисунок 1).

Image RemovedРисунок 1Image Added
Рисунок 1

Следует указать FQDN. Если FQDN использоваться не будет, то можно указать любое доменное имя, например: one.mydomain.com.


Информация

FQDN (Fully Qualified Domain Name) полное доменное имя определяющее узел в сети Интернет (имя домена, на которое будет реагировать веб-сервер).

После установки основных компонентов, будет предложено установить SMTP (рисунок 2).


Image AddedРисунок 2

Следует указать: y - для запуска установки, N - для отказа от установки.

Simple Mail Transfer Protocol (SMTP) - простой протокол передачи почты, применяемый для пересылки электронных писем с сервера отправителя на сервер получателя.Image Added

Рисунок 3 - Пример заполнения установщика SMTP




Примечание

SMTP_HOST - имя хоста или IP-адрес SMTP-сервера, который будет отправлять сообщения.

SMTP_PORT - номер порта для подключения к SMTP-серверу, по умолчанию 25.

SMTP_USER - логин УЗ для SMTP.

SMTP_PASS - пароль УЗ для SMTP.


Проверка работоспособности

Для контроля работоспособности Wimark One пользователю следует перейти на web интерфейс платформы. При успешном завершении установки отобразится форма авторизации в соответствии с рисунком 14.

Информация
Логин/пароль по умолчанию: wimark/wimark

Image Added

Рисунок 4 - Форма авторизации

...

  1. зайти на ВМ с платформой;

  2. выполнить команду:


Блок кода
sudo docker restart one_nginx-ssl-proxy_1


Отсутствие платформы после жесткой перезагрузки

...

  1. зайти на ВМ с платформой;

  2. выполнить команды:

Блок кода
sudo su cd /etc/wimark/one bash start.sh


Обновление Wimark One

Процесс обновления Wimark One представляет собой удаление старых компонентов и установку новой версии платформы.
Если нет необходимости в переносе старых данных (статистики, SSID, настроек ТД и т.д.), то необходимо только удалить старую версию платформы, а затем установить новую версию в соответствии с инструкцией по установке Установка ПО Wimark One .

Создание резервных копий

Перед созданием резервной копии БД необходимо убедиться в том, что на сервере достаточно свободного места.
Для создания резервной копии платформы Wimark One рекомендуется иметь минимум 6G свободного места.

...

  1. Создать резервную копию контейнеров:

Блок кода
docker save -o /opt/wimark_backup/images.tar \ $(docker compose -f /opt/wimark/one/docker-compose.yml config \ | grep image | awk '{print $2;}')



Подсказка

Данный пункт не является обязательным.

На данном шаге создается резервная копия контейнеров, которые удаляются при обновлении. Но если после обновления возникнут проблемы и необходимо будет вернуть всё назад, то выполнение данного пункта предоставит такую возможность.
Значительно влияет на размер резервной копии!



2. Создать резервную копию БД:

Блок кода
docker exec -it $(docker ps | grep 'one-mongo-1\|one-mongo-ha-1' | \ awk '{ print $1;}') mongodump --db=test --gzip --archive=/tmp/backup_wimark.gz


Информация
Если имя контейнера с MongoDB отличается от того, что указано в команде, то можно использовать команду docker ps для поиска нужного контейнера.

3. Создать папку для резервной копии:


Блок кода
mkdir /opt/wimark_backup/


4. Копировать архив с резервной копией БД из контейнера в систему:

Блок кода
docker cp $(docker ps | grep 'one-mongo-1\|one-mongo-ha-1' | \ awk '{ print $1;}'):/tmp/backup_wimark.gz /opt/wimark_backup/


5. Создать резервную копию static файлов, которые находятся в папке /opt/wimark/static:


Блок кода
cp -r /opt/wimark/static /opt/wimark_backup/static


Информация
Если версия Wimark One ниже 1.10, то файлы будут находится каталоге /usr/share/wimark/static

Создание частичной резервной копии

  1. Создать резервную копию БД без коллекций со статистикой:


Блок кода
docker exec -it $(docker ps | grep 'one-mongo-1\|one-mongo-ha-1' | \ awk '{ print $1;}')

...

 bashmongodump --db=test --excludeCollection=bss_stat_info \ --excludeCollection=client_stat_info --excludeCollection=client_stats \ --excludeCollection=cpe_stat_info --excludeCollection=stats \ --excludeCollection=wlan_stat_info --gzip --archive=/tmp/backup_wimark.gz; exit


2. Копировать архив с резервной копией БД из контейнера в систему:

Блок кода
docker cp $(docker ps | grep 'one-mongo-1\|one-mongo-ha-1' | \ awk '{ print $1;}'):/tmp/backup_wimark.gz /opt/wimark_backup/


3. Создать резервную копию static файлов, которые находятся в папке /opt/wimark/static:


Блок кода
cp -r /opt/wimark/static /opt/wimark_backup/static


Обновление ПО и перенос БД

...

  1. Необходимо полностью удалить старую платформу следующей командой:


Блок кода
rm -r /opt/wimark; docker rm -f $(docker ps -qaf "name=one-|master|backup|one_")


Информация
Если версия Wimark One ниже 1.10, то файлы будут находится в каталоге /etc/wimark

Если на сервере в docker используется только Wimark One, то можно дополнительно выполнить эту команду:


Блок кода
docker system prune --all --volumes


Примечание
Данная команда удалит все остановленные контейнеры, “висящие” (неиспользуемые) Docker-образы, неиспользуемые сети и тома. Поэтому следует использовать данную команду только в том случае, если в Docker устанавливалось только ПО Wimark One.

2. Скачать на сервер и запустить установку (более подробное описание в разделе инструкции по установке):

Блок кода
wget https://storage.wimark.com/api/public/dl/XZqjHaJe \
 -O /tmp/WiMark-one-1.11.0-2023-10-30-qtech-installer.run 
sudo chmod +x /tmp/WiMark-one-1.11.0-2023-10-30-qtech-installer.run 
sudo /tmp/WiMark-one-1.11.0-2023-10-30-qtech-installer.run



Примечание

/tmp/ - каталог в котором хранятся временные файлы. Файлы удаляются спустя определенное время и после перезагрузки сервера.

https://storage.wimark.com/api/public/dl/XZqjHaJe - пример ссылки на прошивку.

WiMark-one-1.11.0-2023-10-30-qtech-installer.run - пример имени файла, может отличаться в зависимости от сборки и версии ПО.


Перенос БД

1.После того, как платформа полноценно запуститься (все контейнеры поднимаются за несколько минут), необходимо принудительно остановить контейнер отвечающий за backend:


Блок кода
docker stop $(docker ps | grep 'backend-golang-1' | awk '{ print $1;}')


2. Копировать ранее созданную резервную копию БД в контейнер mongo:

Блок кода
docker cp /opt/wimark_backup/backup_wimark.gz $(docker ps | \ grep 'one-mongo-1\|one-mongo-ha-1' | awk '{ print $1;}'):/tmp/


3. Запустить процесс восстановления из резервной копии:

Блок кода
docker exec -it $(docker ps | grep 'one-mongo-1\|one-mongo-ha-1' | \ awk '{ print $1;}') mongorestore --drop --nsInclude='test.*' \ --gzip --archive=/tmp/backup_wimark.gz



Примечание

--drop - перезаписывает текущие данные в БД.

В зависимости от размеров коллекций и технических характеристик сервера, этот процесс может занять от нескольких минут до нескольких часов!


4. Удалить новые и перенести старые файлы static:

Блок кода
rm -r /opt/wimark/static cp -r /opt/wimark_backup/static /opt/wimark/


5. Запустить контейнер отвечающий за backend:

Блок кода
docker start $(docker ps | docker ps -a | grep 'backend-golang-1' | \ awk '{ print $12;}')


Далее следует подождать несколько минут и проверить работоспособность в соответствии с разделом Проверка работоспособности.

...