Рекомендации по оптимизации и модернизации конфигурации физического сервера

Дата создания: 2026-01-15
Версия: 1.0
Статус: ✅ Рекомендации готовы к применению

Резюме

Данный документ содержит комплексные рекомендации по оптимизации и модернизации физического сервера DENKART на основе анализа текущей конфигурации. Рекомендации разделены по приоритетам и категориям для удобства планирования работ.

Текущее состояние сервера:
- CPU: Intel Xeon E3-1225 V2 @ 3.20GHz, 4 ядра
- RAM: 31 GB (доступно: 23 GB)
- Диски: 233 GB основной (51% использовано), 916 GB /D (55% использовано)
- Внешний диск: /mnt/mypassport отключен и не используется (2026-01-15)
- ОС: Ubuntu 24.04.3 LTS
- LXD: 6.6 (snap)
- Контейнеры:
- BBB-CONT22-1 (production) - ⚠️ без лимитов CPU/RAM
- BBB-CONT22-2 (резерв) - CPU: 4, RAM: 8GB
- docs-denkart - CPU: 1, RAM: 512MB ✅
- 1c-server - CPU: 4, RAM: 8GB
- postgresql-1c - CPU: 4, RAM: 8GB


1. Критические проблемы безопасности (Приоритет: 🔴 Критический)

1.1 Настройка файрвола UFW

Проблема: UFW не активен, все порты открыты.

Решение:

# Установка UFW (если не установлен)
sudo apt install ufw -y

# Базовые правила
sudo ufw default deny incoming
sudo ufw default allow outgoing

# SSH (критично - настроить ПЕРЕД активацией!)
sudo ufw allow 22/tcp comment 'SSH'

# HTTP/HTTPS
sudo ufw allow 80/tcp comment 'HTTP'
sudo ufw allow 443/tcp comment 'HTTPS'

# BigBlueButton порты
sudo ufw allow 3478/udp comment 'BBB TURN/STUN UDP'
sudo ufw allow 3478/tcp comment 'BBB TURN/STUN TCP'
sudo ufw allow 16384:32768/udp comment 'BBB WebRTC UDP'
sudo ufw allow 16384:32768/tcp comment 'BBB WebRTC TCP'

# Проверка правил перед активацией
sudo ufw show added

# Активация (после проверки!)
sudo ufw enable

# Проверка статуса
sudo ufw status verbose

Важно: Настройте SSH доступ по ключам перед активацией UFW, чтобы не потерять доступ к серверу!

Приоритет: 🔴 Критический - выполнить немедленно

1.2 Установка и настройка fail2ban

Проблема: Отсутствует защита от брутфорс атак.

Решение:

# Установка
sudo apt install fail2ban -y

# Создание локальной конфигурации
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

# Редактирование конфигурации
sudo nano /etc/fail2ban/jail.local

Рекомендуемые настройки в jail.local:

[DEFAULT]
bantime = 3600
findtime = 600
maxretry = 5
destemail = admin@cdto.life
sendername = Fail2Ban-DENKART

[sshd]
enabled = true
port = 22
maxretry = 3
bantime = 7200

[nginx-http-auth]
enabled = true

[nginx-limit-req]
enabled = true

Активация:

sudo systemctl enable fail2ban
sudo systemctl start fail2ban
sudo fail2ban-client status

Приоритет: 🔴 Критический

1.3 Оптимизация привилегий контейнеров

Проблема: Контейнеры используют security.privileged=true, что снижает безопасность.

Текущее состояние:
- BBB-CONT22-1: security.privileged=true + security.nesting=true
- BBB-CONT22-2: security.privileged=true + security.nesting=true

Рекомендация: Попытаться перейти на не-привилегированные контейнеры.

План действий:

  1. Тестирование на BBB-CONT22-2 (testing):
# Отключение privileged режима
lxc config set BBB-CONT22-2 security.privileged=false
lxc config set BBB-CONT22-2 security.idmap.isolated=true
# Оставляем security.nesting=true (обязательно для Docker в BBB)

# Перезапуск и тестирование
lxc restart BBB-CONT22-2

# Проверка работы сервисов
lxc exec BBB-CONT22-2 -- systemctl status bbb-webrtc-sfu
lxc exec BBB-CONT22-2 -- systemctl status coturn
lxc exec BBB-CONT22-2 -- systemctl status postgresql
  1. Если без privileged режима не работает:
  2. Оставить privileged=true только для BBB контейнеров
  3. Усилить другие меры безопасности (UFW, fail2ban, сетевая изоляция)
  4. Использовать отдельную сеть для BBB контейнеров

Приоритет: 🟠 Высокий


2. Оптимизация производительности (Приоритет: 🟠 Высокий)

2.1 Оптимизация лимитов ресурсов для контейнеров

Текущая проблема: BBB-CONT22-1 имеет недостаточные ресурсы для production нагрузки.

Рекомендации:

Для BBB-CONT22-1 (production) - ⚠️ КРИТИЧНО: нет лимитов!

# ⚠️ ТЕКУЩАЯ ПРОБЛЕМА: Контейнер работает без лимитов CPU/RAM
# Это может привести к исчерпанию ресурсов хоста!

# Установка лимитов CPU (минимум 4 ядра для видеоконференций)
lxc config set BBB-CONT22-1 limits.cpu=4

# Установка лимитов RAM (минимум 8GB)
lxc config set BBB-CONT22-1 limits.memory=8GB

# Отключение swap для лучшей производительности
lxc config set BBB-CONT22-1 limits.memory.swap=false

# Увеличение диска (для записей конференций)
lxc config set BBB-CONT22-1 limits.disk=200GB

# Приоритет CPU
lxc config set BBB-CONT22-1 limits.cpu.priority=5

Для BBB-CONT22-2 (резерв/testing):

lxc config set BBB-CONT22-2 limits.cpu=4
lxc config set BBB-CONT22-2 limits.memory=8GB
lxc config set BBB-CONT22-2 limits.memory.swap=false
lxc config set BBB-CONT22-2 limits.disk=200GB

Для docs-denkart:

# Минимальные ресурсы достаточно
lxc config set docs-denkart limits.cpu=1
lxc config set docs-denkart limits.memory=512MB
lxc config set docs-denkart limits.memory.swap=false

Приоритет: 🟠 Высокий

2.2 Оптимизация ZFS storage pool

Проблема: Storage pool default (ZFS) имеет ошибки данных и используется для production контейнера.

Рекомендации:

  1. Проверка и исправление ошибок:
# Проверка состояния ZFS pool
sudo zpool status default

# Если есть ошибки, попытка исправления
sudo zpool scrub default

# Проверка после scrub
sudo zpool status default
  1. Миграция BBB-CONT22-1 на infra-pool (dir):
# Создание snapshot
lxc snapshot BBB-CONT22-1 before-migration-$(date +%Y%m%d)

# Остановка контейнера
lxc stop BBB-CONT22-1

# Копирование контейнера на infra-pool
lxc copy BBB-CONT22-1 BBB-CONT22-1-new --storage infra-pool

# Проверка нового контейнера
lxc start BBB-CONT22-1-new
lxc exec BBB-CONT22-1-new -- systemctl status bbb-webrtc-sfu

# Если все работает, переименование
lxc stop BBB-CONT22-1-new
lxc stop BBB-CONT22-1
lxc rename BBB-CONT22-1 BBB-CONT22-1-old
lxc rename BBB-CONT22-1-new BBB-CONT22-1
lxc start BBB-CONT22-1

Приоритет: 🟠 Высокий

2.3 Оптимизация ядра Linux для производительности

Рекомендации:

  1. Настройка параметров ядра для BigBlueButton:
# Редактирование sysctl.conf
sudo nano /etc/sysctl.conf

Добавить следующие параметры:

# Оптимизация для WebRTC и видеоконференций
net.core.rmem_max = 134217728
net.core.wmem_max = 134217728
net.ipv4.tcp_rmem = 4096 87380 134217728
net.ipv4.tcp_wmem = 4096 65536 134217728
net.core.netdev_max_backlog = 5000

# Оптимизация для LXD контейнеров
vm.swappiness = 10
vm.dirty_ratio = 15
vm.dirty_background_ratio = 5

# Увеличение лимитов файловых дескрипторов
fs.file-max = 2097152

Применение:

sudo sysctl -p
  1. Настройка лимитов для пользователя:
# Редактирование limits.conf
sudo nano /etc/security/limits.conf

Добавить:

* soft nofile 1048576
* hard nofile 1048576
* soft nproc 32768
* hard nproc 32768

Приоритет: 🟡 Средний

2.4 Оптимизация PostgreSQL в BBB контейнере

Рекомендации:

  1. Настройка PostgreSQL для BigBlueButton:
# Вход в BBB контейнер
lxc exec BBB-CONT22-1 -- bash

# Редактирование конфигурации PostgreSQL
sudo nano /etc/postgresql/*/main/postgresql.conf

Оптимизированные параметры:

# Память (для контейнера с 8GB RAM)
shared_buffers = 2GB
effective_cache_size = 6GB
maintenance_work_mem = 512MB
work_mem = 64MB

# Производительность
max_connections = 200
checkpoint_completion_target = 0.9
wal_buffers = 16MB
default_statistics_target = 100
random_page_cost = 1.1
effective_io_concurrency = 200

# Логирование (для отладки)
log_min_duration_statement = 1000
log_line_prefix = '%t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h '

Перезапуск PostgreSQL:

sudo systemctl restart postgresql

Приоритет: 🟡 Средний


3. Оптимизация дискового пространства (Приоритет: 🟠 Высокий)

3.1 Внешний диск /mnt/mypassport

Статус: ✅ Диск отключен и не используется (2026-01-15)

Примечание: Внешний диск /mnt/mypassport был отключен и больше не используется в текущей конфигурации сервера. Директория /mnt/mypassport существует, но пуста, так как диск не смонтирован.

Приоритет: ✅ Задача выполнена (диск отключен)

3.2 Оптимизация Timeshift

Текущее состояние: /D/timeshift занимает 151 GB.

Рекомендации:

  1. Настройка автоматической очистки старых снимков:
# Редактирование конфигурации Timeshift
sudo nano /etc/timeshift/timeshift.json

Оптимизированные настройки:

{
  "schedule_monthly": "true",
  "schedule_weekly": "true",
  "schedule_daily": "false",
  "count_monthly": "3",
  "count_weekly": "2",
  "count_daily": "0"
}
  1. Ручная очистка старых снимков:
# Просмотр снимков
sudo timeshift --list

# Удаление старых снимков
sudo timeshift --delete --snapshot 'YYYY-MM-DD_HH-MM-SS'

Приоритет: 🟡 Средний

3.3 Оптимизация хранения записей BigBlueButton

Рекомендация: Вынести записи конференций на отдельный том.

Решение:

  1. Создание директории на хосте:
sudo mkdir -p /D/bbb-recordings
sudo chown 1000:1000 /D/bbb-recordings
  1. Настройка bind mount в контейнере:
# Остановка контейнера
lxc stop BBB-CONT22-1

# Добавление устройства
lxc config device add BBB-CONT22-1 recordings disk \
    source=/D/bbb-recordings \
    path=/var/bigbluebutton/published/presentation

# Запуск контейнера
lxc start BBB-CONT22-1
  1. Настройка автоматической очистки старых записей:
# В контейнере BBB
lxc exec BBB-CONT22-1 -- bash

# Создание скрипта очистки
cat > /usr/local/bin/cleanup-old-recordings.sh << 'EOF'
#!/bin/bash
# Удаление записей старше 90 дней
find /var/bigbluebutton/published/presentation -type d -mtime +90 -exec rm -rf {} + 2>/dev/null
find /var/bigbluebutton/unpublished/presentation -type d -mtime +90 -exec rm -rf {} + 2>/dev/null
echo "$(date): Cleanup completed" >> /var/log/bbb-cleanup.log
EOF

chmod +x /usr/local/bin/cleanup-old-recordings.sh

# Добавление в crontab (еженедельно)
echo "0 2 * * 0 /usr/local/bin/cleanup-old-recordings.sh" | crontab -

Приоритет: 🟡 Средний


4. Мониторинг и алертинг (Приоритет: 🟠 Высокий)

4.1 Настройка Prometheus + Grafana

Рекомендация: Развернуть систему мониторинга в контейнере infra-management.

План действий:

  1. Запуск контейнера infra-management:
lxc start infra-management
lxc exec infra-management -- bash
  1. Установка Docker в контейнере:
# Установка Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
  1. Создание docker-compose.yml для мониторинга:
version: '3.8'

services:
  prometheus:
    image: prom/prometheus:latest
    container_name: prometheus
    volumes:
      - ./prometheus:/etc/prometheus
      - prometheus-data:/prometheus
    ports:
      - "9090:9090"
    command:
      - '--config.file=/etc/prometheus/prometheus.yml'
      - '--storage.tsdb.path=/prometheus'
    restart: unless-stopped

  grafana:
    image: grafana/grafana:latest
    container_name: grafana
    volumes:
      - grafana-data:/var/lib/grafana
      - ./grafana/provisioning:/etc/grafana/provisioning
    ports:
      - "3000:3000"
    environment:
      - GF_SECURITY_ADMIN_PASSWORD=${GRAFANA_PASSWORD}
      - GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-simple-json-datasource
    restart: unless-stopped

  node-exporter:
    image: prom/node-exporter:latest
    container_name: node-exporter
    command:
      - '--path.procfs=/host/proc'
      - '--path.sysfs=/host/sys'
      - '--collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($$|/)'
    volumes:
      - /proc:/host/proc:ro
      - /sys:/host/sys:ro
      - /:/rootfs:ro
    ports:
      - "9100:9100"
    restart: unless-stopped

volumes:
  prometheus-data:
  grafana-data:
  1. Конфигурация Prometheus (prometheus/prometheus.yml):
global:
  scrape_interval: 15s
  evaluation_interval: 15s

scrape_configs:
  - job_name: 'node-exporter'
    static_configs:
      - targets: ['node-exporter:9100']

  - job_name: 'lxd-containers'
    static_configs:
      - targets: ['localhost:9100']

Приоритет: 🟠 Высокий

4.2 Настройка алертов

Рекомендация: Настроить алерты для критических метрик.

Примеры алертов:

  1. Высокое использование CPU (>80%):
groups:
  - name: system_alerts
    rules:
      - alert: HighCPUUsage
        expr: 100 - (avg by(instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100) > 80
        for: 5m
        annotations:
          summary: "High CPU usage detected"
  1. Недостаток дискового пространства (<10%):
      - alert: LowDiskSpace
        expr: (node_filesystem_avail_bytes{mountpoint="/"} / node_filesystem_size_bytes{mountpoint="/"}) * 100 < 10
        for: 5m
        annotations:
          summary: "Low disk space on root filesystem"
  1. Недоступность сервисов:
      - alert: ServiceDown
        expr: up == 0
        for: 1m
        annotations:
          summary: "Service is down"

Приоритет: 🟡 Средний

4.3 Мониторинг BigBlueButton

Рекомендация: Настроить специфичный мониторинг для BBB.

Метрики для мониторинга:

  1. Статус сервисов BBB:
# Создание скрипта проверки
cat > /usr/local/bin/check-bbb-services.sh << 'EOF'
#!/bin/bash
BBB_CONTAINER="BBB-CONT22-1"

services=("bbb-webrtc-sfu" "coturn" "postgresql" "redis-server")

for service in "${services[@]}"; do
    if lxc exec $BBB_CONTAINER -- systemctl is-active --quiet $service; then
        echo "✓ $service - OK"
    else
        echo "✗ $service - FAILED"
        # Отправка алерта
    fi
done
EOF

chmod +x /usr/local/bin/check-bbb-services.sh
  1. Мониторинг активных сессий:
# Скрипт для получения количества активных сессий
lxc exec BBB-CONT22-1 -- bbb-conf --status | grep -i "active"

Приоритет: 🟡 Средний


5. Автоматизация резервного копирования (Приоритет: 🟠 Высокий)

5.1 Настройка автоматического резервного копирования

Текущая проблема: Резервное копирование выполняется только вручную.

Решение:

  1. Создание systemd service для резервного копирования:
sudo nano /etc/systemd/system/backup-daily.service

Содержимое:

[Unit]
Description=Daily backup service
After=network.target

[Service]
Type=oneshot
ExecStart=/home/cdto/DENKART/scripts/backup-full-server.sh
StandardOutput=journal
StandardError=journal
SyslogIdentifier=backup-daily

[Install]
WantedBy=multi-user.target
  1. Создание systemd timer:
sudo nano /etc/systemd/system/backup-daily.timer

Содержимое:

[Unit]
Description=Daily backup timer
Requires=backup-daily.service

[Timer]
OnCalendar=daily
OnCalendar=*-*-* 02:00:00
RandomizedDelaySec=1800
Persistent=true

[Install]
WantedBy=timers.target
  1. Активация:
sudo systemctl daemon-reload
sudo systemctl enable backup-daily.timer
sudo systemctl start backup-daily.timer
sudo systemctl status backup-daily.timer

Приоритет: 🟠 Высокий

5.2 Резервное копирование BigBlueButton

Рекомендация: Настроить отдельное резервное копирование для BBB.

Скрипт резервного копирования BBB:

cat > /home/cdto/DENKART/scripts/backup-bbb.sh << 'EOF'
#!/bin/bash
# Резервное копирование BigBlueButton

set -e

BBB_CONTAINER="BBB-CONT22-1"
BACKUP_DIR="/D/backups/bbb"
DATE=$(date +%Y%m%d_%H%M%S)

mkdir -p "$BACKUP_DIR"

echo "Creating BBB backup: $DATE"

# 1. Snapshot контейнера
echo "Creating container snapshot..."
lxc snapshot "$BBB_CONTAINER" "backup-$DATE"

# 2. PostgreSQL дамп
echo "Creating PostgreSQL dump..."
lxc exec "$BBB_CONTAINER" -- pg_dumpall > "$BACKUP_DIR/postgresql_$DATE.sql"
gzip "$BACKUP_DIR/postgresql_$DATE.sql"

# 3. Резервное копирование записей (если вынесены)
if [ -d "/D/bbb-recordings" ]; then
    echo "Backing up recordings..."
    tar -czf "$BACKUP_DIR/recordings_$DATE.tar.gz" -C /D bbb-recordings
fi

# 4. Резервное копирование конфигураций
echo "Backing up configurations..."
lxc exec "$BBB_CONTAINER" -- tar -czf /tmp/bbb-config.tar.gz \
    /etc/bigbluebutton/bbb-webrtc-sfu/production.yml \
    /etc/turnserver.conf \
    /etc/nginx/sites-available/bigbluebutton
lxc file pull "$BBB_CONTAINER/tmp/bbb-config.tar.gz" "$BACKUP_DIR/config_$DATE.tar.gz"

# Удаление старых бэкапов (старше 30 дней)
find "$BACKUP_DIR" -type f -mtime +30 -delete

echo "Backup completed: $BACKUP_DIR"
EOF

chmod +x /home/cdto/DENKART/scripts/backup-bbb.sh

Приоритет: 🟠 Высокий


6. Сетевая оптимизация (Приоритет: 🟡 Средний)

6.1 Оптимизация сетевых настроек для BigBlueButton

Рекомендации:

  1. Проверка и оптимизация TURN сервера:
# В контейнере BBB
lxc exec BBB-CONT22-1 -- bash

# Проверка конфигурации coturn
sudo nano /etc/turnserver.conf

Оптимизированные настройки:

# Внешний IP
external-ip=89.179.242.240

# Relay IP (IP контейнера)
relay-ip=10.218.14.37

# Оптимизация портов
min-port=24577
max-port=32768

# Логирование для отладки
verbose
log-file=/var/log/turnserver/turnserver.log
  1. Проверка работы TURN:
# Из контейнера
turnutils_stunclient 89.179.242.240:3478

# Извне
turnutils_stunclient school.cdto.life:3478

Приоритет: 🟡 Средний

6.2 Оптимизация Nginx для BigBlueButton

Рекомендации:

  1. Настройка буферов для WebSocket:
# В конфигурации Nginx BBB
proxy_buffering off;
proxy_read_timeout 86400;
proxy_send_timeout 86400;
  1. Оптимизация для медиа трафика:
# Увеличение буферов
client_max_body_size 100M;
client_body_buffer_size 128k;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;

Приоритет: 🟡 Средний


7. Аппаратные рекомендации (Приоритет: 🟢 Низкий)

7.1 Рекомендации по обновлению железа

Текущие ограничения:
- CPU: 4 ядра (ниже рекомендуемых 8+ для BigBlueButton)
- Диск: 233 GB основной (ниже рекомендуемых 500 GB)

Рекомендации:

  1. CPU:
  2. Рассмотреть обновление до 8+ ядер для лучшей производительности BigBlueButton
  3. Текущий CPU достаточен для небольших нагрузок (10-15 участников)

  4. Диск:

  5. Основной диск (233 GB) достаточен для системы
  6. Использовать /D (916 GB) для данных приложений и записей
  7. Рассмотреть SSD для лучшей производительности

  8. RAM:

  9. 31 GB достаточно для текущих задач
  10. При увеличении нагрузки рассмотреть расширение до 64 GB

Приоритет: 🟢 Низкий (текущее железо достаточное для текущих задач)


8. План внедрения (Приоритизированный)

Фаза 1: Критическая безопасность (1-2 дня)

  1. ✅ Настроить UFW (2 часа)
  2. ✅ Установить fail2ban (1 час)
  3. ✅ Настроить SSH безопасность (30 мин)

Итого: ~4 часа

Фаза 2: Критические проблемы (1 день)

  1. ✅ Внешний диск /mnt/mypassport отключен (2026-01-15)
  2. ⏳ Оптимизировать лимиты ресурсов для BBB (1 час)
  3. ⏳ Мигрировать BBB на infra-pool (4 часа)

Итого: ~7 часов

Фаза 3: Автоматизация (1 неделя)

  1. ✅ Настроить автоматическое резервное копирование (4 часа)
  2. ✅ Настроить мониторинг Prometheus + Grafana (1 день)
  3. ✅ Настроить алерты (4 часа)

Итого: ~2 дня

Фаза 4: Оптимизация (2 недели)

  1. ✅ Оптимизация ядра Linux (2 часа)
  2. ✅ Оптимизация PostgreSQL (2 часа)
  3. ✅ Оптимизация сетевых настроек (4 часа)
  4. ✅ Настройка автоматической очистки записей BBB (2 часа)
  5. ✅ Тестирование миграции на не-привилегированные контейнеры (1 день)

Итого: ~3 дня


9. Чек-лист внедрения

Безопасность

  • [ ] UFW настроен и активен
  • [ ] fail2ban установлен и настроен
  • [ ] SSH доступ только по ключам
  • [ ] Контейнеры используют минимальные привилегии (где возможно)

Производительность

  • [ ] ⚠️ КРИТИЧНО: Установлены лимиты CPU/RAM для BBB-CONT22-1 (сейчас unlimited!)
  • [ ] Лимиты ресурсов оптимизированы для всех контейнеров
  • [ ] BBB мигрирован на infra-pool
  • [ ] Параметры ядра оптимизированы
  • [ ] PostgreSQL оптимизирован для BBB

Дисковое пространство

  • [x] Внешний диск /mnt/mypassport отключен (2026-01-15)
  • [ ] Timeshift настроен на автоматическую очистку
  • [ ] Записи BBB вынесены на отдельный том
  • [ ] Настроена автоматическая очистка старых записей

Мониторинг

  • [ ] Prometheus + Grafana развернуты
  • [ ] Настроены алерты для критических метрик
  • [ ] Настроен мониторинг BBB сервисов

Резервное копирование

  • [ ] Автоматическое резервное копирование настроено
  • [ ] Резервное копирование BBB настроено
  • [ ] Тестирование восстановления выполнено

10. Заключение

Данные рекомендации помогут оптимизировать и модернизировать конфигурацию физического сервера DENKART. Приоритет следует отдавать критическим проблемам безопасности и производительности.

Ключевые моменты:
1. 🔴 Критично: Настроить UFW и fail2ban немедленно (UFW не активен!)
2. 🔴 Критично: Установить лимиты CPU/RAM для BBB-CONT22-1 (сейчас unlimited - может исчерпать ресурсы!)
3. ✅ Выполнено: Внешний диск /mnt/mypassport отключен (2026-01-15)
4. 🟠 Высокий приоритет: Оптимизировать ресурсы для всех контейнеров
5. 🟠 Высокий приоритет: Настроить автоматическое резервное копирование
6. 🟠 Высокий приоритет: Развернуть систему мониторинга

После выполнения критических задач система будет готова к production использованию с необходимым уровнем безопасности, производительности и надежности.


Дата создания: 2026-01-15
Следующий пересмотр: 2026-02-15
Версия: 1.0