| Оглавление | ||
|---|---|---|
| 
 | 
Установка Wimark One - HA
Предустановка
Для установки платформы Wimark One необходимо два сервера с предустановленной ОС на базе Linux.
В случае L2 связности - схема Intra DC, в случае L3 связности - Inter DC.
Для корректной работы ПО и для подключения ТД в Firewall необходимо открыть следующие порты:
- TCP: 80 / 443 (DST) - для управления через WEB-интерфейс; 
- UDP: 500 / 4500 (DST) - для туннеля IPSec между ТД и платформой (ТД подключается по ipsec); 
- TCP: 8080 / 8443 (DST) - для портала авторизации пользователей (для Portal модуля); 
- TCP: 1883 (DST) - для подключения ТД без туннеля (MQTT); 
- Убедится, что TCP: 27017 - открыты (MongoDB). 
Настройка беспарольного доступа между серверами
| Предупреждение | 
|---|
| ВАЖНО! Это необходимо выполнить на двух машинах! | 
- Необходимо создать нового пользователя - one: 
| Блок кода | ||
|---|---|---|
| 
 | ||
| adduser one | 
...
| Блок кода | ||
|---|---|---|
| 
 | ||
| ssh-keygen -t rsa | 
После ввода данной команды, следует указать место хранения ключей или нажать Enter для того, чтобы принять путь по умолчанию.
| Информация | 
|---|
| Запрос о введении кодовой фразы следует пропустить, т.к. может помешать автоматизации некоторых процессов. | 
Далее указать место, где хранятся ID и открытый ключ.
Рисунок 1 - Пример вывода команды ssh-keygen
...
| Информация | 
|---|
| {IP} - IP сервера, куда будет скопирован ключ. После завершения, следует убедиться, что действительно получилось сделать беспарольный доступ между двумя серверами. Если при подключении запрос пароля не поступил, то всё работает правильно. | 
Установка Wimark One
| Предупреждение | 
|---|
| При установке HA необходимы два сервера. Каждый шаг в данном разделе необходимо выполнять одновременно на обоих серверах, сначала на одном сервере, затем на другом. Пример: выполнить установку Docker (п. 3) на первом сервере, после окончания выполнения данного пункта выполнить тоже самое на втором сервере. | 
Необходимо загрузить дистрибутив Wimark One на тот сервер, где планируется установка ПО.
Для запуска установки необходимо выполнить:
- Сделать загруженный ранее дистрибутив Wimark One исполняемым: 
| Блок кода | ||
|---|---|---|
| 
 | ||
| sudo chmod +x /tmp/WiMark-one-1.12.1-2024-07-12-pro-qtech-ha-full-installer.run | 
...
| Блок кода | ||
|---|---|---|
| 
 | ||
| sudo /tmp/WiMark-one-1.12.1-2024-07-12-pro-qtech-ha-full-installer.run | 
Начиная с версии Wimark One 1.12, в дистрибутиве содержится интерактивный “установщик”, который поможет заполнить необходимые параметры для установки платформы.
| Предупреждение | 
|---|
| На момент установки платформы на двух сервера рекомендуется иметь доступ в Интернет, в противном случает подразумевается, что все перечисленные пакеты уже имеются на сервере. | 
...
4. Установка следующих пакетов:tcpdump, keepalived и rsync.
Для корректной работы платформы и установщика, необходимы установленные пакеты: tcpdump, keepalived и rsync. Если во время установки данные пакеты не будут обнаружены, то установщик самостоятельно скачает и установит их.
Рисунок 3 - Проверка и установка необходимых пакетов
...
| Предупреждение | 
|---|
| Данный пункт необходимо выполнить только на первом сервере! Следуйте инструкциям в пункте 7. | 
Рисунок 5 - FQDN
Если пользователь не собирается использовать FQDN, то следует указать любое доменное имя, например: one.mydomain.com
| Информация | 
|---|
| FQDN (Fully Qualified Domain Name) полное доменное имя определяющее узел в сети Интернет (имя домена, на которое будет реагировать веб-сервер). FQDN должен быть одинаковым, что на первом сервере, что на втором сервере. | 
...
| Предупреждение | 
|---|
| Не дожидаясь окончания загрузки образов Docker, необходимо выполнить пункты 6 и 7 на втором сервере. | 
На втором сервере необходимо будет выбрать именно тот “Мастер-сервер”, который был создан на первом сервере, например как на рисунке 7.
Рисунок 7 - Инициализация keepalived (BACKUP)
...
| Блок кода | ||
|---|---|---|
| 
 | ||
| -- УСТАНОВЩИК -- Процесс установки окончен | 
Необходимо добавить выполнение скрипта start.sh в cron:
| Блок кода | ||
|---|---|---|
| 
 | ||
| sudo crontab -u root -e | 
| Блок кода | ||
|---|---|---|
| 
 | ||
| * * * * * bash /opt/wimark/one/start.sh
* * * * * sleep 10 && bash /opt/wimark/one/start.sh
* * * * * sleep 20 && bash /opt/wimark/one/start.sh
* * * * * sleep 30 && bash /opt/wimark/one/start.sh
* * * * * sleep 40 && bash /opt/wimark/one/start.sh
* * * * * sleep 50 && bash /opt/wimark/one/start.sh | 
Проверка работоспособности
Для контроля работоспособности Wimark One пользователю следует перейти на web интерфейс платформы. При успешном завершении установки отобразится форма авторизации в соответствии с рисунком 10.
| Подсказка | 
|---|
| Логин/пароль по умолчанию: wimark/wimark | 
...
Рисунок 10 - Форма авторизации
Создание резервных копий (версия 1.11.8 и выше)
Перед созданием резервной копии БД необходимо убедиться в том, что на сервере достаточно свободного места. 
Для создания резервной копии платформы Wimark One рекомендуется иметь от 6 до 10 ГБ свободного места.
Есть два варианта создания резервной копии БД: полное и частичное.
При создании частичной резервной копии копируется только конфигурация (локации, настройки), лицензионный ключ и static файлы. Использование данного метода значительно ускоряет сам процесс восстановления БД и уменьшает размер резервной копии БД.
При создании полной резервной копии БД копируются все данные, т.е. статистика, конфигурация, static, ключ и т.д. Использование данного метода гарантирует полное копирование данных, но значительно замедляет процесс восстановление БД, и сама резервная копия БД занимает довольно много места.
Создание полной резервной копии
| Предупреждение | 
|---|
| Достаточно выполнить только на одной машине! Если имя контейнера с MongoDB отличается от того, что указано в команде, то можно использовать docker ps для поиска нужного контейнера. | 
- Создать резервную копию БД: 
| Блок кода | ||
|---|---|---|
| 
 | ||
| docker exec -it  $(docker ps | grep 'one-mongo-1\|one-mongo-ha-1' | \
 awk '{ print $1;}') mongodump --port 30001 --host rs0/mongo-rs-1 --db=test --gzip --archive=/tmp/backup_wimark.gz | 
...
| Блок кода | ||
|---|---|---|
| 
 | ||
| cp -r /opt/wimark/static /opt/wimark_backup/static | 
Создание частичной резервной копии
- Подготовить папку на сервере для резервной копии: 
| Блок кода | ||
|---|---|---|
| 
 | ||
| sudo mkdir /opt/wimark_backup/ | 
...
| Блок кода | ||
|---|---|---|
| 
 | ||
| cp -r /opt/wimark/static /opt/wimark_backup/static | 
Обновление Wimark One (HA) с версии 1.11.8 на версию 1.12
- Подготовить резервную копию БД. 
- Определить сервер, на котором БД является PRIMARY: 
| Блок кода | ||
|---|---|---|
| 
 | ||
| docker exec -it $(docker ps | grep 'one-mongo-1\|one-mongo-ha-1' | awk '{ print $1;}') \
 mongo --port 30001 --eval "printjson(db.runCommand('ismaster'))" | grep ismaster | 
...
| Блок кода | ||
|---|---|---|
| 
 | ||
| sudo /tmp/WiMark-one-1.12.1-2024-07-12-pro-qtech-ha-full-installer.run | 
Начиная с версии Wimark One 1.12, в дистрибутиве содержится интерактивный “установщик”, который поможет заполнить необходимые параметры для установки платформы.
| Предупреждение | 
|---|
| На момент установки платформы на двух сервера рекомендуется иметь доступ в Интернет, в противном случает подразумевается, что все перечисленные пакеты уже имеются на сервере. | 
...
Рисунок 14 - Обновление второго сервера
При выборе мастер-сервера, выбираем тот, который сейчас активен на первом сервере.
16. После завершения установки проверить, что на первом сервере тоже закончилась установка. Для этого может понадобится несколько минут, пока БД и другие контейнеры на втором сервере будут запускаться (рисунок 15).
...





