Дата: 2025-11-09
Версия: 1.0
Control Plane — центральный узел управления для всей DevOps инфраструктуры.
┌─────────────────────────────────────────┐
│ DEV-PRO (91.218.142.168) │
│ Control Plane │
│ │
│ ┌───────────────────────────────────┐ │
│ │ Claude Code Workspace │ │
│ │ $WORKSPACE/ │ │
│ └───────────────────────────────────┘ │
│ │
│ SSH Key: ~/.ssh/id_ed25519 │
│ │
└──────────────┬──────────────────────────┘
│
│ SSH (passwordless)
│
▼
┌─────────────────────────────────────────┐
│ DEV-PROD-RF (45.144.177.147) │
│ Production Platform │
│ │
│ ┌───────────────────────────────────┐ │
│ │ 7 Docker Stacks │ │
│ │ 34 Containers │ │
│ │ seller1.ru 🔴 PRODUCTION │ │
│ └───────────────────────────────────┘ │
└─────────────────────────────────────────┘
Входящие соединения:
- Claude Code → DEV-PRO:22
- Аутентификация: SSH key only
Исходящие соединения:
- DEV-PRO → DEV-PROD-RF:22
- Аутентификация: ~/.ssh/id_ed25519 (passwordless)
Расположение: $WORKSPACE/
Структура:
$WORKSPACE/
├── platform/ # Ядро системы
├── templates/ # Шаблоны проектов
├── projects/
│ ├── @infra-dev-pro/ # Этот проект
│ ├── @infra-dev-prod-rf/
│ └── marketplace/
└── archive/
Мониторинг:
- htop — ресурсы в реальном времени
- free -h — использование RAM
- df -h — использование диска
- uptime — аптайм сервера
Логирование:
- /var/log/auth.log — SSH логи
- journalctl -f — системные логи
Безопасность:
- fail2ban — защита SSH
- UFW firewall — порт 22 открыт
Статус: Активен
Правила:
- Port 22 (SSH) — ALLOW
Статус: Running
Назначение: Защита SSH от брутфорса
Проверка:
systemctl status fail2ban
fail2ban-client status sshd
Расположение: ~/.ssh/
Ключи:
- id_ed25519 — для доступа к DEV-PROD-RF (45.144.177.147)
- id_ed25519.pub — публичный ключ
Настройка:
# Проверка ключа
ls -la ~/.ssh/id_ed25519
# Проверка подключения
ssh root@45.144.177.147 "hostname"
/root/ # Home directory (работа из-под root)
├── .ssh/ # SSH ключи
│ └── id_ed25519 # Ключ для управляемых серверов
└── ...
$WORKSPACE/ # Claude Code workspace
├── platform/
├── templates/
├── projects/
│ ├── @infra-dev-pro/ # Этот проект
│ └── @infra-dev-prod-rf/ # Управляемый сервер
└── archive/
/var/log/ # Системные логи
├── auth.log # SSH логи
├── dev-pro-backup.log # Логи backup
└── ...
/var/backups/dev-pro/ # Backup архивы
├── ssh-keys/
├── workspace/
└── configs/
# CPU, RAM, процессы
htop
# Память
free -h
# Диск
df -h
# Аптайм
uptime
# Активные сессии
who
# SSH логи
tail -f /var/log/auth.log
# Неудачные попытки входа
grep "Failed password" /var/log/auth.log
# Проверка подключения к DEV-PROD-RF
ssh root@45.144.177.147 "uptime"
# Docker контейнеры на DEV-PROD-RF
ssh root@45.144.177.147 "docker ps --format 'table {{.Names}}\t{{.Status}}'"
# Проверка seller1.ru
ssh root@45.144.177.147 "curl -I https://seller1.ru"
~/.ssh/$WORKSPACE//etc/ssh/, /etc/ufw/, /etc/fail2ban//var/backups/dev-pro/# Скрипт backup
$WORKSPACE/infra/@infra-dev-pro/solution/scripts/backup.sh
# Cron задача (опционально)
0 2 * * * $WORKSPACE/infra/@infra-dev-pro/solution/scripts/backup.sh
# Обновление системы
apt update && apt upgrade
# Очистка логов
journalctl --vacuum-time=7d
# Проверка неудачных входов
grep "Failed password" /var/log/auth.log | tail -20
# Проверка fail2ban
fail2ban-client status sshd
Дата: 2025-10-26
Статус: Принято
Контекст:
Control Plane сервер используется исключительно для управления инфраструктурой через Claude Code. Доступ имеет только администратор.
Решение:
Работать из-под root пользователя.
Плюсы:
- Упрощение workflow
- Нет проблем с правами доступа
- Прямой доступ ко всем системным функциям
Минусы:
- Потенциально опасно при ошибке команды
- Не соответствует best practices для multi-user систем
Последствия:
- Требуется повышенная осторожность при выполнении команд
- fail2ban защищает SSH от внешних угроз
- Firewall ограничивает доступ только к SSH
Дата: 2025-10-26
Статус: Принято
Контекст:
Изначально планировалось использовать Docker на Control Plane. Фактически все контейнеры работают на DEV-PROD-RF.
Решение:
Оставить Docker установленным, но не запускать контейнеры.
Плюсы:
- Готовность к возможному будущему использованию
- Минимальное потребление ресурсов (0 контейнеров)
- Доступность Docker CLI для тестирования
Минусы:
- Занимает место (~500MB)
Последствия:
- Docker установлен, но статус: 0 контейнеров
- Основная нагрузка на DEV-PROD-RF
Дата создания: 2025-11-09
Версия: 1.0