Быстрый старт
Краткая шпаргалка: поднять сервер LSUS (роль Master, в Docker-контейнерах) и клиент (пакет на управляемый хост) за минимум шагов. Минимальный контур для проверки — один Master + один клиент.
Серверные роли разворачиваются только в Docker — пакеты ОС LSUS сами установят Docker, загрузят образы и запустят контейнеры. Клиент lsus-client ставится на хост управляемой машины напрямую из пакета.
Полные сценарии с пояснениями: Развёртывание серверов. Требования к хосту (ОС, ресурсы, firewall, DNS): Требования и подготовка. Справочник портов и переменных: Справочник.
Это шпаргалка
Здесь — только команды для быстрого старта. Объяснения, проверочные шаги, регистрация Site/Edge, настройка HTTPS и вынос дисков — в Развёртывании серверов.
Минимальные требования#
| Сервер (Master) | Клиент | |
|---|---|---|
| ОС | Astra 1.7/1.8, Debian 13, Ubuntu 24.04+, РЕД ОС, Альт Сервер 11 | то же семейство, что и пакет |
| Ресурсы | 4 vCPU / 8 ГБ RAM (для пилота) | 1 vCPU / 1 ГБ RAM |
| Диск | от 120 ГБ под /opt/lsus-docker/data (для пилота; продуктив — см. Требования) |
~1 ГБ |
| Сеть | открытый порт 8443 (443 — при ручном развёртывании из .env.example) |
исходящий HTTPS до сервера |
Порядок установки сервера (любая роль)#
Ролевой пакет LSUS (lsus-master, lsus-site, lsus-edge) через Depends/Requires автоматически тянет пакеты Docker-образов и сам Docker, после чего запускает сервер в контейнерах. На практике достаточно поставить только ролевой пакет — пакетный менеджер установит Docker, образы и все остальное. Полная раскладка по пакетам:
| № | Пакет | Назначение | Master | Site | Edge |
|---|---|---|---|---|---|
| 1 | lsus-image-postgres |
Образ контейнера PostgreSQL 15 | ✅ | ✅ | ✅ |
| 2 | lsus-image-pgbouncer |
Образ контейнера PgBouncer (пул соединений PG) | ✅ | ✅ | — |
| 3 | lsus-image-nginx |
Образ контейнера nginx (TLS-фронтенд) | ✅ | ✅ | ✅ |
| 4 | lsus-image-master / lsus-image-site / lsus-image-edge |
Образ приложения роли | ✅ | ✅ | ✅ |
| 5 | lsus-master / lsus-site / lsus-edge |
Ролевая установка: .env, данные, запуск контейнеров |
✅ | ✅ | ✅ |
PgBouncer нужен только Master и Site
Edge работает без пула соединений: к БД lsus_edge обращается только сам контейнер lsus-edge, нагрузка на соединения существенно ниже, чем у веб-процесса Master/Site. Поэтому пакет lsus-image-pgbouncer от Edge не зависит и при его установке не ставится.
Роль PXE (lsus-pxe + lsus-image-pxe + lsus-image-nginx) — отдельный exclusive-хост без PostgreSQL, ≥100 ГБ под ISO. Не входит в минимальный контур «Master + клиент». См. Установка PXE.
В командах ниже пакеты образов показаны явными шагами — для случаев, когда пакеты ставятся из локального каталога и зависимости автоматически не разрешаются. При установке из репозитория ОС с правильно настроенными Depends достаточно одного ролевого пакета.
Astra / Debian / Ubuntu (.deb)#
cd /opt/lsus-pkgs # каталог с пакетами
sudo apt update
# Master (замените <версия> и суффикс дистрибутива: _astra / _debian / _ubuntu)
sudo apt install ./lsus-image-postgres_<версия>_all.deb
sudo apt install ./lsus-image-pgbouncer_<версия>_all.deb
sudo apt install ./lsus-image-nginx_<версия>_all.deb
sudo apt install ./lsus-image-master_<версия>_all.deb
sudo apt install ./lsus-master_<версия>_astra.deb
Проверка (ожидаемый ответ — {"status":"ok","role":"master"}):
# порт 8443 — дефолт пакетов ОС (443 — при ручном развёртывании из .env.example)
curl -k https://master.example.com:8443/api/v1/health
Пароль admin
Пароль admin генерируется случайно при первом старте — прочитайте его командой sudo cat /opt/lsus-docker/data/master/data/.initial_admin_password (права 600). Подробности — в Развёртывании серверов.
РЕД ОС (.rpm)#
cd /opt/lsus-pkgs
sudo dnf install ./lsus-image-postgres-<версия>-1.noarch.rpm
sudo dnf install ./lsus-image-pgbouncer-<версия>-1.noarch.rpm
sudo dnf install ./lsus-image-nginx-<версия>-1.noarch.rpm
sudo dnf install ./lsus-image-master-<версия>-1.noarch.rpm
sudo dnf install ./lsus-master-<версия>-1.noarch.rpm
Проверка — как для Astra.
Альт Сервер (.rpm, apt-rpm)#
На Альт Сервере команды выполняются от root (su -, без sudo), установка — только через apt-get; Docker (docker-engine, docker-compose) подтянется из репозитория p11. Пакеты Альт-линейки имеют суффикс -alt1:
$ cd /opt/lsus-pkgs
$ su -
# apt-get update && # apt-get install ./lsus-image-postgres-<версия>-alt1.noarch.rpm \
./lsus-image-redis-<версия>-alt1.noarch.rpm \
./lsus-image-pgbouncer-<версия>-alt1.noarch.rpm \
./lsus-image-nginx-<версия>-alt1.noarch.rpm \
./lsus-image-master-<версия>-alt1.noarch.rpm \
./lsus-master-<версия>-alt1.noarch.rpm
Проверка (порт 8443 — дефолт Альт-пакетов; графику на сервер не ставьте, веб-интерфейс открывайте с рабочей станции):
# curl -k https://master.example.com:8443/api/v1/health
Полное руководство по установке на Альт — в Развёртывании серверов.
Для Site и Edge
Для Site замените lsus-image-master на lsus-image-site, а ролевой пакет — на lsus-site. Для Edge пакет lsus-image-pgbouncer не нужен (см. таблицу выше), а ролевой пакет — lsus-edge.
Порты при первой установке (опционально)#
Если /opt/lsus-docker/.env ещё не существует, порты можно задать в той же команде:
# Master на нестандартном порту
sudo LSUS_INSTALL_MASTER_PORT=9443 apt install ./lsus-master_<версия>_astra.deb
# Edge
sudo LSUS_INSTALL_EDGE_PORT=9440 dnf install ./lsus-edge-<версия>-1.noarch.rpm
# Альт Сервер (от root, su -)
# LSUS_INSTALL_MASTER_PORT=9443 apt-get install ./lsus-master-<версия>-alt1.noarch.rpm
При обновлении пакета эти переменные не читаются — порты берутся из существующего .env. Полная таблица — в Справочнике.
Установка клиента#
Клиент LSUS устанавливается на хост управляемой машины напрямую из пакета (без Docker) — в отличие от серверных ролей, которые работают в контейнерах. Клиент поставляется двумя пакетами: lsus-client (служба, обязательно на всех машинах) и lsus-client-gui (GUI-трей, опционально для рабочих станций).
cd /opt/lsus-pkgs
# Astra / Debian / Ubuntu
sudo apt install ./lsus-client_<версия>_all.deb
sudo apt install ./lsus-client-gui_<версия>_all.deb # опционально, для рабочих станций
# РЕД ОС
sudo dnf install ./lsus-client-<версия>-1.noarch.rpm
sudo dnf install ./lsus-client-gui-<версия>-1.noarch.rpm # опционально
# Альт Сервер (от root, su -)
# apt-get install ./lsus-client-<версия>-1.noarch.rpm
# apt-get install ./lsus-client-gui-<версия>-1.noarch.rpm # опционально
Настроить подключение к серверу и запустить службу:
sudo install -d -m 0755 /etc/lsus-client
printf '%s\n' '[server]' 'server_url = https://master.example.com' \
| sudo tee /etc/lsus-client/lsus-client-common.conf
sudo systemctl enable --now lsus-client.service
На Альт Сервере то же самое от root (su -):
# install -d -m 0755 /etc/lsus-client
# printf '%s\n' '[server]' 'server_url = https://master.example.com' \
> /etc/lsus-client/lsus-client-common.conf
# systemctl enable --now lsus-client.service
Проверка: хост появится в админке Master, heartbeat обновляется. Подробнее о конфиге, диагностике и DNS — в Клиент LSUS.
DNS TXT для автообнаружения клиентов#
Для корпоративного развёртывания — обязательный шаг
В любой организации с собственным DNS настройте TXT _lsus.<домен> до массовой установки агентов (на MS DNS — без узла _tcp). SRV _lsus._tcp — запасной путь. Без DNS задавайте server_url.
Что нужно сделать на DNS-сервере#
_lsus.example.com. IN TXT "v=lsus1;host=master.example.com;port=8443"
_lsus.example.com. IN TXT "v=lsus1;cidr=10.52.0.0/16;host=site-msk.example.com;port=8443;prio=10"
Порт обязан совпадать с MASTER_PORT в .env. TLS проверяется на host, не на имя _lsus.
Запасной SRV (если _tcp создавать можно):
_lsus._tcp.example.com. 3600 IN SRV 10 5 8443 master.example.com.
Что произойдёт на клиенте#
После установки lsus-client агент при первом запуске:
- Возьмёт домен из FQDN (или
server_discovery_domain). - Запросит TXT
_lsus.example.com, отфильтрует по своим IPv4 иcidr. - Если TXT нет или не подошла — запросит SRV
_lsus._tcp.example.com. - Опросит выбранные endpoint по
/api/v1/health. - Запишет выбранный URL и запросит
/assignment.
Приоритет источников URL на клиенте:
| Приоритет | Источник | Когда срабатывает |
|---|---|---|
| 0 | URL, назначенный Master (assigned_server_url) |
Master уже переадресовал клиента на Site |
| 1 | DNS TXT _lsus.<домен> |
Рекомендуемый путь для нового хоста |
| 2 | DNS SRV _lsus._tcp.<домен> |
Если TXT нет или чужой cidr |
| 3 | server_url из конфига |
Пилот, нет DNS |
python3-dnspython не обязателен (встроенный резолвер). Полная инструкция — в Требованиях.
Что сделать сразу после пилота#
- Сменить пароли веб-входов и сохранить пароли БД из
credentials-*.txt. - Настроить доверенный TLS (заменить самоподписанный сертификат) — см. Развёртывание серверов.
- Спланировать диски под репозитории — см. Развёртывание серверов.
- Перейти к обзору системы и обновлению.