4.2 KiB
4.2 KiB
Настройка n8n для автоматической миграции файлов в S3
Обзор
Этот документ описывает настройку n8n для автоматического запуска миграции новых файлов из локального хранилища в S3 каждые 5 минут.
Статус системы
- ✅ Phase 1 (S3 Upload): Завершена - файлы загружены в S3
- ✅ Phase 2 (DB Update): Завершена - метаданные S3 обновлены в БД
- ✅ Автоматическая миграция: Готова для n8n интеграции
Большинство файлов уже мигрированы. Система готова для обработки новых файлов.
SSH подключение в n8n
1. Настройка SSH узла в n8n
- Добавьте SSH узел в ваш workflow
- Настройте подключение:
- Host:
crm.clientright.ru - Port:
22 - Username:
fastuser - Private Key: Ваш SSH ключ
- Host:
2. Команда для выполнения
/var/www/fastuser/data/www/crm.clientright.ru/crm_extensions/file_storage/n8n_migration.sh
3. Переменные окружения (опционально)
Вы можете передать параметры через переменные окружения:
LIMIT=20 AGE_MINUTES=10 DRY_RUN=0 /var/www/fastuser/data/www/crm.clientright.ru/crm_extensions/file_storage/n8n_migration.sh
Параметры:
LIMIT- максимальное количество файлов для обработки за один запуск (по умолчанию: 20)AGE_MINUTES- возраст файлов для обработки в минутах (по умолчанию: 10)DRY_RUN- тестовый режим без реальных изменений (по умолчанию: 0)
Настройка расписания
Cron-подобное расписание в n8n
- Добавьте Cron узел перед SSH узлом
- Настройте расписание:
*/5 * * * *(каждые 5 минут)
Мониторинг
Логи
Все операции логируются в:
/var/www/fastuser/data/www/crm.clientright.ru/logs/n8n_migration.log
Коды возврата
0- Успешное выполнение1- Предупреждение (пропущенные файлы)2- Ошибка (неудачные миграции)
Пример workflow в n8n
[Cron] → [SSH] → [Email/Slack уведомления при ошибках]
Настройка уведомлений
Добавьте условную логику для обработки кодов возврата:
- Exit code 0: Продолжить нормально
- Exit code 1: Отправить предупреждение
- Exit code 2: Отправить уведомление об ошибке
Тестирование
Ручной запуск
# Тестовый режим
DRY_RUN=1 /var/www/fastuser/data/www/crm.clientright.ru/crm_extensions/file_storage/n8n_migration.sh
# Реальный запуск с ограничениями
LIMIT=5 AGE_MINUTES=5 /var/www/fastuser/data/www/crm.clientright.ru/crm_extensions/file_storage/n8n_migration.sh
Проверка логов
tail -f /var/www/fastuser/data/www/crm.clientright.ru/logs/n8n_migration.log
Безопасность
- SSH ключи должны быть настроены без пароля
- Права доступа к скриптам настроены корректно
- Логи не содержат чувствительных данных
- Все операции выполняются от имени пользователя
fastuser
Производительность
- Ограничение на количество файлов за запуск (LIMIT=20)
- Обработка только новых файлов (AGE_MINUTES=10)
- Приоритизация через
niceиioniceвстроена в скрипт