Перейти к содержимому

Создать процесс (Dag)

картинка_0

Описание

Блок предназначен для создания процесса и последующей передачи его в оркестратор. Блок имеет следующие параметры:

  1. Наименование - уникальный id процесса для текущего экземпляра оркестратора, будет отображаться в web-интерфейсе оркестратора. Наименование не должно содержать пробелов.
  2. Описание - описание процесса, которое будет отображаться в web-интерфейсе оркестратора
  3. Дата отсчета интервала - Дата запуска должна быть в прошлом: планировщик запускает процесс после даты начала, в конце периода. Если вы установить дату отсчета интервала ****на 1 января 2023 года, то первое выполнение процесса будет запланировано на конец этого дня, то есть на 23:59:59 1 января 2023 года. Далее, в зависимости от заданного времени запуска, процесс будет запускаться регулярно в указанные периоды времени.
  4. Время запуска - ****интервалы запуска. Для задания интервалов запуска требуется использовать cron-выражения. Проверить или составить cron-выражения можно с помощью сервиса: https://crontab.guru/. Есть возможность указать None, используя блок
  5. Одновременный запуск процессов - максимальное количество одновременных запусков процессов
  6. Теги - параметр для сортировки процессов через web-интерфейс оркестратора. Для одного процесса можно указать несколько тегов.
  7. Аргументы по умолчанию:
    • owner - владелец процесса;
    • depends_on_past - булевое значение, означающее стоит ли инициировать запуск следующего процесса, если предыдущий процесс в цепочке операций завершился с ошибкой;
    • email - cписок адресов электронной почты, на которые будут отправляться уведомления о статусе выполнения процессов;
    • email_on_failure - булевое значение, определяющее, нужно ли отправлять уведомления на адрес электронной почты в случае неудачного выполнения процессов;
    • retries - количество попыток повторного выполнения процесса в случае его неудачного завершения;
    • retry_delay - время задержки перед повторным выполнением робота в случае его неудачного завершения;
    • pool - параметр используется для возможности взаимодействия с очередями.
  8. Выполнять пропущенные процессы - если значение параметра установлено в True, то все задачи, которые должны были быть выполнены в прошлом, будут выполнены при запуске процесса. Если значение параметра установлено в False, то только текущие и будущие задачи будут выполнены.
  9. Роботы - разъем, который определяет, какие роботы будут выполнятся процессом (“Запустить робота”, “Запустить группу роботов”, “Робот-триггер”).
  10. Порядок выполнения роботов - объявление зависимостей отдельных роботов**.**
первый_робот >> [второй_робот, третий_робот] # Выполняется первый робот, потом второй и третий
первый_робот << второй_робот # Выполняется второй робот, потом первый

Пример использования

В данном примере создается процесс для оркестратора с указанными параметрами. Процесс включает в себя одного робота - Робот_1. Pобот будет использовать подключение SSH_215i. Указанное подключение должно существовать в оркестраторе Создание нового подключения.

Робот должен располагаться на сервере оркестратора в папке /home/user/airflow/scripts/. Путь к Роботу локальный - временное расположение робота (во время выполнения алгоритма). Требуется сохранить процесс с уникальным наименованием, в виде python-скрипта (my_process.py) и отправить на сервер оркестратора в папку с процессами (dags).

картинка_1

Результат

Процесс загружен в оркестратор с указанным расписанием и параметрами.

картинка_2