Оглавление |
---|
Установка Wimark One
Установка Docker
Предупреждениеnote |
---|
Для установки Docker необходимы права суперпользователя/root |
1.Войти под пользователем root следующей командой:
...
Раскрыть | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
2. Установить набор пакетов, который необходим для доступа к репозиторию docker:
3. Добавить GPG-key для работы с официальным репозиторием Docker:
4. Добавить официальный репозиторий Docker в локальный список (копировать эту команду необходимо полностью):
5. Обновить список, установить пакеты и запустить Docker:
|
Информация |
---|
При необходимости установки каким-либо другим способом, либо на другую ОС, на сайте Install Docker Engine есть подробные инструкции для установки. |
Установка ПО Wimark One
Необходимо загрузить дистрибутив Wimark One на тот сервер, где планируется установка ПО.
Загрузить дистрибутив 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).
Рисунок 1
Следует указать FQDN. Если FQDN использоваться не будет, то можно указать любое доменное имя, например: one.mydomain.com.
Информация |
---|
FQDN (Fully Qualified Domain Name) полное доменное имя определяющее узел в сети Интернет (имя домена, на которое будет реагировать веб-сервер). После установки основных компонентов, будет предложено установить SMTP (рисунок 2). |
Рисунок 2
Следует указать: y - для запуска установки, N - для отказа от установки.
Simple Mail Transfer Protocol (SMTP) - простой протокол передачи почты, применяемый для пересылки электронных писем с сервера отправителя на сервер получателя.
Рисунок 3 - Пример заполнения установщика SMTP
Примечание |
---|
SMTP_HOST - имя хоста или IP-адрес SMTP-сервера, который будет отправлять сообщения. SMTP_PORT - номер порта для подключения к SMTP-серверу, по умолчанию 25. SMTP_USER - логин УЗ для SMTP. SMTP_PASS - пароль УЗ для SMTP. |
Проверка работоспособности
Для контроля работоспособности Wimark One пользователю следует перейти на web интерфейс платформы. При успешном завершении установки отобразится форма авторизации в соответствии с рисунком 14.
Информация |
---|
Логин/пароль по умолчанию: wimark/wimark |
Рисунок 4 - Форма авторизации
Устранение проблем при загрузке
Ошибка 502 Gateway при попытке авторизации в web интерфейсе
После перезагрузки виртуальной машины с развернутой платформой Wimark One могут возникать ошибки 502 gateway. Для решения необходимо выполнить следующие действия :
зайти на ВМ с платформой;
выполнить команду:
Блок кода |
---|
sudo docker restart one_nginx-ssl-proxy_1 |
Отсутствие платформы после жесткой перезагрузки
Если после жесткой перезагрузки не доступен Web UI, а также не работают сервисы, то необходимо:
зайти на ВМ с платформой;
выполнить команды:
Блок кода |
---|
sudo su cd /etc/wimark/one bash start.sh |
Обновление Wimark One
Процесс обновления Wimark One представляет собой удаление старых компонентов и установку новой версии платформы.
Если нет необходимости в переносе старых данных (статистики, SSID, настроек ТД и т.д.), то необходимо только удалить старую версию платформы, а затем установить новую версию в соответствии с инструкцией по установке Установка ПО Wimark One .
Создание резервных копий
Перед созданием резервной копии БД необходимо убедиться в том, что на сервере достаточно свободного места.
Для создания резервной копии платформы Wimark One рекомендуется иметь минимум 6G свободного места.
...
При создании полной резервной копии БД копируются все данные, т.е. статистика, конфигурация, static, ключ и т.д. Использование данного метода гарантирует полное копирование данных, но значительно замедляет процесс восстановление БД, и сама резервная копия БД занимает довольно много места.
Создание полной резервной копии
Создать резервную копию контейнеров:
Блок кода |
---|
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 |
Создание частичной резервной копии
Создать резервную копию БД без коллекций со статистикой:
Блок кода |
---|
docker exec -it $(docker ps | grep 'one-mongo-1\|one-mongo-ha-1' | \ awk '{ print $1;}') bash mongodump --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 |
Обновление ПО и перенос БД
Обновление ПО
Необходимо полностью удалить старую платформу следующей командой:
Блок кода |
---|
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;}') |
Далее следует подождать несколько минут и проверить работоспособность в соответствии с разделом Проверка работоспособности.