mirror of
https://github.com/vvzvlad/vestasync.git
synced 2024-11-05 06:49:11 +03:00
update readme
This commit is contained in:
parent
a3a08cd890
commit
b0cbfd18f9
27
README.md
27
README.md
@ -1,4 +1,4 @@
|
||||
# Vestasync
|
||||
# VestaSync
|
||||
|
||||
VestaSync - это ПО для бекапа и восстановления контроллеров Wirenboard. Оно решает две задачи:
|
||||
|
||||
@ -7,7 +7,7 @@ VestaSync - это ПО для бекапа и восстановления ко
|
||||
|
||||
VestaSync — это набор скриптов, которые выполняют следующие функции:
|
||||
|
||||
1. При установке на контроллер:
|
||||
1. При первоначальной установке на контроллер:
|
||||
|
||||
- Создают в /mnt/data/etc/ git-репозитарий
|
||||
- Сохраняют текущие MAC-адреса в /mnt/data/etc/vestasync/macs/[interface]
|
||||
@ -15,8 +15,8 @@ VestaSync — это набор скриптов, которые выполня
|
||||
|
||||
2. При изменении конфигурационных файлов
|
||||
|
||||
- Создают коммит коммиты на каждое изменение файлов
|
||||
- Загружающит эти коммиты на сервер
|
||||
- Создают коммиты на каждое изменение файлов
|
||||
- Загружают эти коммиты на сервер
|
||||
|
||||
3. При восстановлении из бекапа
|
||||
|
||||
@ -26,7 +26,8 @@ VestaSync — это набор скриптов, которые выполня
|
||||
|
||||
## Установка VestaSync на локальную машину
|
||||
|
||||
**Эти команды выполняются не на контроллере**, а на локальной машине или на сервере, с которых есть доступ к контроллеру. Система изначально писалась для инсталляций с множеством контроллеров, поэтому она сама заходит на пустой контроллер и настраивает его (так работает, например, ansible). Для настройки десяти контроллеров надо просто запустить 10 команд с разными ```device_ip```.
|
||||
**Эти команды выполняются не на контроллере**, а на локальной машине или на сервере, с которых есть доступ к контроллеру. Система изначально писалась для инсталляций с множеством контроллеров, поэтому она работает по модели ansible — при запуска на локальной машине сама заходит на пустой контроллер и настраивает его.
|
||||
Плюс этого подхода в том, что для настройки десяти контроллеров надо просто запустить скрипт локально (подробнее см. Разное-Множественный запуск в этом файле) с разными ```device_ip```, а не заходить на каждый контроллер вручную.
|
||||
|
||||
```bash
|
||||
git clone https://github.com/vvzvlad/vestasync
|
||||
@ -44,7 +45,7 @@ pip install -r requirements.txt
|
||||
### install — установка на контроллер
|
||||
|
||||
Команда `install` выполняет подготовительные действия — устанавливает ПО, создает гит-репозитарий, устанавливает службы (подробнее в разделе "Службы").
|
||||
Эту команду надо выполнять, указывая в ```device_ip``` исходный контроллер (который будет стоять в проде инсталляции) перед началом эксплуатации (если выполнять ее еще до настройки, то бонусом получим сохранение конфигов и wb-rules в гите во время разработки и ПНР). Эта команда выполняется на контроллере один раз.
|
||||
Эту команду надо выполнять, указывая в ```device_ip``` исходный контроллер (который будет стоять в проде инсталляции) перед началом эксплуатации (если выполнять ее еще до настройки, то бонусом получим сохранение конфигов и wb-rules в гите во время разработки и ПНР). Эта команда выполняется на контроллере один раз.
|
||||
|
||||
|
||||
Пример запуска (запускается на локальной машине, адрес контроллера указывается в ```device_ip```):
|
||||
@ -55,7 +56,7 @@ pip install -r requirements.txt
|
||||
--device_ip 192.168.1.85
|
||||
--gitea_address http://192.168.1.101:3001/
|
||||
--device_new_name WB2
|
||||
--gitea_token de8a2eaee0d2f27746157c2fd563815f932d671c`
|
||||
--gitea_token de8a2eaee0d2f27746157c2fd563815f932d671c
|
||||
--user_cmd user_cmd.sh
|
||||
```
|
||||
|
||||
@ -89,7 +90,7 @@ hwclock --systohc --localtime
|
||||
--cmd restore
|
||||
--device_ip 192.168.1.85
|
||||
--gitea_address http://192.168.1.101:3001/
|
||||
--gitea_token de8a2eaee0d2f27746157c2fd563815f932d671c`
|
||||
--gitea_token de8a2eaee0d2f27746157c2fd563815f932d671c
|
||||
--source_hostname WB2-A3TBJXLS
|
||||
```
|
||||
|
||||
@ -133,16 +134,20 @@ reboot
|
||||
В папке системы лежит файл "user_cmd.sh", Если вы не хотите ничего устанавливать, оставьте его пустым.
|
||||
|
||||
### Обновление скриптов
|
||||
|
||||
При повторном запуске команда ```install``` перезапишет файлы скриптов и сервисов для обновления скриптов на существующих контроллерах, если вышла новая версия Vestasync.
|
||||
В этом случае в ```--device_ip``` можно передать несколько IP-адресов:
|
||||
|
||||
```
|
||||
./vestasync.py --cmd install --device_ip 192.168.98.92 192.168.98.85 --gitea_address http://192.168.98.101:3001/ --device_new_name WB1 --gitea_token de8a2eaee0d2f27746157c2fd563815f932d670c
|
||||
./vestasync.py --cmd install
|
||||
--device_ip ==> 192.168.98.92 192.168.98.85 <==
|
||||
--gitea_address http://192.168.98.101:3001/
|
||||
--device_new_name WB1
|
||||
--gitea_token de8a2eaee0d2f27746157c2fd563815f932d670c
|
||||
```
|
||||
|
||||
Обратите внимание, что устанавливать Vestasync на несколько контроллеров лучше с помощью скрипта ниже, потому что при указании набора из нескольких адресов ```device_ip``` с командой ```install``` у них будет одинаковые имена хостов (```--device_new_name WB1```), отличающееся только серийным номером: WB1-AFYATAO7, WB1-A3TBJXLS и так далее.
|
||||
|
||||
|
||||
### Множественный запуск
|
||||
|
||||
Если вам надо запустить скрипт сразу на множестве контроллеров, это можно сделать так:
|
||||
@ -221,4 +226,4 @@ services:
|
||||
- /root/gitea/pg-data:/var/lib/postgresql/data
|
||||
```
|
||||
|
||||
После запуска контейнера, надо перейти в веб-панель Gitea, создать там пользователя Vestasync, после чего получить в его настройках токен доступа, установив все галочки. В дальнейшем этот токен указывается в ```gitea_token```
|
||||
После запуска контейнера, надо перейти в веб-панель Gitea, создать там пользователя "vestasync", после чего получить в его настройках токен доступа, установив все галочки. В дальнейшем этот токен указывается в ```gitea_token```
|
||||
|
Loading…
Reference in New Issue
Block a user